Матнҳои матнии Linux

14.1 Getty (дар / etc / inittab)

Муқаддима ба Getty

Бо мақсади ба кор даровардани раванди воридшавӣ дар портҳои serial (ва терминали ба он алоқаманд), вақте ки компютер оғоз меёбад (ё иваз кардани сатҳҳои идоракунӣ) фармони фаръӣ бояд ба файли / etc / inittab дода шавад. Роҳхат аз хати фармонро метавонад боиси мушкилот гардонад (ниг. Агар Гетт аз хати фармон: барномаҳои дастгиршуда барои дидани чароғ) қатъ карда шаванд. Getty GETs як TTY (терминали) меравад. Ҳар як терминал бояд фармони фаръии худро талаб кунад. Ҳамчунин дар бораи ҳар файз / etc / inittab дар як консерсия барои ҳадди аққал як getty фармон вуҷуд дорад. Инро ҷустуҷӯ кунед ва фармоишҳои getty барои терминалҳои аслии назди он гузошта кунед. Ин парванда метавонад барои терминалҳои матнӣ шарҳ дода шавад, то ки ҳамаи корҳоятонро анҷом диҳед (онҳоро пешгирӣ кунед) ва якчанд далелҳоро тағйир диҳед.

Далелҳое, ки иҷозат дода шудаанд, вобаста аз он ки шумо кадом ганҷро истифода мекунед, вобаста аст:
Ду гул ба беҳтарин терминалҳо пайваст шудаанд:

Ду намуди беҳтарин барои модулҳои зангҳои беҳтарин (худдорӣ аз терминалҳои бевосита) инҳоянд:

Гирифтани оддитарин барои истифода бурдани матни аслии матн истифода намешавад. Аксари истифодабарандагони Linux ин яке аз инҳоро дар мониторинги худ истифода мебаранд:

Дохилкунии Linux метавонад бо пре_getти ё калисо барои матн-терминалҳо меояд. Баъзе тақсимот низ таъмин намекунанд. Мутаассифона, онҳо аксар вақт онро "gifty" меноманд, то шумо муайян кунед, ки кадом яке аз шумо аз далелҳое, ки баъд аз он дар / etc / inittab фарқ мекунад, муайян кунед. Debian истифода мекунад (дар бастаи utilux-linux). RedHat ва Fedora ps_getty -ро истифода бурданд, ки дар он: ps_getty

Ба сифати охирин кӯшиши кӯшиш кардани муайян кардани он, ки шумо ба он мансубанд, шумо метавонед рамзи иҷрошавандаашро (одатан / sbin) тафтиш кунед. ps_getty дорои / etc / gettydefs дорои ин код аст. Барои ҷустуҷӯи он, ба / sbin ва нависед:
Гулрухсор Рофиева гипс
Агар getty воқеан атеист аст, ки дар боло ягон чиз натиҷа намеёбад. Аммо агар шумо нависед,
Гит
бояд [вироиш] -ро интихоб кунед.

Агар шумо нахоста бошед, шумо мехоҳед дигар дивизҳо ва барномаҳои бениҳоятро барои табодули RPM ва бастаҳои Debian гузаронед. Рамзи сарчашма метавонад аз Getty Software гирифта шавад.

Агар шумо истифодаи хатҳои назорати модемро истифода набаред (масалан, агар шумо танҳо шумораи камтарини интиқолдиҳандаҳоро истифода набаред: интиқол, қабул ва заминаи сигналҳои умумӣ) шумо бояд ба воситаи параграфи «local» истифода баред. Формулаи мазкур аз он вобаста аст, ки шумо кадом ганҷро истифода мекунед.

Гирифтан пас аз ворид шудан (ва метавонад ҷуброн кунад)

Баъд аз он ки шумо ба система ворид шавед (бо истифодаи "боло", "ps -ax" ё "ptree"), ки раванди гушт давом намекунад. Бо он чӣ рӯй дод? Чаро гул баргашта, боз ҳам сар мешавад? Ин аст, ки чаро.

