サービス管理したい(systemctl)
// サービス(ユニット)一覧
$ systemctl list-units --type service
// サービス詳細
$ systemctl status
$ systemctl status サービス名
// サービス状態
$ systemctl is-active|is-enabled|is-failed サービス名
// サービス制御
$ systemctl start|stop|restart|reload サービス名
systemctlはLinuxで使用するサービス管理コマンドです。
systemdデーモンを管理するコマンドで、
システム起動時にサービスを開始したり、
サービスの開始、停止、再起動、ステータスを確認したりできます。
また、システム全体のシャットダウンや再起動もできます。
注釈
少し古めのLinuxではserviceコマンドが使用できます。
/etc/init.d/に置かれたinitスクリプトを使って、
サービスの起動、停止、再起動、ステータスの確認ができます。
systemctlとserviceで引数の順番が異なります。
$ service サービス名 status
現在は、多くのディストリビューションでsystemdが採用されるようになっていてsystemctlの使用が推奨されています。
serviceコマンドがsystemctlのラッパーになっている場合もあるみたいです。
Apacheしたい(httpd)
$ systemctl status httpd
$ systemctl cat httpd
$ systemctl start|stop|restart|reload httpd
// ログ確認
$ journalctl -u httpd
// 設定ファイルの文法チェック
$ apachectl configtest
Syntax OK
RHEL系はhttpd、
Debian系はapache2というサービス名で
Apacheサーバーを制御できます。
注釈
Apacheには本体の実行ファイル(httpd / apache)と、専用の管理スクリプト(apachectl)も存在します。
サービス制御にはsystemctlで十分ですが、
個別の制御にはapachectlなどを使うことができることを覚えておくとよいです。
たとえば、上記サンプルにある設定ファイルの文法チェックはapachectlのサブコマンドです。
SSHしたい(sshd)
$ systemctl status sshd
$ systemctl restart sshd
sshdはOpenSSHのサーバー側のデーモンです。
サーバー側のsshdが起動していないと、SSH接続ができません。
// 設定ファイルの文法チェック
$ sshd -t
// 設定を確認
$ sshd -T
$ sshd -T | grep passwordauthentication