Scroll to navigation

AGETTY(8) Администрација система AGETTY(8)

НАЗИВ

agetty - заменска Линукс „getty“

УВОД

agetty [options] port [baud_rate...] [term]

ОПИС

agetty opens a tty port, prompts for a login name and invokes the /bin/login command. It is normally invoked by init(8).

agetty has several non-standard features that are useful for hardwired and for dial-in lines:

•Прилагођава поставке конзоле на битове паритета и на знакове брисања, убијања, краја реда и великих слова када чита пријавно име. Програм може да обрађује 7-битне знакове са парним, непарним, ништавним или паритетом размака, а 8-битне знакове без парности. Препознају се следећи специјални знакови: Контрол-U (убија); DEL и повратница (брише); повратник реда и увод реда (крај реда). Такође погледајте опције --erase-chars и --kill-chars.

•Опционално дознаје проток бита из порука ПОВЕЖИ које производе Hayes(tm)-сагласни модеми.

•Изборно не прекида када му је дата већ отворена линија (корисно за програме повратног позива).

•Опционално не приказује садржај /etc/issue датотеке.

•Опционално приказује заменске датотеке или директоријуме проблема за /etc/issue или /etc/issue.d.

•Опционално не тражи име пријављивања.

•Опционално призива нестандардни пријавни програм уместо /bin/login.

•Опционално укључује контролу хардверског протока.

•Опционално приморава да линија буде локална без потребе за откривањем носача.

Овај програм не користи /etc/gettydefs (System V) или /etc/gettytab (SunOS 4) датотеке.

АРГУМЕНТИ

прикључник

Назив путање односан на директоријум /dev. Ако је „-“ наведен, agetty подразумева је његов стандардни улаз већ повезан на прикључник конзоле и да је веза са удаљеним корисником већ успостављена.

Под System-ом V, „-“ аргументу прикључника треба да претходи „--“.

проток_бита,...

Зарезом раздвојен списак једног или више протока битова. Сваки пут кад agetty прими знак ПРЕКИД напредује у списку, који се сматра као да је кружни.

Протоци битова треба да се наведу опадајућим редоследом, тако да се ништавни знак (Ктрл-@) може такође користити за пребацивање протока битова.

Овај аргумент је опционалан и није неопходан за виртуелне терминале.

Основно за серијске терминале је да задрже текући проток битова (видите --keep-baud) и ако не успе тада се пребацује на „9600“.

терм

Вредност која ће се користити за ТЕРМ променљиву окружења. Ово преписује било шта init(1) може да постави, и наслеђује га пријава и шкољка.

Основно је „vt100“, или „linux“ за Линукс на виртуелном терминалу, или „hurd“ за GNU Hurd на виртуелном терминалу.

ОПЦИЈЕ

-8, --8bits

Подразумева да је конзола 8-битно чиста, стога искључује откривање паритета.

-a, --autologin корисничко-име

Аутоматски пријављује наведеног корисника без тражења корисничког имена или лозинке. Коришћење ове опције доводи до тога да опциа -f корисничко-име и аргумент буду додати /bin/login линији наредби. Видите --login-options, која се може користити за измену понашања ове опције.

Знајте да --autologin може да утиче на начин на који getty покреће серијску линију, јер при самосталној пријави agetty не чита са линије и нема прилике да оптимизира поставку линије.

-c, --noreset

Не поставља поново „cflags“ терминала (режими контроле). Видите termios(3) за више о томе.

-E, --remote

Типично наредби login(1) се даје удаљени назив домаћина приликом позива нечим као што је telnetd(8). Ова опција омогућава да agetty проследи оно што користи за назив домаћина ка login(1) за коришћење у utmp(5). Видите --host, login(1), и utmp(5).

Ако је дата опција --host лажнидомаћин, тада се опција -h лажнидомаћин и аргумент додају линији наредби /bin/login.

Ако је дата опција --nohostname, тада се опција -H додаје линији наредби /bin/login.

Видите --login-options.

-f, --issue-file путања

