inittab

Autres langues

Langue: pl

Autres versions - même langue

Version: Jun 04, 1996 (fedora - 25/11/07)

Section: 5 (Format de fichier)

NAZWA

inittab - format pliku inittab używanego przez proces init kompatybilny z sysv.

OPIS

Plik inittab opisuje które procesy zostały uruchomione podczas startu i podczas normalnego działania (np. /etc/rc, getty...). W inicie rozróżnia się różne poziomy pracy (runlevels), z których każdy może mieć swój własny zestaw procesów uruchamianych na starcie. Dopuszczalne poziomy pracy to 0-6 i A, B dla wpisów ondemand (na żądanie). Wpis w pliku inittab ma następujący format:

id:poziomy pracy:akcja:proces
Linie rozpoczynające się od `#' są ignorowane.
id
jest unikalną sekwencją 1-4 znaków, która identyfikuje wpis (dla starszych wersji jego długość może być ograniczona do dwóch znaków).

Uwaga: Dla procesów getty, lub innych procesów loginowych, pole id powinno być końcówką odpowiadającego im tty, np. 1 dla tty1. W innym wypadku login może nie działać prawidłowo.

poziomy pracy
opisują, w których poziomach pracy podjąć podaną akcję.
akcja
opisuje jaką akcję podjąć.
proces
podaje proces, który należy uruchomić. Jeśli pole procesu rozpoczyna się znakiem `+', init nie dokona dla niego wpisów wtmp i utmp. Jest to wymagane dla getty, które wolą robić to samodzielnie. Jest to też błąd historyczny.

Dopuszczalne akcje to:

respawn
Proces będzie uruchomiony od nowa po każdym jego zakończeniu (np. getty).
wait
Proces będzie uruchomiony raz (gdy nadejdzie właściwy poziom pracy), a init będzie czekał na jego zakończenie.
once
Proces będzie wywołany raz po wejściu we właściwy poziom pracy.
boot
Proces zostanie wywołany podczas bootowania. Pole poziomy pracy jest ignorowane.
bootwait
Proces zostanie wywołany podczas bootowania, podczas gdy init czeka na jego zakończenie (np. /etc/rc). Pole poziomy pracy jest ignorowane.
off
Nie robi nic.
ondemand
Proces, który jest zaznaczony poziomem pracy ondemand będzie wywoływany za każdym razem, gdy zostanie wywołany wskazany poziom żądania. Mimo to jednak, nie nastąpi zmiana poziomu pracy (poziomy pracy ondemand to 'a', 'b', 'c').
initdefault
Pole to określa poziom pracy, który powinien być uruchomiony po bootowaniu. Jeśli żaden taki nie istnieje, init zapyta o poziom pracy na konsoli. Pole proces jest ignorowane.
sysinit
Proces zostanie wywołany podczas bootowania. Zostanie wywołany przed wszelkimi wpisami boot czy bootwait. Pole poziomy pracy jest ignorowane.
powerwait
Proces zostanie wywołany gdy init otrzyma sygnał SIGPWR, wskazujący na problemy z zasilaniem. init będzie czekał na zakończenie tego procesu przed dalszą kontynuacją.
powerfail
Podobne do powerwait, lecz init nie będzie czekał na zakończenie tego procesu.
powerokwait
Proces zostanie wywołany gdy init otrzyma sygnał SIGPWR, o ile istnienje plik o nazwie /etc/powerstatys, zawierający słowo OK. Znaczy to, że zasilanie zostało przywrócone.
ctrlaltdel
Proces zostanie wykonany gdy init otrzyma sygnał SIGINT. Znaczy to, że ktoś na konsoli nacisnął kombinację CTRL-ALT-DEL. Zazwyczaj wywołuje się wtedy coś w rodzaju shutdown, zarówno w celu przejścia do poziomu jednoużytkownikowego, jak i do rebootowania maszyny.
kbrequest
Proces zostanie wywołany gdy init otrzyma sygnał z sterownika klawiatury, mówiący że na konsoli została naciśnięta specjalna kombinacja klawiszy.
Dokumentacja tej funkcji nie jest jeszcze kompletna; więcej danych można znaleźć w pakietach kbd-x.xx. Ogólnie, możesz mapować niektóre kombinacje klawiszy do akcji "Spawn_Console". Na przykład aby zmapować na ten cel kombinację alt plus strzałka w górę, użyj następującego wpisu w swoim pliku keymap:

alt keycode 103 = Spawn_Console

Pole poziom pracy może zawierać wiele znaków dla różnych poziomów pracy, np. 123 jeśli proces powinien być uruchamianay w poziomach 1,2 i 3. Wpisy ondemand mogą zawierać A, B, lub C. Poziom pracy wpisów sysinit, boot i bootwait jest ignorowany.

Gdy zmieniany jest poziom pracy, wszelkie działające procesy, które nie należą do noweg poziomu są ubijane. Robione to jest najpierw komendą SIGTERM, a potem SIGKILL.

PRZYKŁADY

Oto przykład inittab, który zawiera stary inittab Linuksa:

 # inittab dla Linuksa
 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
 
Ten plik inittab wywołuje podczas bootowania /etc/rc i uruchamia getty dla tty1-tty4.

Bardziej wykwintny inittab, z różnymi poziomami pracy (zobacz komentarze):


 # Poziom, w którym startować
 id:2:initdefault:
 
 # Inicjalizacja systemu przed wszystkim innym.
 si::sysinit:/etc/rc.d/bcheckrc
 
 # Poziom pracy 0,6 to halt i reboot, 1 jest trybem opieki.
 l0:0:wait:/etc/rc.d/rc.halt
 l1:1:wait:/etc/rc.d/rc.single
 l2:2345:wait:/etc/rc.d/rc.multi
 l6:6:wait:/etc/rc.d/rc.reboot
 
 # Co zrobić przy ctrl+alt+del.
 ca::ctrlaltdel:/sbin/shutdown -t5 -rf now
 
 # Poziomy 2 i 3: getty na konsoli, poziom 3 to getty na porcie modemu.
 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
 
 

PLIKI

/etc/inittab

AUTOR

Init został napisany przez Miquela van Smoorenburga (miquels@cistron.nl), strona podręcznika została napisana przez Sebastiana Lederera (lederer@francium.informatik.uni-bonn.de) i zmodyfikowana przez Michaela Haardta (u31b3hs@pool.informatik.rwth-aachen.de).

ZOBACZ TAKŻE

init(8), telinit(8)