このページの2つのバージョン間の差分を表示します。
| 次のリビジョン | 前のリビジョン | ||
|
centos:systemctl [2020/05/28 14:43] y2sunlight 作成 |
centos:systemctl [2020/06/04 11:30] (現在) y2sunlight [systemctlのユースケース] |
||
|---|---|---|---|
| 行 4: | 行 4: | ||
| --- // | --- // | ||
| - | [[centos: | + | [[centos: |
| - | systemd は RHEL7CentOS7で使われているサービスを管理するデーモンです。'' | + | systemd は RHEL7/ |
| + | また、systemctl に触れる機会は既存サービスのメンテナンスの時だけに限りません。自作のWebAPIを公開する時などもサービスを自作しなければならいので使っています。兎に角、CentOS7 になってから systemctl はよく使うようになりました。 | ||
| + | 関連記事 | ||
| - | journald は CentOS7から標準的に提供されるログ管理のサービスです。正式名称は、systemd-journald.service です。RHEL7/ | + | * [[centos: |
| - | + | * [[centos: | |
| - | * systemdサービスの標準出力/標準エラー出力 | + | * systemctl --- サービスの操作 |
| - | * syslogに出力したメッセージ | + | * [[centos: |
| - | * サービスの標準出力/標準エラー出力 など | + | * [[centos: |
| - | + | ||
| - | これらのログを表示するには journalctl コマンドが利用されます。サーバーで発生する障害の調査にはログの存在は欠かせません。以下では実際によく使う journalctl | + | |
| リンク | リンク | ||
| - | * [[https:// | + | * [[https:// |
| - | * [[https://qiita.com/thaim/items/5d0cc595fce4ac0858e4|journal ログをきちんと記録・保存する]] -- journalログの永続化 | + | * [[https://access.redhat.com/documentation/ja-jp/red_hat_enterprise_linux/ |
| ---- | ---- | ||
| 行 26: | 行 26: | ||
| ===== systemdの基礎知識 ===== | ===== systemdの基礎知識 ===== | ||
| - | OSインストール直後は、Journalは、OSをリブートすると消えてしまいます。ログを蓄積したい場合は、ログの永続化が必要になります。以下はその簡単な設定例です。詳しくは上記のリンクを参照して下さい。 | + | === Unit === |
| + | サービスは | ||
| + | * / | ||
| + | * / | ||
| - | === ログの永続化手順(手動) === | + | ''/ |
| - | < | + | |
| - | cd /var/log | + | |
| - | mkdir journal | + | |
| - | systemctl restart | + | |
| - | </code> | + | |
| - | この設定は ''/ | + | \\ |
| - | <code ini journald.conf> | + | ===== systemctlのユースケース ===== |
| - | [Journal] | + | |
| - | ... | + | |
| - | Storage=persistent | + | |
| - | ... | + | |
| - | </ | + | |
| - | === ログのサイズ | + | === サービスの操作 |
| - | Journalのサイズは、保存用ディレクトリーの全容量に対して 10% 以上になるか、該当ディレクトリーのファイルシステムの空き容量が 15% 以下になると、古いエントリーから順に削除されていきます。明示的にサイズを指定したい場合は、'' | + | 形式: |
| - | <code ini journald.conf> | + | * COMMAND --- コマンド名(以下にケース毎に記載) |
| - | [Journal] | + | * UNIT--- ユニット名(以下の例では '' |
| - | ... | + | |
| - | SystemMaxUse=128M | + | |
| - | ... | + | |
| - | </ | + | |
| - | + | ||
| - | \\ | + | |
| - | + | ||
| - | ===== systemctlのユースケース | + | |
| - | {{fa> | + | {{fa> |
| < | < | ||
| - | journalctl | + | systemctl status sshd |
| - | journalctl | + | systemctl is-enabled sshd |
| </ | </ | ||
| - | {{fa> | + | {{fa> |
| < | < | ||
| - | journalctl -e # 最新のログ | + | systemctl start sshd |
| - | journalctl -f # Tailライク | + | systemctl stop sshd # 終了 |
| + | systemctl restart sshd # 再起動 | ||
| </ | </ | ||
| - | {{fa> | + | {{fa> |
| < | < | ||
| - | journalctl -k # カーネルログ | + | systemctl enable sshd # 有効化 |
| - | journalctl -b # ブートログ | + | systemctl disable sshd |
| </ | </ | ||
| - | {{fa> | + | === サービス一覧 === |
| + | |||
| + | {{fa> | ||
| < | < | ||
| - | journalctl | + | systemctl list-units --type=service |
| - | journalctl | + | |
| </ | </ | ||
| - | {{fa> | + | {{fa> |
| < | < | ||
| - | journalctl | + | systemctl list-unit-files |
| - | journalctl | + | |
| </ | </ | ||
| - | {{fa> | + | === その他 === |
| + | |||
| + | {{fa> | ||
| < | < | ||
| - | journalctl | + | systemctl daemon-reload |
| - | journalctl --until=yesterday | + | |
| - | journalctl --since=" | + | |
| </ | </ | ||
| + | |||
| \\ | \\ | ||