Inittab-Linux / Unix Command

inittab - formát souboru inittab používaného procesem init kompatibilní s sysv

Popis

Soubor inittab popisuje, které procesy se spouštějí při bootupu a během normálního provozu (např. /etc/init.d/boot, /etc/init.d/rc, gettys ...). Init (8) rozlišuje více úrovní runlevels , z nichž každá může mít vlastní sadu procesů, které jsou spuštěny. Platné úrovně běhu jsou 0 - 6 plus A , B a C pro vstupy na pozvání . Položka v souboru inittab má následující formát:

id: runlevels: akce: proces

Řádky začínající na "#" jsou ignorovány.

id je jedinečná sekvence 1-4 znaků, která identifikuje položku v inittabu (pro verze sysvinit kompilované s knihovnami <5.2.18 nebo a.out knihovny limit je 2 znaky).

Poznámka: Pro gettys nebo jiné přihlašovací procesy by pole ID mělo mít příponu tty odpovídající tty, např. 1 pro tty1 . V opačném případě nemusí přihlašovací účet fungovat správně.

úrovně běhu obsahují seznamy úrovní, pro které by měla být provedena daná akce.

akce popisuje, jaká opatření by měla být přijata.

proces určuje proces, který má být proveden. Pokud pole procesu začíná znakem `+ ', init nebude dělat utmp a wtmp účet pro tento proces. To je nutné pro gettys, kteří trvají na tom, že dělají své vlastní utmp / wtmp housekeeping. To je také historická chyba.

Pole runlevels může obsahovat více znaků pro různé úrovně běhu. Například 123 určuje, že proces by měl být spuštěn v úrovních 1, 2 a 3. Úrovně úrovně pro položky vyžadující příkazy mohou obsahovat A , B nebo C. Pole runlevels položek sysinit , boot a bootwait jsou ignorovány.

Při změně úrovně běhu systému se zablokují všechny spuštěné procesy, které nejsou specifikovány pro novou úroveň řízení, nejprve pomocí SIGTERM a následně SIGKILL.

Platné akce pro pole akce jsou:

respawn

Proces bude restartován kdykoli skončí (např. Getty).

Počkejte

Proces bude spuštěn jednou, jakmile bude zadán zadaný level runlevel a init bude čekat na jeho ukončení.

jednou

Proces bude proveden jednou, jakmile je zadána zadaná úroveň.

boot

Proces bude spuštěn během bootování systému. Pole runlevels je ignorováno.

bootwait

Proces bude spuštěn během bootování systému, zatímco init čeká na jeho ukončení (např. / Etc / rc). Pole runlevels je ignorováno.

vypnuto

To nic nedělá.

na požádání

Proces označený runlevelem ondemand bude proveden vždy, když bude spuštěn požadovaný runlevel na úrovni výzvy. Nicméně nedojde k žádné změně na úrovni úhlové úrovně ( úrovně run a runyvel jsou "a", "b" a "c").

initdefault

Položka initdefault určuje úroveň, která by měla být zadána po spuštění systému. Pokud nikdo neexistuje, init bude požádat o úroveň řízení na konzole. Pole procesu je ignorováno.

sysinit

Proces bude spuštěn během bootování systému . Bude proveden před jakýmkoli spuštěním bootwaitů . Pole runlevels je ignorováno.

powerwait

Proces bude proveden po vypnutí napájení. Init je obvykle o tom informován procesem, který mluví s UPS připojeným k počítači. Init bude čekat, než proces dokončí.

powerfail

Pokud jde o powerwait , kromě toho, že init nečeká na dokončení procesu.

powerokwait

Tento proces bude proveden, jakmile je informován o tom, že výkon byl obnoven.

powerfailnow

Tento proces bude proveden, když bude řečeno, že baterie externího UPS je téměř prázdná a napájení selhává (za předpokladu, že externí UPS a monitorovací proces dokáží tento stav detekovat).

ctrlaltdel

Proces bude proveden, když init přijme signál SIGINT. To znamená, že někdo v systémové konzoli stiskl kombinaci kláves CTRL-ALT-DEL . Typicky chceme provést nějaké vypnutí, ať už se dostaneme do jedné úrovně nebo rebootovat stroj.

kbrequest

Proces bude proveden, když init přijme signál od obslužného programu klávesnice, že byla na klávesnici konzole stisknuta speciální kombinace kláves.

Dokumentace této funkce ještě není dokončena. další dokumentaci lze nalézt v balíčcích kbd-x.xx (poslední byl kbd-0.94 v době psaní tohoto dokumentu). V podstatě chcete mapovat některé klávesové kombinace na akci "KeyboardSignal". Chcete-li například mapovat Alt-Uparrow pro tento účel, použijte následující v souboru klíčových souborů:

alt keycode 103 = KlávesniceSignal

PŘÍKLADY

Jedná se o příklad inittab, který se podobá starému inittabu Linuxu:

# inittab for linux id: 1: initdefault: rc :: bootwait: / etc / rc 1: 1: respawn: / etc / getty 9600 tty1 2: 1: respawn: / etc / getty 9600 tty2 3: 1: respawn: etc / getty 9600 tty3 4: 1: respawn: / etc / getty 9600 tty4

Tento soubor inittab spouští / etc / rc během zavádění a spustí gettys na tty1-tty4.

Podrobnější inittab s různými runlevely (viz komentáře uvnitř):

# Úroveň spustit v id: 2: initdefault: # Inicializace systému před nic jiného. si :: sysinit: /etc/rc.d/bcheckrc # Runlevel 0,6 se zastaví a restartuje, 1 je režim údržby. l0: 0: wait: /etc/rc.d/rc.halt l1: 1: čekat: /etc/rc.d/rc.single l2: 2345: wait: /etc/rc.d/rc.multi l6: 6: wait: /etc/rc.d/rc.reboot # Co dělat na "pozdravu 3 prsty". ca :: ctrlaltdel: / sbin / shutdown -t5 -rf nyní # Runlevel 2 & 3: getty na konzoli, úroveň 3 také getty na modemovém portu. 1: 23: respawn: / sbin / getty tty1 VC linux 2: 23: respawn: / sbin / getty tty2 VC linux 3: 23: respawn: / sbin / getty tty3 VC linux 4:23: respawn: / sbin / getty tty4 VC linux S2: 3: respawn: / sbin / uugetty ttyS2 M19200

Viz též

init (8), telinit ( 8)

Důležité: Použijte příkaz man ( % man ), abyste zjistili, jaký příkaz se používá v konkrétním počítači.