INITTAB(5) | Formatos de Ficheiro | INITTAB(5) |
inittab - formato do ficheiro inittab usando pelo processo init compatível com sysv
O ficheiro inittab descreve quais processos são iniciados no arranque e durante a operação normal (ex. /etc/init.d/boot, /etc/init.d/rc, gettys...). O init(8) distingue múltiplos runlevels, cada um dos quais pode ter o seu próprio conjunto de processos que é arrancado. Os runlevels válidos são 0-6 mais A, B, e C para entradas ondemand. Uma entrada no ficheiro inittab tem o seguinte formato:
id:runlevels:action:process
Nota: tradicionalmente, para o getty e outros processos de login, este valor do campo id é mantido no mesmo que o sufixo do tty correspondente, ex. 1 para tty1. Alguns programas antigos de contabilidade de login podem esperar isto, apesar de não me lembrar de nenhum.
Please note that including certain characters in the process field will result in init attempting to launch a shell to interpret the command contained in the process field. The characters which will trigger a shell are: ~`!$^&*()=|}[];"'<>?
Em sistemas que não tenham uma shell para ser lançada ou quais não se deseja usar uma shell para interpretar o campo do processo, o campo de processo pode ser prefixado com o símbolo @. O @ irá ser ignorado e tudo o que se segue será tratado como o comando a ser lançado, literalmente, pelo serviço init.
Em casos que ambos sinais + e @ vão ser usados (para desligar os relatórios e interpretação da shell) coloque o sinal + antes do símbolo @. Ambas bandeiras irão ser lidadas e depois tudo o que se segue ao @ irá ser lidado pelo init
O campo runlevels pode conter vários caracteres para diferentes runlevels. Por exemplo, 123 especifica que o processo deve ser iniciado nos runlevels 1, 2, e 3. Os runlevels para entradas ondemand podem conter um A, B, ou C. O campo runlevels das entradas sysinit, boot, e bootwait é ignorado.
Quando o runlevel do sistema é mudado, quaisquer processos a correr que não estão especificados para o novo runlevel são mortos, primeiro com SIGTERM, e depois com SIGKILL.
As acções válidas para o campo action são:
A documentação para esta função ainda não está completa; pode ser encontrada mais informação nos pacotes kbd-x.xx (o mais recente foi kbd-0.94 na altura que isto foi escrito). Basicamente você deseja mapear alguma combinação do teclado para a acção "KeyboardSignal". Por exemplo, para mapear Alt-SetaCima para este objectivo use o seguinte no seu ficheiro keymaps:
alt keycode 103 = KeyboardSignal
Isto é um exemplo de uma inittab que é semelhante à inittab antiga do Linux:
# 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
Uma inittab mais elaborada com diferentes runlevels (veja os comentários no interior):
# Nível para onde correr id:2:initdefault: # Script de configuração/inicialização do sistema durante o arranque. si::sysinit:/etc/init.d/rcS # O que fazer em modo de único-utilizador. ~:S:wait:/sbin/sulogin # /etc/init.d executa os scripts S e K na comutação # do runlevel. # # Runlevel 0 é parar. # Runlevel 1 é único-utilizador. # Runlevels 2-5 são multi-utilizador. # Runlevel 6 é reiniciar. l0:0:wait:/etc/init.d/rc 0 l1:1:wait:/etc/init.d/rc 1 l2:2:wait:/etc/init.d/rc 2 l3:3:wait:/etc/init.d/rc 3 l4:4:wait:/etc/init.d/rc 4 l5:5:wait:/etc/init.d/rc 5 l6:6:wait:/etc/init.d/rc 6 # O que fazer na "saudação dos 3 dedos". ca::ctrlaltdel:/sbin/shutdown -t1 -h now # Runlevel 2,3: getty on virtual consoles # Runlevel 3: getty on terminal (ttyS0) and modem (ttyS1) 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 S0:3:respawn:/sbin/getty -L 9600 ttyS0 vt320 S1:3:respawn:/sbin/mgetty -x0 -D ttyS1
/etc/inittab
init foi escrito por Miquel van Smoorenburg. Este manual foi escrito por Sebastian Lederer e modificado por Michael Haardt.
init(8), telinit(8)
4 Dezembro, 2001 | sysvinit |