Debian

如何找出 /etc/init.d 腳本在 Debian 上的載入順序?

  • December 13, 2016

我想在另一個之前執行一個 sysvinit 腳本並弄清楚如何做到這一點。

為了確保這實際上是按照我喜歡的順序發生的,我想查看一個列表,按照發生的順序。

我已經找到sudo insserv --showall了,但無法確定它的頭部或尾部,因為它多次列出了 init 腳本。

如何找出 /etc/init.d 腳本在 Debian 上的載入順序?

/etc/init.d/ 目錄中有一些文件:

$ ls -al /etc/init.d/ | grep -i depend
-rw-r--r--   1 root root  2739 Feb 17 05:20 .depend.boot
-rw-r--r--   1 root root  2221 Feb 17 05:20 .depend.start
-rw-r--r--   1 root root  1855 Feb 17 05:20 .depend.stop

每當你執行update-rc.d文件都會改變。.depend.boot文件用於S級別, 用於.depend.start級別2 3 4 5.depend.stop.0 1 6

就我而言,我有以下順序.depend.start

TARGETS = killprocs motd nvidia-kernel nfs-common rsyslog privoxy virtualbox
linuxlogo acpi-fakekey binfmt-support fancontrol openvpn hddtemp cgconfig 
dropbox-container dbus dnscrypt-proxy pulseaudio atd cryptmount exim4 
qbittorrent-nox ddclient acpi-support smartmontools ssh ntp loadcpufreq acpid 
cron rsync cgrulesengd cpufrequtils bootlogs bootchart-done single rmnologin 
rc.local stop-bootlogd

您還可以看到為什麼訂單以您在上面看到的方式呈現。下一行如下所示:

cgrulesengd: rsyslog cgconfig

這意味著cgrulesengd需要rsyslog cgconfig提前開始。

引用自:https://unix.stackexchange.com/questions/115495