Linux サービス一覧について

MySQL のようなデータベース関連サービスとか CentOS 7 専用のプロセスとか内容的には書き切れてない部分がありますが、レガシー系の定番のサービス・デーモンプロセスはある程度網羅してると思っていまして、今まで普通に問題なく参考にして使っています。

Heartbeat、Pacemaker、Nginx のようなサービスまで全部書こうとすると切りがないので、このままでもいい気がしますが。。足りない内容については順次追加していきたいと思います。

逆に何か追加してほしいサービスがあれば、いつでもコメントください。

VPS、AWS 等、サーバ構築時に不要なサービスを停止する際にオン・オフの判断材料としてご活用ください。

Linux サービス・デーモン一覧表

サービス役割・機能
abrt-ccpp自動バグ報告ツール (C/C++ 問題のアナライザー)
abrt-oops不具合を oops トラッカーへ送信するサービス
abrt-vmcoreカーネルパニックをアナライザーするサービス
abrt-xorgX.Org Server のクラッシュをアナライザーするサービス
abrtdソフトウェアのバグを自動検出し、報告するツール (Automatic Bug Reporting Tool Daemon)
acpidKVM : libvirt-guests からの ACPI (Advanced Configuration and Power Interface) による電源管理を受けるためのサービス
atdat コマンドサービス (コマンドの遅延実行)
autofsCD-ROM 等のリムーバブル・デバイスの自動マウント
auditdSELinux : システム監査ログサービス
avahi-daemon自動デバイス検出機能
blk-availabilityLVMのミラーリングを管理するサービス
bluetoothBluetooth に関する機能を提供するデーモン
cgconfigControl Group : 階層を作成して、サブシステムを階層に接続し、それらの階層内の cgroup を管理するためのサービス
cgredControl Group : タスクを cgroup に移動するサービス
chronyd時刻同期サービス (誤差を埋める) ※ 旧 ntpd
cpuspeedシステムのアイドル比率に応じて CPU の動作周波数を上下させる
crondスケジューリングサービス (定期的にジョブを実行するためのサービス)
cupsプリンタサービス
dbus-org.fedoraproject.FirewallD1Firewalld が プロセス間通信を行うためのメッセージバス
dbus-org.freedesktop.NetworkManagerNetworkManager が プロセス間通信を行うためのメッセージバス
dbus-org.freedesktop.nm-dispatchernm-dispatcher が プロセス間通信を行うためのメッセージバス
dnsmasq簡易的な DNS サーバ構築サービス
fail2ban不正の兆候が見られた場合に接続を拒否するサービス
firstbootOS インストール後に各種設定をステップ毎にまとめて実施できるようにしたツール(ようこそ画面)
firewalldゾーンに対応して動的に設定を行うファイアウォール
getty@起動時に仮想端末に自動ログインする
haldaemonP&P に対応したハードウェア情報収集サービス。 messagebus を動かす必要がある
hiddBluetooth の HID プロトコルに関するデーモン
htcachecleanApache : mod_disk_cache でディスクへキャッシュされたファイル、ディレクトリを削除するサービス
httpdApache : ウェブサービス
ipsecIPSec
iptablesIPv4 ファイヤーウォール
ip6tablesIPv6 ファイヤーウォール
irqbalanceマルチ CPU 環境での割り込み処理分散
kdumpkernel panic 等のエラー時にダンプを吐き出す
ktuneマシンのパフォーマンスを最適化するフレームワーク / サービス
libstoragemgmt外部ストレージアレイの管理プラグイン
libvirt-guestsKVM : ゲスト OS へ shutdown などを通知するデーモン
lvm2-monitorLVM2 監視サービス
mcelogdハードウェアエラー検出用のデーモン (ハードウェアエラーのログ記録)
mdmonitorソフトウェア RAID 監視サービス
messagebusアプリケーション間(サービス等) メッセージをやり取りする D-BUS デーモン (X Window 使用時には必要)
networkブート時にネットワーク・インターフェイスを設定する
NetworkManagerCentOS 6 から導入されたネットワークデバイスの管理サービス (ネットワークデバイスと接続を動的に管理する)
NetworkManager-dispatcherネットワーク接続時にサービスを起動し、切断時にサービスを停止する
netconsoleコンソールメッセージを syslog に転送するサービス
netfsNFS : マウント/アンマウントを実施するサービス
nfsNFS : NFS サーバを稼動させるサービス
nfslockNFS : ファイル・ロック機能を提供するサービス
ntpd時刻同期サービス (誤差を埋める)。 Network Time Protocol
ntpdate他のサービスが起動前に正確な時刻を必要とする場合に必要なサービス
numad/proc にアクセスし、システムリソースの監視を行う
portreserveTCP/IP の使用ポートを管理するデーモン
postfixメール転送エージェント (MTA)
psacctユーザーアカウントのシステム利用統計出力サービス
quota_nldクォータ値超過が発生した旨のカーネルメッセージを D-BUS に転送するサービス
rdiscネットワークルータディスカバリーデーモン
restorecondSELinux : ファイルやパスに対して関連付けを監視し、適切なラベルを付与するデーモン
rngdハードウェア TRNG (true ramdom number generator) と、カーネルの PRNG (pseudo- random number generator) の間のブリッジ : ハードウェアの機能で乱数を発生させる
rpcbindNFS : portmap。 RPC サービスをそのサービスがリッスンするポートにマッピングする
rpcgssdNFS : RPC においてセキュリティコンテキストを生成するデーモン
rpcidmapdNFS : RPC 名 (UID/GID) をマッピングするデーモン
rpcsvcgssdNFS : RPCSEC GSS (サーバーサイド)
rsyslogシステムのメッセージ (サーバーのログ) を記録するサービス
saslauthdsasl 認証デーモン
sendmailsendmail サービス
smartdハードディクスの S.M.A.R.T. による自己診断機能情報を取得するサービス (Self Monitoring and Reporting Technology)
snmpdSNMP : ネットワークに接続された通信機器の監視
snmptrapdSNMP : トラップ受信デーモン
spice-vdagentdデスクトップ仮想化デーモン
sshdSSH (Secure Shell) サービス
sssdLDAP 認証デーモン
svnserveSubversion サーバー
sysstatシステム情報取得ツール。 システムの状態を把握するために必要
systemd-readahead-collect起動時のディスク使用パターンを収集するサービス
systemd-readahead-dropsystemd-readahead-collect によって収集されたデータをシステム更新時に削除するサービス
systemd-readahead-replaysystemd-readahead-collect によって収集されたデータを中継するサービス
tunedシステムコンポーネントの使用監視 / 監視情報を基に動的にシステム設定をチューニングするサービス
udev-postハードウェア自動認識を行うデーモン
vsftpdvsftp サービス
wdaemonハードウェア自動認識を行うデーモン
winbindWindows NT ドメインのユーザーを Unix ユーザとして使えるクライアントサービス
wpa_supplicant無線 LAN クライアントとして WPA で暗号化する場合に必要なサービス
xinetd 関連サービスchargen-dgram
chargen-stream
daytime-dgram
daytime-stream
discard-dgram
discard-stream
echo-dgram
echo-stream
rsync
tcpmux-server
time-dgram
time-stream
ypbindNIS のクライアントをサーバにバインドするサービス