Наводи „:“ разграничен списак датотека и директоријума који ће бити приказани уместо /etc/issue (или другог). Све наведене датотеке и директоријуми се приказују, недостајуће или празне датотеке се тихо занемарују. Ако је наведена путања директоријум, приказује све датотеке са проширењем .issue по редоследу ређања издања из директоријума. Ово омогућава да се произвољне поруке приказују на различитим терминалима. Опција --noissue ће заменити ову опцију.

--show-issue

Приказује тренутну датотеку проблема (или другу) на тренутном терминалу и излази. Користите ову опцију да прегледате тренутну поставку, она није осмишљена ни за једну другу сврху. Знајте да излаз може користити неке основне или непотпуне информације јер исправан излаз зависи од терминала и agetty линије наредби.

-h, --flow-control

Укључује контролу тока хардвера (RTS/CTS). Оставља се програму да искључи протокол тока софтвера (XON/XOFF) када је прикладно.

-H, --host лажњак

Уписује наведеног лажног-домаћина у „utmp“ датотеку. Обично, не даје се никакав домаћин пријаве, пошто се agetty користи за локалне ожичене везе и конзоле. Међутим, ова опција може бити корисна за идентификацију терминалних концентратора и слично.

-i, --noissue

Не приказује садржај /etc/issue (или друге) пре него што запише упит пријаве. Терминали или комуникациони хардвер могу постати збуњени када примају много текста погрешним протоком битова; скрипте мрежне парице могу да не успеју ако упиту за пријаву претходи превише текста.

-I, --init-string ниска-покретања

Поставља почетну ниску која ће се послати конзоли или модему пре него што се пошаље било шта друго. Ово се може користити за покретање модема. Неисписиви знакови се могу послати исписивањем њиховог окталног кода којем претходи обрнута коса црта (\). На пример, да би се послао знак за увод реда (АСКРИ 10, октално 012), упишите \12.

-J, --noclear

Не чисти екран пре постављања упита за пријавно име. По основи екран је очишћен.

-l, --login-program програм-пријављивања

Призива наведени програм_пријаве уместо /bin/login. Ово омогућава коришћење нестандардног програма за пријаву. Такав програм би, на пример, могао да затражи лозинку мрежне парице или да користи другу датотеку лозинке. Видите --login-options.

-L, --local-line[=режим]

Контролише заставицу реда „CLOCAL“. Опционални аргумент режим је auto, always или never. Ако је аргумент режим изостављен, онда је основна вредност always. Ако опција --local-line уопште није дата, онда је основна вредност auto.

always

Приморава линију да буде локлана линија без потребе за откривањем носача. Ово може бити корисно када имате локално прикачен терминал где серијска линија не поставља сигнал откривања носача.

never

Изричито чисти опцију „CLOCAL“ са поставке линије а сигнал откривања носача је очекиван на линији.

auto

Основност agetty-ја. Не мења „CLOCAL“ поставку и прати поставку укључену кернелом.

-m, --extract-baud

Покушава да извуче проток битова из поруке стања ПОВЕЖИ СЕ коју произведу Hayes(tm)-сагласни модеми. Те поруке стања су у облику: „<смеће><брзина><смеће>". agetty подразумева да модем емитује своју поруку стања истом брзином као што је наведено вредношћу (првом) протока_битова на линии наредби.

Како функција --extract-baud може да не успе на веома оптерећеним системима, ви још увек треба да укључите обраду ПРЕКИДа набрајањем свих очекиваних протока битова на линији наредби.

--list-speeds

Приказује подржане протоке битова. Одређени су у време превођења.

-n, --skip-login

Не тражи од корисника име за пријаву. Ово се може користити у вези са опцијом --login-program за призивање нестандардног процеса пријављивања као што је BBS систем. Знајте да са опцијом --skip-login, agetty не добија никакав унос од корисника који се пријављује и стога неће моћи да утврди паритет, величину знака и обраду новог реда везе. Прелази на основност паритета размака, 7-битних знакова и АСКРИ CR (13) знак краја реда. Пазите да се програм који agetty покреће (обично /bin/login) покреће као администраторски.

-N, --nonewline

Не исписује нови ред пре записивања /etc/issue.