Баъд аз он ки шумо дар номи корбари шумо нависед, getty онро мегирад ва барномаро ворид мекунад, ки онро номи истифодабаранда номидааст. Раванди гетӣ бо раванди дохилӣ иваз карда мешавад. Роҳнамо барои пароли худ талаб мекунад, онро тафтиш мекунад ва ҳар корро дар файли гузарвожаи шумо муайян мекунад. Ин раванд аксар вақт пӯсти пӯст аст. Агар ин тавр бошад, bash оғоз мекунад ва раванди дохилшавиро иваз мекунад. Дар хотир доред, ки як раванди дигарро иваз мекунад ва раванди пӯсти пӯст ҳамчун оғози раванди оғоз меёбад. Натиҷаҳои ин дар поён оварда мешаванд.

Ҳоло дар файли / etc / inittab file, gifty ба таъхир афтод (бозоғоз аст), агар кушта шавад. Он дар бораи хатти, ки гӯё гетӣ ном дорад, мегӯяд. Аммо агар пӯсти пӯст (ё раванди воридшавӣ) кушта шавад, ҳакерҳо (бозгаштан). Чаро? Хуб, ҳам раванди воридшавӣ ва ҳамхизматҳо барои ивазшавӣ ва мерос иваз карда мешаванд

* Таҳаввулоти матнӣ Чӣ гуна нишон дода шудааст?

пайвастҳои сигналҳо аз ҷониби пешини онҳо муқаррар карда мешаванд. Дар асл, агар шумо тафсилоти мушаххасро бинед, ки раванди ивазкунии ҳамон як ID корти ҳамчун раванди аслӣ дорад. Ҳамин тавр bash як навъи гуштро бо ҳамон як рақами идентификатсионӣ коркард мекунад. Агар баш кушта шуда бошад, ҳамон тавре, ки гусфанд кушта шудааст (ҳатто агар гусфанд идома дорад). Ин натиҷа ба нафақа баромадааст.

Вақте ки як рӯйхат рӯй медиҳад, ҳамаи равандҳо дар ин бандҳои сершумор, аз ҷумла пӯсти заррин кушта мешаванд. Ин метавонад низ метавонад (агар имкон бошад), агар сигналҳои овезонаро ба санги силсила бо хатогии хатҳои DCD аз модем фиристед. Ҳангоми баромадан ё тарк кардан дар DCD баромади гипотеза мегардад. Яке метавонад бо ёрии дастаи клавиатура бо кушодани bash (ё дохилшавӣ) ё бо кушодани калиди k, ва ғайра дар вақти "боло" ё бо "куштани" фармон бардоред. Шумо эҳтимол дорад, ки онро бо сигнали 9 (онро беэътино кардан мумкин нест) бикашед.

Агар getty аз хатти фармон барояд: Барномаҳо қатъ карда мешаванд

Шумо бояд одатан getty аз inside / etc / inittab иҷро карда шавад, на аз хати фармон ё дигар барномаҳое, ки дар терминал кор мекунанд, ногаҳон ногаҳон (қатъ). Ин аст, ки чаро (ба қисми дигар гузаред, агар чаро барои шумо муҳим нест). Агар шумо ба ttyS1 аз рақами фармонии терминали дигар оғоз кунед, мегӯянд, ки tty1, пас он қадами 1 "terminal terminal" -ро дорад, ҳатто агар терминали воқеии он давомот бошад, ttyS1. Ҳамин тариқ, он терминали тафтишоти нодуруст дорад. Аммо агар он дар дохили файли inittab оғоз шуда бошад, онгоҳ ttyS1 ҳамчун терминали назорат (дуруст) дорад.

Гарчанде, ки терминали назорати нодуруст аст, воридшави дар ttyS1 хуб кор мекунад (аз оне, ки шумо барои ttyS1 ҳамчун далели ба гайрия) дода шудааст. Сатҳи стандартон ва баромади стандартӣ ба ttyS1 муқаррар карда мешавад, ҳарчанд ки терминали назорати tty11 мемонад11. Барномаҳои дигар, ки дар ttyS1 кор мекунанд, метавонанд ин вуруд ва вуруди стандартиро (ки ба ttyS1 бастаанд) ва ҳама чиз хуб аст. Аммо баъзе барномаҳо метавонанд хатогиро аз терминали назоратӣ (tty1) хонда метавонанд, ки нодуруст аст. Ҳоло tty1 фикр мекунанд, ки ин барномаҳо дар замина аз тарафи tty1, то кӯшиши хондан аз tty1 (он бояд ttyS1) натиҷаҳои дар қатъ намудани раванде, ки кӯшиши хондан. (Раванди пасошуравӣ аз терминали назоратии худ хонда намешавад). Шумо метавонед паёмро ба монанди: " [1] + дар ҳолати даркорӣ монед . Дар ин ҳолат, шумо аз оне ки шумо бо раванде, ки кӯшиш ба шумо дар робита бо терминали нодуруст муошират карданро надорад, истифода набаред. Албатта, шумо аз ин гурезед, ба терминали дигар меравед ва раванди онро кушед.

