2016年1月4日月曜日

centos7 rc.localからだと起動スクリプトがうごかない。。。

以前svnserveを導入した際、rc.localにsvnserveの起動スクリプトを記述して、
サーバーの起動時にsvnserveが自動的に立ち上がるように設定したのですが、
単にこれだけだと、自動起動してくれないことが分かりました。

実は、centos7から従来のrc.localにとる起動スクリプト管理ではなく、systemedにて
起動スクリプトの管理を行うようになったようです。

…てか、本にもそう書いてあった。全然読んでないじゃん。orz


起動スクリプトの管理方法は、他サイト様にていろいろ紹介されてありますが、
方法は2つ。
①rc.localを従来通り使うか
②systemedに乗り換えるか

です。

①に関しては、単にrc.localに実行権限を与えてあげるだけでOK。
実際やってみて、OKでした。

chmod u+x /etc/rc.d/rc.local

参考サイト:http://kantaro-cgi.com/blog/etc-server/cant_run_rclocal_centos7.html

②に関しては、
 ・専用シェルスクリプトを用意し、
 ・「/etc/systemd/systemの下に、拡張子が .serviceのテキストファイルを作る。」
   →参考サイト:tire.retire ガジェット好きおじさんの日記 より引用
 ・systemedに登録してあげる。

参考サイト:http://tire-retire.blogspot.jp/2014/12/centos7rclocal.html
参考サイト:http://motw.mods.jp/shellscript/tutorial.html

僕は①を試したのち、今後のことも考えて、systemedの対応を進めてみました。
シェルスクリプトは書いたことがありませんでしたが、初心者の自分にも難しくはなかったです。

ただ、現状まだうまく自動起動設定ができていない状態です。
systemedはサービスの起動順序をいろいろ指定できるのですが、依存関係にあるサービスが立ち上がる前にsvnserveの自動起動スクリプトが実行されているのではないか、と考えています。

今のところ、現状サーバー再起動時に再度立ち上げないといけないものは少ないので、
しばらく手動で対応しますが、頃合いをみて再挑戦したいところです。

0 件のコメント:

コメントを投稿