再起動を実装する2つの方法は何ですか?

再起動を実装する2つの方法は何ですか?

私のLinuxシステムに2つの再起動実装があるように見えるのはなぜですか?

# find . -name "reboot"
./etc/init.d/reboot
./sbin/reboot

ベストアンサー1

/sbin/reboot は実際のバイナリで、実際にはデーモンを停止するシンボリックリンクです。

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

一時停止バイナリは、コマンドラインから一時停止または再開を呼び出すときに動作が異なる方法でコーディングされます。

/etc/init.d/reboot は、実際には次のように終了するとランレベル 6 で呼び出されるスクリプトです。

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

ご覧のとおり:

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

停止オプションで呼び出されると、上記のKxxシンボリックリンクなどの実際の/etc/init.d/rebootは、次のように再起動バイナリを呼び出します。

reboot -d -f -i

<もっとマンリブート>の中から

-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).

Kxxx スクリプトとランレベル 6 に関する注意事項は Sys V init スクリプトの一部です。

ここの説明をご覧ください。

http://www.linuxvoodoo.com/resources/howtos/sysvinit

おすすめ記事