特定のランレベルで実行すると、以前のランレベルが実行されますか?

特定のランレベルで実行すると、以前のランレベルが実行されますか?

システムにランレベル3に移動するように指示した場合、まずランレベル0、1、2を実行し、最後にランレベル3を実行することを意味しますか?

私はこの質問に対する答えが「はい」と思います。しかし、RHEL 6システムを見ると、多くのrcX.dディレクトリに同じシンボリックリンクが含まれていることがわかりました。

私の/etc/rc.d/rc0.d/

[root@centos6 rc.d]# ls -lah /etc/rc.d/rc0.d/
total 8.0K
drwxr-xr-x.  2 root root 4.0K Jun 27 11:59 .
drwxr-xr-x. 10 root root 4.0K Jul  9 15:06 ..
lrwxrwxrwx.  1 root root   13 Jun 12 13:02 K05atd -> ../init.d/atd
lrwxrwxrwx.  1 root root   14 Jun 12 13:01 K10cups -> ../init.d/cups
lrwxrwxrwx.  1 root root   19 Jun 12 10:57 K10saslauthd -> ../init.d/saslauthd
lrwxrwxrwx.  1 root root   18 Jun 12 12:51 K15svnserve -> ../init.d/svnserve
lrwxrwxrwx.  1 root root   14 Jun 12 10:58 K25sshd -> ../init.d/sshd
lrwxrwxrwx.  1 root root   17 Jun 12 10:57 K30postfix -> ../init.d/postfix
lrwxrwxrwx.  1 root root   17 Jun 12 12:26 K50dnsmasq -> ../init.d/dnsmasq
lrwxrwxrwx.  1 root root   20 Jun 12 10:57 K50netconsole -> ../init.d/netconsole
lrwxrwxrwx.  1 root root   15 Jun 12 10:57 K60crond -> ../init.d/crond
lrwxrwxrwx.  1 root root   25 Jun 27 11:59 K65vboxadd-service -> ../init.d/vboxadd-service
lrwxrwxrwx.  1 root root   17 Jun 27 11:58 K70vboxadd -> ../init.d/vboxadd
lrwxrwxrwx.  1 root root   21 Jun 27 11:59 K70vboxadd-x11 -> ../init.d/vboxadd-x11
lrwxrwxrwx.  1 root root   17 Jun 12 12:26 K73winbind -> ../init.d/winbind
lrwxrwxrwx.  1 root root   19 Jun 12 12:26 K74haldaemon -> ../init.d/haldaemon
lrwxrwxrwx.  1 root root   26 Jun 12 10:58 K75blk-availability -> ../init.d/blk-availability
lrwxrwxrwx.  1 root root   15 Jun 12 11:15 K75netfs -> ../init.d/netfs
lrwxrwxrwx.  1 root root   19 Jun 12 10:57 K75udev-post -> ../init.d/udev-post
lrwxrwxrwx.  1 root root   24 Jun 12 12:26 K84NetworkManager -> ../init.d/NetworkManager
lrwxrwxrwx.  1 root root   24 Jun 27 11:59 K84wpa_supplicant -> ../init.d/wpa_supplicant
lrwxrwxrwx.  1 root root   19 Jun 12 10:58 K85mdmonitor -> ../init.d/mdmonitor
lrwxrwxrwx.  1 root root   20 Jun 12 12:25 K85messagebus -> ../init.d/messagebus
lrwxrwxrwx.  1 root root   20 Jun 12 10:58 K87multipathd -> ../init.d/multipathd
lrwxrwxrwx.  1 root root   21 Jun 12 10:57 K87restorecond -> ../init.d/restorecond
lrwxrwxrwx.  1 root root   16 Jun 12 10:58 K88auditd -> ../init.d/auditd
lrwxrwxrwx.  1 root root   15 Jun 27 11:59 K88iscsi -> ../init.d/iscsi
lrwxrwxrwx.  1 root root   17 Jun 12 10:57 K88rsyslog -> ../init.d/rsyslog
lrwxrwxrwx.  1 root root   16 Jun 12 10:58 K89iscsid -> ../init.d/iscsid
lrwxrwxrwx.  1 root root   21 Jun 12 13:01 K89portreserve -> ../init.d/portreserve
lrwxrwxrwx.  1 root root   15 Jun 12 11:15 K89rdisc -> ../init.d/rdisc
lrwxrwxrwx.  1 root root   17 Jun 12 11:15 K90network -> ../init.d/network
lrwxrwxrwx.  1 root root   19 Jun 12 10:57 K92ip6tables -> ../init.d/ip6tables
lrwxrwxrwx.  1 root root   18 Jun 12 10:57 K92iptables -> ../init.d/iptables
lrwxrwxrwx.  1 root root   22 Jun 12 10:58 K99lvm2-monitor -> ../init.d/lvm2-monitor
lrwxrwxrwx.  1 root root   17 Jun 12 11:15 S00killall -> ../init.d/killall
lrwxrwxrwx.  1 root root   14 Jun 12 11:15 S01halt -> ../init.d/halt
lrwxrwxrwx.  1 root root   15 Jun 26 12:32 S95jexec -> ../init.d/jexec

