web-dev-qa-db-ja.com

Ubuntu 12 64ビットでinitctlがinitスクリプトを表示しない

LSB形式でinitスクリプトを作成し、/ etc/init.dディレクトリにコピーしました。サービスを手動で開始、停止、ステータス設定でき、すべて正常に機能します。次に、以下を実行して、サービスをランレベルで自動停止/開始するように設定します。

update-rc.d service defaults

次のような警告が表示されます。

update-rc.d:警告:xxx start runlevel arguments(none)がlsb default-Start値(3 4 5)と一致しません。

initctl list」にサービスが表示されません。このサービスを登録または適切に表示するために必要な手順はありますか?(RedHatでは「chkconfig --add xxx」を知っています).

2
TSG

initctlは、Uubuntuの新興メカニズムの一部です。 initctl listは、upstart-jobsのステータスのみを表示します。あなたのスクリプトは確かにSysV initスクリプトです。

SysV initスクリプトのステータスをリストするには、次のコマンドを使用します。

service --status-all

あなたのサービスがそこにリストされているはずです。


/etc/rcNフォルダーにリンクを作成するには、次のコマンドを使用します。

update-rc.d your_init_script defaults

update-rc.dのマンページから:

デフォルトが使用される場合、update-rc.dはランレベル2345でサービスを開始し、ランレベル016でサービスを停止するリンクを作成します。

1
chaos