Ягона (метавонад номаттар номида шавад)

Як сатри намунавӣ / etc / inittab:

S1: 23: respawn: / sbin / getty-L ​​19200 ttyS1 vt102

S1 аз ttyS1 аст. 23 маънои онро дорад, ки геттсаро дараҷаи 2 ё 3-юм ба даст овардааст, маънои онро дорад, ки агар гетт (ё раванде, ки онро монанди bash) иваз карда шуда бошад, голи худ ба таври худкор оғоз меёбад. / sbin / getty фармоиши getty аст. -L маънои Local (сигналҳои назорати модемро рад кунед). -h (дар намунаи намебошад) назорати ҷараёни сахтафзорро таъмин мекунад (монанди crtycts sttycts). 19200 меъёри baud. ttyS1 маънои / dev / ttyS1 (COM2 дар MS-DOS). vt102 навъи терминал аст ва ин гачин тағйирёбии муҳити атрофро ба ин арзиш муқаррар мекунад. Ҳеҷ гуна файлҳои конфигуратсия вуҷуд надорад. Навъи "init q" -ро дар хатти фармон пас аз таҳрири барзиёд ва шумо бояд фаврии воридшударо бинед.

Автоматикунонии автоматизатсияи ҳалли мушкилоти

Барномаи солимӣ кӯшиш мекунад, ки параллелиро дар дохили терминал муайян кунад (аз ҷумла парҳезӣ). Он параметрҳои 8-bit-ро бо иловаи 1-микро дастгирӣ намекунад. Нигоҳҳои 8-bit-и иттилоотӣ (илова пароли). Агар шумо истифода бурдани параллелро истифода баред, кӯҳнатарин автоматӣ аз худ карда мешавад, зеро он дар навбати аввал мехоҳад, ки парҳезии он ба мисли он ки маълумот кам аст. Ин аз он сабаб аст, ки ба миқдори камтарин (эҳтимолан каме парҳезӣ) лозим аст, вақте ки шумо номҳои воридшударо нависед, то он метавонад автоматро ошкор кунад. Ҳамин тавр, агар шумо паролро истифода баред, онро танҳо дар дохили матни терминал фаъол созед ва ба таври автоматӣ онро ошкор созед ва онро дар компютер насб кунед. Агар терминали шумо пароли гирифташударо дастгирӣ кунад, фаврии зеркашӣ то он даме, ки шумо навиштан чизеро нависед, то гипотаро муайян кунед

парии. Дархости ҷудогона меҳмонон ва ғайраҳоро аз кӯшиши ворид шудан ба он бозмедорад. Ин метавонад танҳо он чизеро, ки шумо мехоҳед.

Баъзан мушкиле бо ошкоркунии автоматизатсияи худ аст. Ин аз он сабаб мешавад, ки пас аз он ки шумо аввалин номнависии худро ворид кунед, барномаи шуморо ба таври автоматӣ ба анҷом мерасонад. Дар натиҷа, барномаи вурудӣ парвандаро муайян намекунад, то агар барномаи пароли муайяннамудаи параграф муайян гардад, он ҳам. Агар кӯшиши аввалини воридшавӣ ба анҷом наравад , ба шумо имкон медиҳад, ки боз як бори дигар кӯшиш кунед, вагарна (ҳама бо парастории нодуруст). Дар ниҳоят, пас аз як қатор кӯшишҳо ба вуруд ба система (ё баъд аз вақти вақт), навори нав оғоз меёбад ва пайдарпаии вурудшавӣ аз нав оғоз меёбад. Вақте ки гетӣ боз давом дорад, мумкин аст, ки параллелро дар кӯшиши дуюм муайян кунед, то ин ки ҳама корҳо метавонанд баъд кор кунанд.

