私が次のことをしたら:
echo "foobar" > /etc/init.d/foobar
chmod 744 /etc/init.d/foobar
ln -s /etc/init.d/foobar /etc/rc.d/rc3.d/S99foobar
SLES 11で起動中の「foobar」コマンドはいつ開始されますか?最後のS99のように?それとも、一般的な起動スクリプト形式が必要ですか?
ベストアンサー1
SysVinitの起動/停止スクリプトは、デフォルトの「C」(別名POSIX)ロケールソート順に従って英数字順で始まるため、スクリプトのS99foobar
後または前に開始されます。S99[a-e]*
S99[g-z]*
スクリプトは/etc/init.d/rc
基本スクリプトによって開始されます。関連コードは基本的に次のようになります。
for link in /etc/rc.d/rc3.d/S[0-9][0-9]*; do
test -x "$link" || continue
# omitted optimization: if previous runlevel already started this service, don't start it again
# omitted logic: if $DO_CONFIRM is set, prompt for each service
# omitted logging
$link start; status=$?
# omitted status reporting/logging logic based on value of $status
done