-o, --login-options опције_пријаве

Опције и аргументи који се прослеђују login-у(1). Где се „\u“ замењује пријавним именом. На пример:

--login-options '-h darkstar -- \u'

Видите --autologin, --login-program и --remote.

Прочитајте БЕЗБЕДНОСНО ОБАВЕШТЕЊЕ у наставку пре коришћења ове опције.

-p, --login-pause

Чека на притисак било ког тастера пре него што пребаци на упит за пријаву. Може се комбиновати са --autologin ради уштеде меморије са лењим израђањем шкољки.

-r, --chroot директоријум

Мења корен на наведени директоријум.

-R, --hangup

Позива vhangup(2) да одради виртуелни прекид наведеног терминала.

-s, --keep-baud

Покушава да задржи постојећи проток битова. Протоци битова са линије наредби се користе када agetty прими знак ПРЕКИД. Ако су наведени други протоци битова, тада се оригинални проток битова такође чува на крају списка жељених протока битова. Ово се може користити за враћање на првобитни проток битова након неочекиваних ПРЕКИДа.

-t, --timeout временски-истек

Окончава ако се име корисника не може прочитати за временски-истек секунде. Коришћење ове опције са чврстожичаниим линијама терминала није препоручено.

-U, --detect-case

Укључује подршку за откривање терминала који користи само велика слова. Ова поставка ће открити пријавно име које садржи само велика слова као што назначава терминал само великих слова и укључиће нека претварања великих у мала слова. Знајте да ово нема подршку ни за један Јуникод знак.

-w, --wait-cr

Чека да корисник или модем пошаљу знак за повратак или за увод реда пре него што пошаље датотеку /etc/issue (или друге) и упит за пријаву. Ово је корисно са опцијом --init-string.

--nohints

Не исписује поготке о тастерима закључавања бројева, великих слова и клизања.

--nohostname

По основи назив домаћина биће исписан. Када је ова опција омогућена, назив хоста уопште неће бити приказан. Ова поставка се такође може омогућити помоћу опције „LOGIN_PLAIN_PROMPT“ у датотеци подешавања /etc/login.defs (погледајте доле за више детаља).

--long-hostname

По основи назив домаћина се исписује само до прве тачке. Са овом опцијом укљученом, потпуно квалификован назив домаћина са gethostname(3P) или (ако се не нађе) са getaddrinfo(3) се приказује.

--erase-chars ниска

Ова опција наводи додатне знакове које треба тумачити као повратни простор („занемарује претходни знак“) када корисник унесе име за пријаву. Основно додатно „обриши“ је било „#“, али од „util-linux“-а 2.23 никакви додатни знакови брисања нису укључени по основи.

--kill-chars ниска

Ова опција наводи додатне знакове које треба тумачити као убијање („занемарује све претходне знаке“) када корисник унесе име за пријаву. Основно додатно „убиј“ је било „@“, али од „util-linux“-а 2.23 никакви додатни знакови убијања нису укључени по основи.

--chdir директоријум

Мења директоријум пре пријављивања.

--delay број

Секунде спавања пре отварања конзоле.

--nice број

Покреће пријављивање са овом предношћу.

--reload

Тражи од свих покренутих agetty примерака да поново учитају и ажурирају своје приказане упите, ако корисник још није почео да се пријављује. Након тога наредба ће изаћи. Ова функција можда није подржана на системима без Линукс inotify(7).

-h, --help

Приказује текст помоћи и излази.

-V, --version

Исписује издање и излази.

СТАВКЕ ДАТОТЕКЕ ПОДЕШАВАЊА

agetty reads the /etc/login.defs configuration file (see login.defs(5)). Note that the configuration file could be distributed with another package (usually shadow-utils). The following configuration items are relevant for agetty:

LOGIN_PLAIN_PROMPT (логичка)

Говори agetty-у да исписивање назива домаћина треба бити потиснуто у упиту „пријава:“. Ово је алтернатива за опцију --nohostname линије наредби. Основна вредност је no (не).

ПРИМЕР

