以前構築したMinecraftサーバーをJail起動時に自動起動させたいと考えたのですが、ちょっと苦労したのでメモしておきます。
rc.localが動かない
BSD系であれば、rc.localを使うことを考えると思いますが、Jail環境ではrc.localが使えないようです、理由は深く調べていませんがあくまでrc.dはサーバーが起動時に使うスクリプトなのかもしれません。
rc.d内にスクリプトを作成する
結論としてはrc.d内にスクリプトを作成し、それをrc.confより起動させるという方法が必要でした。作成したものは以下の通り
#起動用スクリプト root@mine:/ # cat /etc/rc.d/mine !/bin/sh . /etc/rc.subr name=mine rcvar=${name}_enable start_cmd="${name}_start" stop_cmd=":" load_rc_config $name mine_start() { nohup /root/niniharu/boot.sh & nohup /root/ore/boot.sh & } run_rc_command "$1" #動作確認 root@mine:/ # service mine start #/etc/rc.confに以下を追加 mine_enable="YES"
#boot.shは以下 !/bin/sh cd /root/ore/ /usr/local/bin/java -Xmx1024M -Xms1024M -jar server.jar nogui