どの初期化システムが使用されているのかわからない?ここではその方法を説明します。
すべての主要な Linux ディストリビューションはデフォルトで systemd を使っています。
この問題は、チュートリアルやドキュメントを読もうとして、systemd やその他の初期化サービスに特有のコマンドが含まれている場合に発生します。
この時点で、Linux システムが systemd を使っているのか、それとも他の何かを使っているのかをチェックする必要があります。
これを行う1つの方法は、PIDが1のプロセスをチェックすることです。
しかし、この出力は誤解を招くことがあり、 /sbin/init表示されることがよくあります。
このシンボリックリンクをたどると、初期化システムの情報を得ることができます。これには2つの方法があります:
- 使用
statコマンド - 使用
readlinkコマンド
では、まず1つ目から。
これらの方法は6つの初期化システムでテストされました:Systemd、OpenRC、SysVinit、Busybox、runit、s6。
方法 1: stat コマンドを使って systemd が使われているかチェックします。
ここでは、statコマンドを使用して、使用している初期化システムを調べる方法を説明します:
stat /sbin/init
systemd がサポートしているディストリビューションを使用している場合、以下のような出力が表示されます:
しかし、systemd 以外を使っている場合は、初期化しているシステムの名前が表示されますが、SysVinit を使っている場合は init しか表示されず、sysvinit は表示されません:
方法2:readlinkコマンドを使って初期化システムをチェックします。
メソッドとは異なり、 readlink コマンドを使用すると、初期化システムの名前のみが表示されます。
Systemdを使用しているかどうかを知りたい場合は、以下のコマンドを使ってください:
readlink /sbin/init
OpenRC を使ってアクセスを初期化すると、次のような出力が表示されます:
しかし、SysVinitを使用すると、次のような出力が表示されます:
私はあなたのために小さな台本を書きました。
もう一つの方法は、 /run/systemd/system ディレクトリが存在するかどうかをチェックすることです。
それを知る一番簡単な方法は、ターミナルで OpenRC アクセスの初期化ことです:
if [ -d /run/systemd/system ]; then echo "System is running systemd"; else echo "System is not running systemd"; fi
systemd の詳細
systemd がサポートしているディストリビューションを使用していることが分かっている場合、 ことができます。
もちろん、ゼロから こともできます。
このガイドがお役に立てば幸いです。