Овај одељак показује примере за поље процеса уноса у датотеци /etc/inittab. Мораћете да унапред додате одговарајуће вредности за остала поља. Видите inittab(5) за више о томе.

За чврстожичану линију или конзолу:

/sbin/agetty 9600 ttyS1

За директно повезани терминал без одговарајућег ожичења откривања носача (покушајте ово ако ваш терминал само спава уместо да вам постави упит „лозинка:“):

/sbin/agetty --local-line 9600 ttyS1 vt100

За стару линију за бирање са 9600/2400/1200 бауд модемом:

/sbin/agetty --extract-baud --timeout 60 ttyS1 9600,2400,1200

За „Hayes“ модем са фиксним сучељем од 115200 б/с за машину (почетна ниска примера искључује ехо модема и шифре резултата, чини да модем/рачунар DCD прати модем/модем DCD, чини да DTR пад изазове прекид везе и укључује ауто-одговор после 1 звона):

/sbin/agetty --wait-cr --init-string 'ATE0Q1&D2&C1S0=1\015' 115200 ttyS1

БЕЗБЕДНОСНО ОБАВЕШТЕЊЕ

Ако користите опције --login-program и --login-options, знајте да злонамерни корисник може покушати да унесе пријавна имена са уграђеним опцијама, која се затим прослеђују коришћеном пријавном програму. agetty проверава да ли има водећег „-“ и осигурава да се пријавно име проследи као један параметар (тако да уграђени размаци неће створити још један параметар), али у зависности од тога како пријавна извршна обрађује линију наредби, то можда неће бити довољно. Проверите да се коришћени пријавни програм не може злоупотребити на овај начин.

Неки програми користе „--“ да назначе да остатак линије наредби не треба да се протумачи као опције. Користите ову функцију ако је доступна прослеђујући „--“ пре него име корисника буде прослеђено са „\u“.

ДАТОТЕКЕ ПРОБЛЕМА

Основна датотека проблема је /etc/issue. Ако датотека постоји, онда agetty такође проверава да ли постоји директоријум /etc/issue.d. Директоријум је опционално проширење за основну датотеку проблема и садржај директоријума се исписује после /etc/issue садржаја. Ако /etc/issue не постоји, тада се директоријум занемарује. Све датотеке са проширењем .issue из директоријума се исписују редом према издању. Директоријум се може користити за одржавање порука треће стране независно на примарној системској датотеци /etc/issue.

Од издања 2.35 додатне локације за датотеку проблема и директоријум су подржане. Ако основна /etc/issue не постоји, тада agetty проверава има ли /run/issue и /run/issue.d, након тога /usr/lib/issue и /usr/lib/issue.d. Директоријум /etc се очекује за домаћину специфично подешавање, /run се очекује за створене ствари и /usr/lib за статичко подешавање одржавано дистрибуцијом.

Основна путања је можда прескочена опцијом „--issue-file“. У том случају наведена путања треба да буде датотека или директоријум а сва основна места датотеке проблема и директоријума се занемарују.

Функција датотеке проблема се може у потпуности искључити опцијом --noissue.

Могуће је прегледати текућу датотеку проблема са agetty --show-issue на текућем терминалу.

Датотеке проблема могу садржати одређене кôдове измене за приказивање назив система, датума, времена и тако даље. Сви кôдови измене се састоје од контра косе црте (\) за којом одмах следи један од знакова наведен испод.

4 или 4{interface}

Уноси ИПв4 адресу наведеног мрежног сучеља (на пример: \4{eth0}). Ако аргумент сучеље није наведен, тада бира прво потпуно подешено (UP, non-LOCALBACK, RUNNING) сучеље. Ако не пронађе подешено сучеље, враћа се на ИП адресу назива домаћина машине.

6 или 6{interface}

Исто као \4 али за IPv6.

b

Умеће проток битова текућег реда.

d

Умеће текући датум.

e или e{name}

Преводи људима читљив назив у низ измене и умеће га (на пример: \e{red}Текст узбуне.\e{reset}). Ако аргумент назив није наведен, тада умеће \033. Тренутно подржани називи су: црно, трептаво, плаво, подебљано, браон, плавичасто, тамносиво, сиво, зелено, полусветло, светлоплаво, светлоплавичасто, светлосиво, светлозелено, светлоружичасто, светлоцрвено, ружичасто, црвено, враћено, обрнуто, жуто и бело. Сви непознати називи се тихо занемарују.

