Systemd は、RHEL 7 のデフォルトのサービス マネージャーとして sysVinit を置き換えました。一部の sysVinit コマンドは、対応する RHEL 7 にシンボリック リンクされていますが、これは最終的に標準の systemd コマンドを優先して廃止される予定です。
SysVinit V/s systemd ランレベル
以下は、SysVinit ランレベルと systemd ターゲットの比較です。
Sysvinit ランレベル | Systemd ターゲット | 機能 |
---|---|---|
0 | runlevel0.target, poweroff.target | システムの停止/シャットダウン |
1、s、シングル | runlevel1.target、rescue.target | シングル ユーザー モード |
2、4 | runlevel2.target、runlevel4.target、multi-user.target | ユーザー定義/サイト固有のランレベル。デフォルトでは、3 と同じです。 |
3 | runlevel3.target, multi-user.target | マルチユーザー、非グラフィカル モード、テキスト コンソールのみ |
5 | runlevel5.target、graphical.target | マルチユーザー、グラフィカル モード |
6 | runlevel6.target、reboot.target | 再起動 |
緊急事態 | emergency.target | 緊急モード |
systemd でランレベルを変更する
ランレベル ターゲットは、systemctl isolate コマンドを使用して変更できます:
# systemctl isolate multi-user.target
利用可能なターゲットを表示するには、タイプ target で list-units オプションを発行できます
# systemctl list-units --type=target
実行レベル 3 は multi-user.target によってエミュレートされます。これはシンボリック リンクによって行われ、互換的に使用できます
# systemctl isolate multi-user.target # systemctl isolate runlevel3.target # ls -l /usr/lib/systemd/system/runlevel3.target lrwxrwxrwx 1 root root 17 Oct 18 11:41 /usr/lib/systemd/system/runlevel3.target -> multi-user.target
実行レベル 5 は、graphical.target によってエミュレートされます。これもシンボリック リンクによって行われ、互換的に使用できます
# systemctl isolate graphical.target # systemctl isolate runlevel5.target # ls -l /usr/lib/systemd/system/runlevel5.target lrwxrwxrwx 1 root root 16 Oct 18 11:41 /usr/lib/systemd/system/runlevel5.target -> graphical.target
デフォルトのランレベルを変更する
デフォルトのランレベルは、set-default オプションを使用して変更できます。
# systemctl set-default multi-user.target
現在設定されているデフォルトを取得するには、get-default オプションを使用できます。
# systemctl get-default
systemd のデフォルトのランレベルは、以下の方法を使用して設定することもできます (ただし、推奨されません)。
# ln -sf /lib/systemd/system/[desired].target /etc/systemd/system/default.target
デフォルトのターゲットは、次のオプションを追加することで、ブート中にカーネル ラインで設定することもできます:
systemd.unit=multi-user.target