[Ubuntu] systemd とそのツール

システムとは何ですか

systemd は、Linux システムのブート プロセスとシステム サービスを管理するための init システムです。これは、最新の Linux ディストリビューションで広く使用されている init システムであり、オペレーティング システムのさまざまなコンポーネントの起動と管理を担当します。

systemd は、システムの起動速度を向上させ、リソース管理を最適化し、より強力なサービス管理機能を提供するように設計されています。これには、並列起動、サービスのオンデマンド起動、ソケットベースのアクティブ化、ロギングとトレースの改善など、いくつかの新しい概念と機能が導入されています。

systemd の主な機能とコンポーネントをいくつか示します。

  1. 単位: systemd は単位を使用してシステム コンポーネントとサービスを表します。各ユニットは、サービス、ソケット、デバイスなどの特定のシステム リソースまたは機能を表します。各ユニットには、そのプロパティと依存関係を定義する対応する構成ファイルがあります。

  2. systemd スイート: systemd には、システムの管理と操作のためのツールとサービスのセットが含まれています。重要なコンポーネントには、systemd コマンドライン ツール (systemctl、journalctl など)、systemd ジャーナリング システム (ジャーナル)、systemd ネットワーク管理 (systemd-networkd) などが含まれます。

  3. 並列起動: systemd は並列起動を実装しています。これにより、複数のシステム サービスを同時に起動でき、システムの起動速度が向上します。

  4. 依存関係と順序制御: ユニット間の依存関係を通じて、systemd は、サービスが依存する他のサービスの開始後にサービスが開始されることを保証できます。これにより、起動順序とサービス間の関連付けをより正確に制御できるようになります。

  5. ソケットのアクティベーション: systemd はソケットベースのアクティベーションをサポートしており、サービスを継続的に実行するのではなく、必要に応じてリクエスターが動的に開始できるようにします。

  6. ログとトレース: systemd は、journalctl ツールを使用してシステム ログを記録および管理します。強力なログ フィルタリングとクエリ機能をサポートしており、システム ログの表示と分析が容易になります。

systemd の導入により、従来の SysV init システムが改善され、より高速で、より柔軟で、より信頼性の高いシステム初期化機能とサービス管理機能が提供されます。これは、Ubuntu、Fedora、CentOS などの多くの主流 Linux ディストリビューションのデフォルトの init システムになっています。

systemd関連ツール

