Linux Mint - Upstart 系サービスの自動起動制御!
Updated:
Linux Mint 13 Maya で SysV の initd で起動するサービスは [システム管理] - [サービスの管理] で管理できますが、Upstart で管理するようなサービスは同様な管理ができません。
MySQL がその例です。 インストール後、自動起動するように設定されているのですが、Upstart で管理されているので、[サービスの管理] では管理できません。 サーバ用途で常に MySQL を使用するのなら問題ありませんが、普段使用しない環境では無駄に起動してしまいます。
ちなみに、Upstart とは、イベント駆動型の init デーモンの代わりとなるものです。
作業記録
0. 前提条件
- Linux Mint 13 Maya (64bit) での作業を想定。 Ubuntu や Debian でも同様だと思われる。(未確認)
- MySQL サービスで動作確認した。
1. 設定方法
Upstart のサービスは “/etc/init” ディレクトリ配下に設定ファイルが置かれているので、該当の conf ファイルを編集する。
今回の MySQL の場合、”/etc/init/mysql.conf” ファイルを編集する。
start on
の部分をコメントアウトすればよい。
# MySQL Service
description "MySQL Server"
author "Mario Limonciello <superm1@ubuntu.com>"
# start on runlevel [2345] # <- コメントアウト
stop on starting rc RUNLEVEL=[016]
respawn
respawn limit 2 5
====< 以下省略 >====
:
2. 動作確認
マシンを再起動してみて、MySQL が自動起動しなくなっているか確認する。 MySQL を起動したい時は以下のコマンドで起動できる。
$ sudo service start mysql
MySQL を停止したい時は以下のコマンドで停止できる。
$ sudo service stop mysql
その他
[システム管理] - [サービスの管理] と同様の処理をするコマンドに sysv-rc-conf というものもある。 RedHat 系ディストリビューションの chkconfig にあたるコマンドだ。 Upstart 系サービスでなく SysV 系サービスはこのコマンドを使用するという方法もある。
・インストール方法
$ sudo apt-get install sysv-rc-conf
・Apache2 自動起動 ON にする場合 (ランレベル2,3,4,5 が on になる)
$ sudo sysv-rc-conf apache2 on
$ sysv-rc-conf --list | grep apache2
apache2 0:off 1:off 2:on 3:on 4:on 5:on 6:off
・Apache2 自動起動 OFF にする場合 (ランレベル2,3,4,5 が off になる)
$ sudo sysv-rc-conf apache2 off
$ sysv-rc-conf --list | grep apache2
apache2 0:off 1:off 2:off 3:off 4:off 5:off 6:off
これで、自動起動しない設定ができました。
それにしても、SysV 系と Upstart 系と混在してるのも紛らわしいですね。
以上。
Comments