目次
- システムの起動とシャットダウン
- システムの起動
- システムのシャットダウンと再起動
- SysVinit
- ランレベル
- systmd
- デーモンプロセス
- Unit
- ターゲット
- systemctlによるサービスの管理
システムの起動とシャットダウン
システムの起動
コンピュータの電源を入れてからOSが起動するまでの流れをブートシーケンスと言います。ブートシーケンスの順番は以下の通りです。
- BIOS/UEFI
- ブートローダ
- カーネル
- systemd
詳細につきましては以前記事に書きましたので、以下のリンクからご確認ください。
システムのシャットダウンと再起動
システム上で動作している様々なプログラムを適切に終了しシステムを安全に停止させることをシャットダウンと言います。
システムのシャットダウンや再起動はshoutdownコマンドで操作します。
以下、shoutdownコマンドの主なオプションです。
オプション | 説明 |
-h | シャットダウンします。 |
-r | システムの再起動します。 |
-k | シャットダウンはせずに警告メッセージを通知します。 |
-c | 実行中のシャットダウンを中止します。 |
SysVinit
SysVinitでは、システムの起動時やランレベルの変更時にinitが「/etc/inittab」を参照し、ランレベルに応じたスクリプトを実行して各種サービスを順に起動/停止していきます。
ランレベル
ランレベル | 説明 |
0 | システム停止 |
1/s/S | シングルユーザーモード (ルートのみ利用可能な状態) |
2 | マルチユーザモード (テキストログイン、NFSなし) |
3 | マルチユーザーモード (テキストログイン) |
4 | 未使用 |
5 | マルチユーザーモード (GUIログイン) |
6 | システム再起動 |
ランレベルの確認にはrunlevelコマンドを使います。
systemd
systemdはSysVinitを置き換える新しい仕組みです。
systemdのデーモンプロセス
systemdでは、initプロセスの代わりにsystemdプロセスが起動し、各種サービスを管理します。
systemdでは以下のデーモンプロセスが連携して動作しています。
プロセス名 | 機能 |
systemd | systemdの本体となるプロセスでinitの代わりに常駐します。 |
systemd-jounald | systemdが制御する各サービスが出力するログを扱います。 |
systemd-logind | システムへのログイン、起動停止、電源ボタン操作などを管理します。 |
systemd-udevd | 従来のudevdに替わり、デバイスの動的変更、検出を行います。 |
Unit
systemdでは、システムの起動処理は多数のUnitと呼ばれる処理単位に分かれています。
以下、主なUnitの種類です。
種類 | 説明 |
device | 各種デバイスを管理するUnitです。 |
mount | ファイルシステムのマウントを管理するUnitです。 |
service | サービスを制御するUnitです。 |
swap | スワップ領域を管理するUnitです。 |
target | 複数のサービスを一つのグループにするためのUnitです。 |
systemdは各種サービスの依存関係や順序を処理できます。
ターゲット
systemdはSysVinitのランレベルに代わりターゲットを使用します。
以下、ランレベルとターゲットの対応です。
ランレベル | ターゲット |
0 | poweriff.target |
1 | rescue.target |
2,3,4 | multi-user.target |
5 | graphical.target |
6 | reboot.target |
systemctlによるサービスの管理
systemdではサービスを管理するためにsystemctlコマンドを使います。書式は以下の通りです。
systemctl サブコマンド [Unit名]
以下、systemctlの主なサブコマンドです。
サブコマンド | 用途 |
disable | サービスの自動起動を無効にします。 |
enable | サービスの自動起動を有効にします。 |
get-deault | 次回起動時のターゲットを表示します。 |
halt | システムを停止しhalt状態にします。 |
is-active | サービスが稼働しているかを表示します。 |
list-unit-files | すべてのUnit定義ファイルを一覧表示します。 |
reboot | システムを再起動する。 |
reload | サービスの設定ファイルを再読み込みする。 |
restart | サービスを再起動する。 |
set-default | 次回起動時のターゲットを設定する。 |
start | サービスを起動する。 |
status | サービスの状態を表示する。 |
stop | サービスを停止する。 |
poweroff | システムを停止し電源を切断する。 |
最後まで読んで頂き、ありがとうございました。
他の分野へ移動できる全体ページへは下記リンクから移動できます。