s

Умеће назив система (назив оперативног система). Исто као „uname -s“. Видите такође изменски кôд „\S“.

S или S{VARIABLE}

Умеће податке ПРОМЕНЉИВЕ из /etc/os-release. Ако ова датотека не постоји тада се пребацује на /usr/lib/os-release. Ако аргумент ПРОМЕНЉИВА није наведен, тада користи „PRETTY_NAME“ из датотеке или из назива система (видите „\s“). Овај изменски кôд се може користити за држање /etc/issue дистрибуције и издања независним. Знајте да се „\S{ANSI_COLOR}“ претвара у стварни изменски низ терминала.

l

Умеће назив текуће конзолне линије.

m

Умеће одредника архитектуре рачунара. Исто као uname -m.

n

Умеће назив чвора рачунара, такође познат као назив домаћина. Исто као uname -n.

o

Умеће NIS назив домена рачунара. Исто као hostname -d.

O

Умеће DNS назив домена рачунара.

r

Умеће број издања оперативног система. Исто као uname -r.

t

Умеће текуће време.

u

Умеће број тренутно пријављених корисника.

U

Умеће ниску „1 user“ или „<n> users“ где је <n> број тренутно пријављених корисника.

v

Умеће издање оперативног система, тако је, датум изградње и тако то.

Пример. На мом систему, следећа /etc/issue датотека:

Ово је „\n.\o (\s \m \r) \t“

је приказана као:

Ово је „thingol.orcan.dk (Linux i386 1.1.9) 18:29:30“

ДАТОТЕКЕ

/var/run/utmp

датотека стања система.

/etc/issue

исписано пре упита пријаве.

/etc/os-release /usr/lib/os-release

идентификациони подаци оперативног система.

/dev/console

извештаји о проблемима (ако се syslog(3) не користи).

/etc/inittab

init(8) configuration file for SysV-style init daemon.

CREDENTIALS

agetty supports configuration via systemd credentials (see <https://systemd.io/CREDENTIALS/>). agetty reads the following systemd credentials:

agetty.autologin (string)

If set, configures agetty to automatically log in the specified user without asking for a username or password, similarly to the --autologin option.

ГРЕШКЕ

Функција откривања протока битова (опција --extract-baud) захтева да се agetty закаже довољно брзо након завршетка позива путем бирања (унутар 30 ms са модемима који разговарају брзином од 2400 бауда). За робусност, увек користите опцију --extract-baud у комбинацији са вишеструким аргументом линије наредби протока битова, тако да је укључена обрада ПРЕКИДа.

Текст у /etc/issue датотеци (или другој) и упит пријаве се увек исписују парношћу 7-битних знакова и размака.

Функција откривања протока битова (опција --extract-baud) захтева да модем емитује своју поруку стања након подизања ДЦД линије.

ДИЈАГНОСТИКА

У зависности од тога како је програм подешен, сва дијагностика се уписује на конзолни уређај или се извештава путем syslog(3) могућности. Поруке грешке се производе ако аргумент прикључник не наводи терминални уређај; ако нема „utmp“ уноса за тренутни процес (само System V); и тако даље.

АУТОРИ

Werner Fink <werner@suse.de>, Karel Zak <kzak@redhat.com>

Изворни agetty за серијске терминале је написао W.Z. Venema <wietse@wzv.win.tue.nl> а прилагодио га је за Линукс Peter Orbaek <poe@daimi.aau.dk>.

ПРИЈАВЉИВАЊЕ ГРЕШАКА

За пријављивање грешака, користите пратиоца грешака на <https://github.com/util-linux/util-linux/issues>.

ДОСТУПНОСТ

Наредба agetty је део пакета „util-linux“ који се може преузети са Архиве Линукс кернела <https://www.kernel.org/pub/linux/utils/util-linux/>.

2024-04-03 util-linux 2.40