サーバーの起動時にサービスを開始する方法がわかりません。/etc/init.d
へのスクリプトの追加について尋ねられた他のいくつかの質問を読みましたが、コマンドラインで実行する必要があるのは1行だけです。
Sudo /etc/init.d/avahi-daemon restart
しかし、これにはいくつかの問題があります。最初に、どうやらSudoを使用する必要があるようで、次のようになります。
ngl-server-01:~% Sudo /etc/init.d/avahi-daemon start
Rather than invoking init scripts through /etc/init.d, use the service(8)
utility, e.g. service avahi-daemon start
Since the script you are attempting to invoke has been converted to an
Upstart job, you may also use the start(8) utility, e.g. start avahi-daemon
しかし、avahi-daemon start
だけを試してみると、次のようになります。
Too many arguments
どうしてこれなの?このサービスをどのように開始しますか?
更新
同様に、起動時にディスクをマウントするにはどうすればよいですか?
を使用してサービスを手動で開始できます
Sudo start avahi-daemon
使用しない
Sudo avahi-daemon start
必要に応じて、サービスが起動時に開始されます。 /etc/init.d/avahi-daemonを指すように/etc/rc2.d/へのシンボリックリンクの追加を確認する必要があります。プログラムを読む方がおそらく簡単ですsysv-rc-conf
またはupdate-rc.d
ディスクをマウントするには、/ etc/fstabを正しい詳細で編集する必要があります。マウントしようとしているデバイス(/ dev/sdb1など)、マウントポイント(/ mnt/dataなど)、およびファイルシステムを知っている必要があります。
Fstabのエントリは次のようになります。
/dev/sdb1 /mnt/data ext3 defaults 0 2
Avahi-daemonが/etc/init.dにあり、起動のたびに起動させたい場合は、次のコマンドを使用して起動スクリプトに追加します。
Sudo update-rc.d avahi-daemon defaults
しかし、システムによって追加された可能性があるため、必要なランレベルでavahi-daemonがまだリンクされていないことに驚いています。
起動時にディスクをマウントするには、Richardが提案したようにfstabに行を追加します。
Sudo update-rc.d avahi-daemon defaults
を実行した後でも、Ubuntu Server 12.04でシステムの起動時にavahi-daemonが起動するのに問題があり、AVAHI_DAEMON_DETECT_LOCAL
を1
から0
に変更することで解決しましたin /etc/default/avahi-daemon
( ここで提案されているとおり )。
この問題についての私の理解は、私のサーバーがネットワーキングの準備ができる前にavahi-daemonが開始したことです。 「ユニキャストDNSサーバー」を検出しようとしましたが、明らかに失敗し、その後終了しました。これがデフォルトの動作です。 AVAHI_DAEMON_DETECT_LOCAL
を0に変更することで、avahi-daemonに起動時にこれらのサーバーを検索しないように指示しました。
また、実際にはSudo update-rc.d avahi-daemon defaults
を実行する必要がないこともわかったので、ユーザーMatToufoutuは疑いの余地がありませんでした。