私はUbuntu 12.04.3 LTSを実行しており、Samba、DHCPサーバーなどのいくつかのサービスがインストールされています。
「halt now」、「telinit 6」などのコマンドを実行すると、次の警告が表示されます。
Since the script you are attempting to invoke has been converted
to an Upstart job, you may also use the...
影響を受けたサービスが2回停止/開始しようとしていることがわかります。一度はUpstart操作を介して、再びinit.dスクリプトの/etc/rcN.dフォルダのS/Kシンボリックリンクを介して。おそらく、/etc/rcN.dフォルダからシンボリックリンクを簡単に削除できます。
プロセス例:
- シェルで「今すぐ停止」を実行します。
- UpstartはSambaを停止します(SambaにUpstart confファイルがあるため)。
- SysVはSambaを再び停止しようとします(まだ/etc/rc0.d/K20smbdシンボリックリンクがあるため)。
不要に見えて醜い警告が表示されるため、手順3を理解していないか望ましくありません。
複数のデーモンがUpstartスクリプトとinit.dスクリプトへのシンボリックリンクを同時に持つのはなぜですか?各/etc/rcN.dフォルダに重複したシンボリックリンクを手動でクリーンアップする必要があります。これは正しい方法ですか?
ベストアンサー1
init
Ubuntuには、実行するたびにそのupstartを呼び出す互換性リンクがあります。
たとえば、電話をかけてsudo /etc/init.d/apache start
upstart-jobに接続すると、使用する必要がある有用な情報メッセージが表示され、それsudo services apache start
自体でコマンドが実行されます。
ls -l /etc/init.d/network-manager
lrwxrwxrwx 1 root root 21 Sep 18 14:02 /etc/init.d/network-manager -> /lib/init/upstart-job
cat /lib/init/upstart-job
#!/bin/sh -e
# upstart-job
#
# Symlink target for initscripts that have been converted to Upstart.
{ lots of ASCII awesomeness }