====== systemctlコマンド ====== Version CentOS 7.2 --- //[[http://www.y2sunlight.com|y2sunlight]] 2020-05-28// [[centos:top|CentOS パッケージ管理に戻る]] systemd は RHEL7/CentOS7で使われているサービスを管理するデーモンです。''ps -aux'' で見ると ''PID=1'' に君臨しています。そしてそれをコントロールするためのコマンドがsystemctlです。systemctl コマンドは、サービスの障害調査や再起動時に良く使います。以下では実際によく使う systemctl の利用例を紹介します。 また、systemctl に触れる機会は既存サービスのメンテナンスの時だけに限りません。自作のWebAPIを公開する時などもサービスを自作しなければならいので使っています。兎に角、CentOS7 になってから systemctl はよく使うようになりました。 関連記事 * [[centos:package|CentOS パッケージ管理の基礎知識]] * [[centos:yum|yum --- パッケージ管理システム]] * systemctl --- サービスの操作 * [[centos:journalctl|journalctl --- ログの操作]] * [[centos:firewall-cmd|firewall-cmd --- ファイアウォールの操作]] リンク * [[https://access.redhat.com/documentation/ja-jp/red_hat_enterprise_linux/7/html/system_administrators_guide/chap-managing_services_with_systemd|Red Hat Customer Portal - systemd]] --- systemd の概要 * [[https://access.redhat.com/documentation/ja-jp/red_hat_enterprise_linux/7/html/system_administrators_guide/sect-managing_services_with_systemd-services|Red Hat Customer Portal - systemctl]] --- システムサービスの管理 ---- ===== systemdの基礎知識 ===== === Unit === サービスは Unit という単位で作られ、以下のディレクトリーに保存されています。この Unit を定義しているのが unitファイルです。 * /usr/lib/systemd/system/ --- インストール済みのRPMパッケージで配布されたunitファイル * /etc/systemd/system/ --- サービスの上書き 及び 拡張向けに追加されたunitファイル ''/usr/lib/systemd/system/'' 下のunitファイルの修正には注意しましょう。自作のUnit を入れる場所は ''/etc/systemd/system/'' です。 \\ ===== systemctlのユースケース ===== === サービスの操作 === 形式: ''systemctl COMMAND UNIT[.service]'' * COMMAND --- コマンド名(以下にケース毎に記載) * UNIT--- ユニット名(以下の例では ''sshd'') {{fa>question-circle}}サービスの状態確認 systemctl status sshd # 状態確認 systemctl is-enabled sshd # 有効化確認 {{fa>question-circle}}サービスの起動/終了/再起動 systemctl start sshd # 起動 systemctl stop sshd # 終了 systemctl restart sshd # 再起動 {{fa>question-circle}}自動起動の有効化/無効化 systemctl enable sshd # 有効化 systemctl disable sshd # 無効化 === サービス一覧 === {{fa>question-circle}}稼働中のサービス一覧 systemctl list-units --type=service {{fa>question-circle}}定義されているサービス一覧 systemctl list-unit-files --type=service # static/enabled/disabledも見れます === その他 === {{fa>question-circle}}サービス設定ファイル(*.service)を変更した時 systemctl daemon-reload # 設定ファイルの再読込 \\