そして/etc/rc.d/rc1.d/rc0.d と同じシンボリックリンクセットと追加リンクが表示されます。これは rc0.d と rc1.d ディレクトリが別個であることを示し、ランレベル 1 に入るためにはランレベル 0 の内容を実行しないようです。これは、rc0のシンボリックリンクが変更された場合、dがrc1.dから完全にコピーされないことを意味します。

それでは、正確にどのように機能しますか?特定のrc.Xディレクトリまたはinitに渡されたrcレベルより低いレベルで実行されているすべてのrc.Xディレクトリのファイルを検索しますか?

[root@centos6 rc.d]# ls -lah /etc/rc.d/rc1.d/
total 8.0K
drwxr-xr-x.  2 root root 4.0K Jun 27 11:59 .
drwxr-xr-x. 10 root root 4.0K Jul  9 15:06 ..
lrwxrwxrwx.  1 root root   13 Jun 12 13:02 K05atd -> ../init.d/atd
lrwxrwxrwx.  1 root root   14 Jun 12 13:01 K10cups -> ../init.d/cups
lrwxrwxrwx.  1 root root   19 Jun 12 10:57 K10saslauthd -> ../init.d/saslauthd
lrwxrwxrwx.  1 root root   18 Jun 12 12:51 K15svnserve -> ../init.d/svnserve
lrwxrwxrwx.  1 root root   14 Jun 12 10:58 K25sshd -> ../init.d/sshd
lrwxrwxrwx.  1 root root   17 Jun 12 10:57 K30postfix -> ../init.d/postfix
lrwxrwxrwx.  1 root root   17 Jun 12 12:26 K50dnsmasq -> ../init.d/dnsmasq
lrwxrwxrwx.  1 root root   20 Jun 12 10:57 K50netconsole -> ../init.d/netconsole
lrwxrwxrwx.  1 root root   15 Jun 12 10:57 K60crond -> ../init.d/crond
lrwxrwxrwx.  1 root root   25 Jun 27 11:59 K65vboxadd-service -> ../init.d/vboxadd-service
lrwxrwxrwx.  1 root root   17 Jun 27 11:58 K70vboxadd -> ../init.d/vboxadd
lrwxrwxrwx.  1 root root   21 Jun 27 11:59 K70vboxadd-x11 -> ../init.d/vboxadd-x11
lrwxrwxrwx.  1 root root   17 Jun 12 12:26 K73winbind -> ../init.d/winbind
lrwxrwxrwx.  1 root root   19 Jun 12 12:26 K74haldaemon -> ../init.d/haldaemon
lrwxrwxrwx.  1 root root   15 Jun 12 11:15 K75netfs -> ../init.d/netfs
lrwxrwxrwx.  1 root root   24 Jun 12 12:26 K84NetworkManager -> ../init.d/NetworkManager
lrwxrwxrwx.  1 root root   24 Jun 27 11:59 K84wpa_supplicant -> ../init.d/wpa_supplicant
lrwxrwxrwx.  1 root root   19 Jun 12 10:58 K85mdmonitor -> ../init.d/mdmonitor
lrwxrwxrwx.  1 root root   20 Jun 12 12:25 K85messagebus -> ../init.d/messagebus
lrwxrwxrwx.  1 root root   20 Jun 12 10:58 K87multipathd -> ../init.d/multipathd
lrwxrwxrwx.  1 root root   21 Jun 12 10:57 K87restorecond -> ../init.d/restorecond
lrwxrwxrwx.  1 root root   16 Jun 12 10:58 K88auditd -> ../init.d/auditd
lrwxrwxrwx.  1 root root   15 Jun 27 11:59 K88iscsi -> ../init.d/iscsi
lrwxrwxrwx.  1 root root   17 Jun 12 10:57 K88rsyslog -> ../init.d/rsyslog
lrwxrwxrwx.  1 root root   16 Jun 12 10:58 K89iscsid -> ../init.d/iscsid
lrwxrwxrwx.  1 root root   21 Jun 12 13:01 K89portreserve -> ../init.d/portreserve
lrwxrwxrwx.  1 root root   15 Jun 12 11:15 K89rdisc -> ../init.d/rdisc
lrwxrwxrwx.  1 root root   17 Jun 12 11:15 K90network -> ../init.d/network
lrwxrwxrwx.  1 root root   19 Jun 12 10:57 K92ip6tables -> ../init.d/ip6tables
lrwxrwxrwx.  1 root root   18 Jun 12 10:57 K92iptables -> ../init.d/iptables
lrwxrwxrwx.  1 root root   22 Jun 12 10:58 S02lvm2-monitor -> ../init.d/lvm2-monitor
lrwxrwxrwx.  1 root root   26 Jun 12 10:58 S25blk-availability -> ../init.d/blk-availability
lrwxrwxrwx.  1 root root   19 Jun 12 10:57 S26udev-post -> ../init.d/udev-post
lrwxrwxrwx.  1 root root   15 Jun 26 12:32 S95jexec -> ../init.d/jexec
lrwxrwxrwx.  1 root root   16 Jun 12 11:15 S99single -> ../init.d/single

