|
追記:RHEL7とCentOS 7がリリースされてしばらく経ちましたので、少し時間をかけて調べてみました。6シリーズや5シリーズと比べていくつか大きな変更点があり、多くのユーザーにとって馴染みのない点もあるかもしれません。以下に、主な変更点を簡単にご紹介します。 1. CentOS は、サービスの管理に sysvinit ではなく systemd を使用します。 1. systemd サービス管理プログラム: systemctlは、前述のサービスとchkconfigの機能を統合した主要なツールです。これにより、サービスを永続的に有効化/無効化することも、現在のセッション内でのみ有効化/無効化することもできます。 systemctl コマンドは、画像に示すように、実行中のサービスのステータスを一覧表示できます。 systemd-cgls は実行中のプロセスをツリー構造で一覧表示し、コントロールグループの内容を再帰的に表示できます。(図を参照) 2. サービスを開始/停止、有効化/無効化するにはどうすればよいですか? サービスを開始します: サービスを停止するには: サービスを再起動する: サービスのステータスを表示するには: システム起動時にサービスを有効にする: システム起動時にサービスを無効にするには: 起動時にサービスが開始されるかどうかを確認するには: 実行中のサービスのリストを表示するには: 説明:サービスを有効にするには、現在のランレベルの設定ファイルディレクトリ `/etc/systemd/system/multi-user.target.wants/` 内の `/usr/lib/systemd/system` にある対応するサービス設定ファイルへのシンボリックリンクを作成します。サービスを無効化するには、このシンボリックリンクを削除します。以下の画像をご覧ください。 /usr/lib/systemd/system 内のファイルを確認したところ、構文が古いバージョンの /etc/init.d/ のシステム サービス スクリプトとはまったく異なります。 II. システムのランレベルを変更します。 1. systemdは、ランレベルにsysvinitよりも柔軟なターゲットを使用します。ランレベル3はmulti-user.targetを使用し、ランレベル5はgraphical.targetを使用します。runlevel3.targetとrunlevel5.targetは、それぞれmulti-user.targetとgraphical.targetを指すシンボリックリンクです。 次のコマンドを使用して、「実行レベル 3」に切り替えることができます。 次のコマンドを使用して、「実行レベル 5」に切り替えることができます。 2. デフォルトのランレベルを変更するにはどうすればよいですか? systemdはデフォルトのランレベルを指すためにリンクを使用します。新しいリンクを作成する前に、次のコマンドを使用して既存のリンクを削除できます:`rm /etc/systemd/system/default.target`。 デフォルトのランレベル 3: デフォルトのランレベル 5: systemd は /etc/inittab ファイルを使用しません。 3. 現在のランレベルを確認するにはどうすればよいですか? 古いランレベルコマンドはsystemdでも引き続き動作します。systemdでは以前のシステムランレベルが「ターゲット」という概念に置き換えられましたが(複数の「ターゲット」を同時にアクティブにできます)、引き続き使用できます。 同等の systemd コマンドは `systemctl list-units --type=target` です。 III. その他の設定ツール: 1. セットアップツールとntsysvツールは引き続き提供されますが、機能は大幅に削減されました。以前はntsysvツールですべてのシステムサービスの自動起動を制御できましたが、現在は少数のサービスのみを制御できます。 2. DNS 構成ファイル /etc/resolv.conf は変更されていません。 3. ネットワークインターフェース設定ファイル /etc/sysconfig/network-scripts/ifcfg-ens192 の名前と一部のオプションが変更されました。 4. ブート方法が grub2 に変更されました。grub2 には次の機能があります: 1. モジュール設計。2. 複数のハードウェア アーキテクチャのサポート。3. 国際化と複数言語のサポート。4. 独立したメモリ管理。5. スクリプト言語のサポート。 付録: systemd の紹介 systemdは、Lennart Poettering氏によって開発され、LGPL 2.1以降のライセンスの下でオープンソースとして公開されているLinux用のinitソフトウェアです。開発目標は、システムサービス間の依存関係を表現するための優れたフレームワークを提供することです。これにより、システム初期化中にサービスの並列起動が可能になり、シェルのシステムオーバーヘッドが削減され、最終的には一般的に使用されているSystem VおよびBSDスタイルのinitプログラムを置き換えることができます。 ほとんどのディストリビューションで使用されている System V スタイルの init と比較して、systemd は次の新しいテクノロジーを採用しています。 ソケット アクティブ化サービスとバス アクティブ化サービスは、相互依存するサービスの並列操作パフォーマンスを向上させるために使用されます。 プロセスを追跡するために PID ではなく cgroup を使用すると、2 回のフォーク後に作成されたデーモンであっても systemd の制御から逃れることができなくなります。 設計の観点から見ると、systemd は cgroup や fanotify などのコンポーネントを使用して機能を実現するため、Linux にのみ適用できます。 systemd のより詳しい紹介については、http://en.wikipedia.org/wiki/Systemd を参照してください。 オリジナルリンク: http://www.ha97.com/5657.html |