Бо пароли нодуруст, барномаҳои воридшаванда дурустро хонда наметавонед ва шумо наметавонед ворид шавед. Агар терминали шумо пароли гирифташударо дастгирӣ кунад, шумо намоиши аҷибро мебинед. Агар getty натавонад, ки паритети файл / etc / issue парванда одатан ба экран пеш аз он ки фавран фавран партофта шавад, бинобар ин, калимаҳои зиёдашударо дар экран пайдо кардан мумкин аст.

Чаро номзади аввалинро ба таври оддӣ парастиш кардан мумкин нест? Ин намунаи мисол аст: Бигӯед, ки 8-bit бо почтаи электронӣ бо ҳаҷми 0 (миқдори баланд) ва рақами ягонаи 1-сонияро муайян мекунад. Кадом садоқат ин аст? Хуб, шумораи ками 1 адад ин маънои онро дорад, ки ин парҳезии оддӣ аст. Аммо он метавонад танҳо 8-бит бошад ва бидуни паритети он. Барои муайян кардани кадомҳо роҳи муайян вуҷуд надорад. Аммо то ҳол мо имконияти ҳамдигариро пароканда кардем. Муайян кардани параллел бо ин тариқ бо роҳи бартарафсозӣ идома меёбад.

Агар навиштаи навбатӣ ба якум монанд бошад ва танҳо имконияти ҳам парольро бартараф кардан мумкин аст, он ҳанӯз ҳам муайян кардани паритатсия ғайриимкон аст. Ин ҳолат бетағйир боқӣ мемонад ва дар ҳолатҳои нодир, то ворид кардани номи вуруд ба феҳрист тағйир намеёбад. Агар гармии миқдори якхелаи 1-ро пайдо кунад, он тасаввур мекунад, ки ин каме парҳез аст, на як фармоишии фарқкунандаи 8-бит. Аз ин рӯ, шумо тасаввур мекунед, ки шумо дар матни клавиатура (насбҳои баланди) истифода намешавед (яъне, ки номи шумо дар ASCII аст).

Яке аз роҳҳо метавонад ба "вуруд" ворид шавад. Фикр кунед, ки шумо танҳо як нома ё ду номро барои номи худ ворид кунед ва бозгашти бозгашт кунед. Агар ин номҳо барои муайян кардани паритонӣ кофӣ набошанд, пас ворид шудан пеш аз он ки паритсия муайян карда мешавад. Баъзан ин мушкилот рӯй медиҳад, агар шумо терминал ва / ё пайвастанро дар вақти аввалин оғоз намоед.

Агар шумо дар ин вуруд "вуруд ба вирусҳо" партофта бошед, роҳи берун аз он аст, ки якчанд маротиба ба тугмаи воридшавӣ то даме, Роҳи дигари ин аст, ки танҳо як дақиқа ё то он даме, ки вақтро интизор шавед. Сипас, фаврии зеҳни воридшавӣ ба экран аз тарафи барномаи getty гузошта мешавад ва шумо метавонед бозоғозед.

8-bit маълумотҳои ҳаҷм (иловаи пароли)

Мутаассифона, аксаран ин парҳезро ошкор карда наметавонанд. То охири соли 1999 ин имконият барои хомӯш кардани автоматизатсияи автоматӣ вуҷуд надорад ва бинобар ин танзими нодуруст муайян карда мешавад. Натиҷаи он аст, ки раванди воридшавӣ баста мешавад ва паритсия хато хоҳад буд. Бинобар ин, кӯшиш кунед, ки кӯшиш кунед, ки 8-битҳои додашударо бо паритат истифода баред.

Гирифтани (қисми асосии getty_ps)

(Аксари ин аз Serial-HOWTO аз ҷониби Greg Hankins аст)
Барои ин параграф бояд ҳар як сабтро дар файли конфигуратӣ гузошта, илова кунад дар / etc / inittab . Дар ин ҷо баъзе вурудоти намунавӣ барои истифодаи терминали шумо ҳастанд, ки шумо ба файли танзимот / etc / gettydefs гузоштаед .

