Duas implementações de reinicialização?

1

Por que parece haver duas implementações de reinicialização no meu sistema linux?

# find . -name "reboot"
./etc/init.d/reboot
./sbin/reboot
    
por tarabyte 17.12.2015 / 22:19

1 resposta

4

/ sbin / reboot é o binário real que realmente é um link simbólico para o daemon de parada

$ls -la /sbin/reboot
lrwxrwxrwx 1 root root 4 Apr  6  2015 /sbin/reboot -> halt

O binário de parada é codificado de tal forma que o comportamento difere quando chamado como halt ou quando chamado como reinicialização a partir da linha de comando.

/etc/init.d/reboot é na verdade um script invocado no runlevel 6 ao desligar, por:

/etc/init.d/rc6.d/K10reboot

Como você pode ver:

$ ls -la /etc/rc6.d/K10reboot
lrwxrwxrwx 1 root root 16 Nov 14 18:19 /etc/rc6.d/K10reboot -> ../init.d/reboot

O /etc/init.d/reboot real quando invocado com a opção stop, como acontece com o symlink Kxx mencionado acima, chama o binário de reinicialização como

reboot -d -f -i

De "man reboot"

-d     Don't write the wtmp record.
-i     Shut down all network interfaces just before halt or reboot.
-f     Force halt or reboot, don't call shutdown(8).

Quanto ao comentário sobre os scripts Kxxx e o nível de execução 6, eles fazem parte dos scripts de inicialização do Sys V.

Por favor, veja uma explicação aqui:

link

    
por 17.12.2015 / 22:28