
私は LSB 形式の init スクリプトを作成し、それを /etc/init.d ディレクトリにコピーしました。サービスを手動で開始、停止、ステータスすることができ、すべて正常に動作します。次に、実行レベルでサービスを自動的に停止/開始するように設定してみます。
update-rc.d service defaults
次のような警告が表示されます:
update-rc.d: 警告: xxx 開始ランレベル引数 (なし) が lsb のデフォルトの開始値 (3 4 5) と一致しません。
そして「initctl list」ではサービスが表示されません。このサービスを正しく登録または表示するために必要な手順はありますか? (RedHat では「chkconfig --add xxx」であることは知っていますが)、Ubuntu についてはよく知りません。
答え1
initctl
Uubuntu の upstart メカニズムの一部です。upstart initctl list
-jobs のステータスのみを表示します。スクリプトは確かに SysV init スクリプトです。
SysV init スクリプトのステータスを一覧表示するには、次のコマンドを使用します。
service --status-all
あなたのサービスがそこにリストされているはずです。
フォルダー内にリンクを作成するには、/etc/rcN
次のコマンドを使用します。
update-rc.d your_init_script defaults
のマニュアルページからupdate-rc.d
:
defaults が使用される場合、update-rc.d は、ランレベル 2345 でサービスを開始し、ランレベル 016 でサービスを停止するためのリンクを作成します。