# 38400 bps Вуруд ба хатти лаблабаки DT38400 # B38400 CS8 CLOCAL # B38400 SANE-UNSPIRE CLOCAL # @ S @L ба қайд гирифта шудааст: # DT38400 # 19200 bps Дискҳои Далелии Департаменти DT19200 # B19200 CS8 CLOCAL # B19200 SANE-UNTRIP CLOCAL # @ SL Логин: # DT19200 # 9600 bps Воридшавӣ Terminal DT9600 # B9600 CS8 CLOCAL # B9600 SANE-ИСТИФИ МАЪЛУМОТ # @ S @ L ба қайд гирифта мешавад: # DT9600

Дар хотир доред, ки DT38400, DT19200 ва ғайра танҳо аломатҳо ҳастанд ва бояд ҳамон гунае, ки шумо дар / etc / inittab истифода мебаред.

Агар шумо хоҳед, шумо метавонед банақшагирии чизҳои шавқоварро дар сарлавҳаи воридшавӣ эҷод кунед. Дар намунаи ман, ман номи система ва хатти силсиларо чоп кардам. Шумо метавонед чизҳои дигарро илова кунед: [blockquote

соя = ҳа @B Дар айни замон (баҳогузорӣ дар @B баҳогузорӣ шудааст) сатри bps. @D Дар санаи ҷорӣ, дар MM / DD / YY. @L Сатҳи силсила, ки ба он графӣ пайваст шудааст. @ Системаи ном @ В айни замон, дар ҲНИТ: MM: SS (24 соат). @ Шумораи истифодабарандагони дар айни замон ба қайд гирифташуда. Ин рақами вурудшавӣ дар файли / etc / utmp аст, ки дар майдони non_name нусхабардорӣ дорад. @ В Арзиши VERSION, ки дар файли пешфарзӣ дода шудааст. Барои нишон додани аломати ягонаи '@', истифода аз '\ @' ё '@@' истифода баред.

Вақте, ки шумо editing / etc / gettydefs иҷро карда истодаед , шумо метавонед тафтиш кунед, ки синтаксат дуруст аст:

linux # getty -c / etc / gettydefs

Боварӣ ҳосил кунед, ки ягон параметри дигар ё файли танзимот барои портали serial, ки терминали шумо ба монанди чунин аст ( /etc/default/{uu}runtty.ttys N ё /etc/conf.{uu}runtty.ttyS N ) , зеро ин ба эҳтимоли ғолиб дар терминал имкон медиҳад. Агар онҳо аз чунин файлҳои муноқиша хориҷ шаванд.

Таҳрири файли / etc / inittab- ро ба кор даровардани getty дар браузери скан (иваз кардани маълумоти дуруст барои муҳити шумо - портал, суръат ва навъи терминал):

S1: 23: respawn: / sbin / getty ttyS1 DT9600 vt100 ташаббус linux # init q

Дар ин ҳолат, шумо бояд фаврии вурудро дар терминали худ дидед. Ба шумо лозим меояд, ки ба дастгоҳ диққати худро ба даст гиред.

mgetty

"M" модемро дар бар мегирад. Ин барнома асосан барои модулҳо ва аз соли 2000-ум ба ҳисоб гирифта мешавад, ки онро барои матнҳои терминал истифода барад (агар шумо истифодабарии назорати сахтафзори сахтафзорӣ ва аз оне, ки одатан кабелҳои дастӣ) талаб карда тавонед. Барои ҳуҷҷатҳо барои терминалҳои бевосита, қисмати "бевосита" -и дастнавис: mgetty.texi.

Дар сатри охирини /etc/mgetty/mgetty.config ба мисоли конфигуратсия барои терминал нигаред. Агар шумо нагӯед, ки "toggle-dtr no" бигӯяд, ки шумо модем дошта бошед ва пинҳон кардани (пинҳон) PIN-ро дар компютер бо муваффақият барои навсозии модели ғайримуқаррарӣ. Дар муқоиса бо гибифҳои дигар, mgetty худ ба терминали то ба касе ягон калиди терминал меорад, то ки шумо мебинед? барои терминал дар боло ё ps то ин ҳолат рӯй медиҳад. Сабтҳо дар / var / log / mgetty / метавонанд як чанд паёмҳои огоҳкуниро нишон диҳанд, ки танҳо ба модемҳое, ки шумо наметавонед нодида кунед.

Ин намунаи хатти оддӣ, ки шумо дар вирус / etc / inittab гузоштед:

s1: 23: respawn: / sbin / mgetty-t ttyS1