![Arch Linux に独自のデーモンを追加するにはどうすればいいですか? (BSD スタイルの init)](https://rvso.com/image/23959/Arch%20Linux%20%E3%81%AB%E7%8B%AC%E8%87%AA%E3%81%AE%E3%83%87%E3%83%BC%E3%83%A2%E3%83%B3%E3%82%92%E8%BF%BD%E5%8A%A0%E3%81%99%E3%82%8B%E3%81%AB%E3%81%AF%E3%81%A9%E3%81%86%E3%81%99%E3%82%8C%E3%81%B0%E3%81%84%E3%81%84%E3%81%A7%E3%81%99%E3%81%8B%3F%20(BSD%20%E3%82%B9%E3%82%BF%E3%82%A4%E3%83%AB%E3%81%AE%20init).png)
の起動/停止などのラッパー bash スクリプトへのシンボリックリンクを作成し/etc/rc.d
、それをDAEMONS=()
rc.conf に追加しましたが、それが指すプロセスは起動時に開始されず、 の出力にも表示されません$ rc.d list
。グーグルで調べると、 についての言及を見ましたが、そのコマンドは Arch Linux では使用できないようです。デフォルトと同じように使用できるupdate-rc.d
システム全体のデーモンを追加する正しい方法 (つまり、 を使用せずに) は何ですか?rc.local
答え1
update-rc.d は Arch で何をするのでしょうか? これは Debian ベースのディストリビューション用です。
サンプルスクリプトを/etc/rc.d/XXに入れて実行可能にし、/etc/rc.confを編集して、サービスの名前をDAEMONS配列にプッシュします。
#!/bin/sh
. /etc/rc.conf
. /etc/rc.d/functions
case "$1" in
stop)
stat_busy "Stopping XX"
command_to_exec && rm_daemon XX && stat_done || stat_fail
;;
start)
stat_busy "Starting XXX"
command_to_exec && add_daemon XX && stat_done || stat_fail
;;
esac
exit 0
リストにデーモンが表示されない場合は、おそらくadd_daemon
関数を見逃している可能性があります