終わりに

CentOS 7 がリリースされてからずいぶん時間が経ちましたが、うちは CentOS 6系で仮想マシンを構築することが多いです。

その理由についてですが、大きく以下の三つがあります。

  • 既存のサービスが CentOS 6 で動いていて、そのままクローンをとって同類の新しい仮想マシンを素早く構築する
  • SE たちが CentOS 6 に慣れている
  • CentOS 4 / 5 のように かなり古いレガシー系 OS の更改は検討しているものの、いきなり CentOS 7 (Systemd) への乗せ替えはプロセス起動の仕組みとか設定ファイルの管理方法など 色々変わってしまうし、カーネルが上がり過ぎてしまうと既存のアプリが動かなくなる可能性もあるので、とりあえず比較的に安定的に動かせる CentOS 6 にしておいて、その先は、また検討しましょうという考え方 (泣き寝入り)

CentOS 7 を使った方が良いでしょうけど、CentOS 6 系を使っている人が多くて、やっぱり CentOS 6 がやりやすいですね。

サーバ構築・サービス展開のスピードを考えると慣れ親しんだ CentOS 6 でやった方が安定感もあって、圧倒的に速いですからね。

いずれ、CentOS 6 系もレガシー扱いされる時期が来るとセキュリティ問題とか色々出てくると思うので、そろそろ乗せ替えするなり CentOS 7 に慣れるようにしておかないと行けないと思います。

あとは、セキュリティ的には上位ルータでフィルタをかけているので、iptables、ip6tables は基本的に無効にして使っていますが、OS レベルでも最低限のファイアウォールはかけたほうが安心かもしれません。 (ルータ側を信じて、パフォーマンス重視であれば、かけないのも有りかもしれませんが)

また、kdump、sendmail、vsftp、nfs、xinetd のようなサービスは、すべて無効にしてから必要に応じてオンにして使ってる感じなので、環境に合わせてオン・オフしてください。

以上、Linux サービス一覧表 でした。