サービス一覧を取得する目的
稼動しているUbuntuサーバのサービス一覧を取得して、不要なものを停止・削除することでサーバの負荷を削減すると共に無駄なセキュリティホールを発生させないようにしたいと思います。
RedHat系だと「chkconfig」というコマンドがあって、軌道レベルごとに自動でのサービス起動や起動中のサービスの停止、一覧の表示を簡単に行うことができます。以前Vine Linuxを使用していたときはとてもお世話になったコマンドなんですが、Ubuntuにはそれがありません。
ということで代わりになりそうなコマンドを探してみました。
sysv-rc-confコマンド
インストール
どうやらchkconfigと似たようなコマンドがあるようなので早速インストールしてみます。
sudo apt-get update
sudo apt-get install sysv-rc-conf
※ちなみに自分の環境ではデフォルトで入っているようでした
それでは早速使ってみましょう。
対話形式で設定が可能
コマンドラインから
sysv-rc-conf
と入力するとこのように表示されます。
矢印キーの上下でサービスを選択、左右でランレベルを選択してスペースキーでon/offを切り替えができます。画面を終了するのは「q」を叩くだけです。
一覧表示する
ちなみにページング及びon/offなしで一覧表示するだけなら
sysv-rc-conf -list
と入力すると「chkconfig --list」と似たような感じで表示することも可能です。
サービス名を指定して起動を制御
具体的なサービスを指定して自動起動のon/offを切り替えるのであれば
sysv-rc-conf サービス名 on/off
で行います。もちろん「on」で自動で起動する、「off」で起動しないの設定となります。ちなみにランレベルごとの設定を行うなら
sysv-rc-conf -level 234 サービス名 on/off
となります。この場合、レベル2、3、4の時の起動をon/off設定します。
一覧を取得した後は・・・
導入されているサービスの要/不要を判断するためには、個々のサービスの内容を把握しないことには始まりません。
自分がインストール・設定したものであればまだわかりますが、OSのインストール時から自動で動いているもののうち自分にとっては不要なサービスがあるかもしれません。
かといってすぐに調べることもこんなんなので、少しずつ調べおいてある程度纏めることができたら改めて記事にしたいと思います。