ベストアンサー1

システムにランレベル3に移動するように指示した場合、まずランレベル0、1、2を実行し、最後にランレベル3を実行することを意味しますか?

いいえ、そうではありません。このように、ランレベルは連続的ではありません。

イラスト:実行レベル0通常、すべてのサービスを停止し、最終的にシステムを停止(終了する可能性があります)する「終了」実行レベルです。完全に動作するシステムを得るために、initが最初に実行レベル0に入ったならば、それはうまくいかないでしょう。

つまり、通常進展この期間中起動プロセス。カーネルはランレベル1で初期化され、次に制御をinitに渡します。 initは通常、ランレベル2(ネットワーキングのないマルチユーザー)、次にランレベル3(完全に動作するテキストモード)、および可能であればランレベル5(完全に動作するグラフィックモード)に入るように構成されます。 )。しかし、これは実際には完全に設定可能であり、どのランレベルに入るかについての詳細はほとんど慣習に従います。たとえば、少なくとも過去には、Debianは完全な動作グラフィックモードにランレベル4を使用していましたが、私のDebian Wheezyではランレベル2と3が同じように見えます(diff <(ls /etc/rc2.d) <(ls /etc/rc3.d)何も出力されません)。各実行レベルに対応する内容は管理者が決定する。

さらに、通常、実行レベル 6 はシステムを再起動するように設定されます。特に、オペレーティングシステムが正しく起動しない場合は、システムメンテナンス中に実行レベル1から実行レベル6に直接移動できます。

Linux以外のシステムでは、さまざまなランレベルの目的について異なる考え方を持っているか、使用可能なランレベルの数が異なる可能性があることにも注目する価値があります。この概念は* nixの世界ではほとんど普遍的ですが、実装と実際の使用は非常に多様です。

全体として、「ランレベル」は、関連するプロセスとシステムの状態を管理者が選択できる管理可能なパッケージにグループ化する便利な方法です。 (BTW、Windows緊急安全モード、ネットワーク緊急安全、コマンドプロンプト緊急安全、通常起動などは非常に似た概念を持っています。)

おすすめ記事