以下は、systemd 関連ツールの簡単な説明と使用法です。

  1. systemd: systemd はシステムを初期化するためのメイン コマンドで、システム サービス、管理ユニットなどの開始と管理に使用されます。コマンドを使用して、システム サービスを開始、停止、再起動、有効化、無効化、および管理できますsystemctl

  2. systemd-analyze: シ​​ステムの起動時間とパフォーマンスを分析するためのツール。systemd-analyze blameこのコマンドを使用して、各ユニットの起動時間を表示したり、systemd-analyze plot起動パフォーマンス グラフを生成したりできます。

  3. systemd-ask-password: ユーザーと対話してパスワードまたはその他の認証情報を取得するためのツール。systemd-ask-passwordこのコマンドを使用してパスワードまたはその他の認証情報を要求し、その結果を他のコマンドまたはサービスに渡すことができます。

  4. systemd-cat: 標準入力またはファイルの内容を systemd ジャーナルに出力するコマンド。メッセージは、リダイレクトまたはパイプを使用してジャーナルに送信できますecho "Hello" | systemd-cat

  5. systemd-cgls: cgroups 階層を表示するコマンド。systemd-cglsこのコマンドを使用すると、現在のシステム内の cgroup とその階層関係を一覧表示できます。

  6. systemd-cgtop: 実行中の cgroup のプロセスとリソースの使用状況を表示するコマンド。このコマンドを使用してsystemd-cgtop、cgroup 内のプロセス リソースをリアルタイムで監視します。

  7. systemd-delta: ファイルとユニット間の差異を比較して表示するツール。systemd-deltaこのコマンドを使用して、システム構成ファイルとユニットファイルへの変更を比較できます。

  8. systemd-tty-ask-password-agent: tty 端末でユーザーにパスワードを要求するためのシステム パスワード エージェント。systemd-ask-passwordパスワード入力を安全に処理するためにコマンドとともに使用されます

  9. systemd-detect-virt: 現在のシステムが仮想化環境で実行されているかどうかを検出するツール。このコマンドを使用すると、systemd-detect-virtシステムが仮想マシンまたはコンテナーで実行されているかどうかを検出できます。

  10. systemd-escape: systemd 構成ファイルで使用する文字列をエスケープするために使用されます。コマンドを使用すると、systemd-escape特殊文字を設定ファイルでの使用に適した形式に変換できます。

  11. systemd-hwdb: systemd のハードウェア データベースを管理およびクエリするためのハードウェア データベース ツール。これは、デバイスとドライバーの照合と識別に使用されます。

  12. systemd-id128: 128 ビットの一意識別子 (UUID) を生成または操作するためのツール。

  13. systemd-inhibit: システムの動作を防止または遅延させるツール。systemd-inhibitこのコマンドを使用して、休止状態、シャットダウン、再起動などを防ぐことができます。

  14. systemd-machine-id-setup: マシン ID を生成または設定するためのツール。systemd-machine-id-setupこのコマンドを使用して、新しいマシン ID を生成したり、既存のマシン ID を設定したりできます。

  15. systemd-mount: ファイルシステムをマウントおよびアンマウントするためのツール。systemd-mountこのコマンドを使用して、ファイルシステムをマウントまたはアンマウントできますsystemd-mount /dev/sdb1 /mnt

  16. systemd-notify: systemd にステータス通知を送信するツール。systemd-notifyコマンドを使用して、カスタム ステータスと通知をsystemd に送信できます。

  17. systemd-path: システム ファイル パスをクエリするためのツール。systemd-pathこのコマンドを使用して、構成ファイル パス、ユニット ファイル パスなどのさまざまなシステム パスを取得できます。

  18. systemd-resolve: システム DNS 解決およびドメイン名解決のためのツール。systemd-resolveコマンドを使用して、DNS 情報のクエリ、ドメイン名の解決などを行うことができます。

  19. systemd-run: 新しいサービス ユニット ファイルを作成せずにアドホック タスクを実行するコマンド。systemd-runコマンドを使用すると、新しいサービス ユニット ファイルを作成せずにアドホック タスクを実行できますsystemd-run --unit=my-service /usr/bin/my-command

  20. systemd-socket-activate: 必要に応じてソケットを動的にアクティブ化するツール。systemd-socket-activateコマンドを使用してソケットユニットを起動および管理できます。

  21. systemd-stdio-bridge: 標準入出力間でデータを転送するためのツール。あるプログラムの標準出力から別のプログラムの標準入力にデータを渡すことができます。

  22. systemd-sysusers: システム ユーザーとグループを管理および作成するためのツール。systemd-sysusersコマンドを使用して、システム ユーザーとグループを作成、変更、削除できます。

  23. systemd-tmpfiles: 一時ファイルとディレクトリを管理するためのツール。systemd-tmpfilesこのコマンドを使用すると、一時ファイルとディレクトリを作成、クリーンアップ、および保守できます。

  24. systemd-umount: ファイルシステムをアンマウントするためのツール。systemd-umountコマンドを使用して、マウントされたファイルシステムをアンマウントできますsystemd-umount /mnt

これらのツールはすべて、システムの管理と運用に関して異なる機能と目的を持っています。対応するコマンドと適切なパラメーターを使用してターミナルでこれらのツールを起動し、各ツールの特定の使用法に必要なパラメーターとオプションを提供できます。詳細な情報や使用例については、個々のツールのマニュアル ページまたはコマンド ヘルプ ( や など) を使用できman systemd-analyzeますsystemd-ask-password --help

環境

OS: unbuntu 20.04

おすすめ

転載: blog.csdn.net/m0_47406832/article/details/130337176