CentOS 7 運行級別切換


CentOS 7 之前的版本是通過 /etc/inittab 文件來定義系統運行級別:

[sywu@wusuyuan ~]$ cat /etc/centos-release 
CentOS release 6.4 (Final)
[sywu@wusuyuan ~]$ cat /etc/inittab 
# inittab is only used by upstart for the default runlevel.
#
# ADDING OTHER CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM.
#
# System initialization is started by /etc/init/rcS.conf
#
# Individual runlevels are started by /etc/init/rc.conf
#
# Ctrl-Alt-Delete is handled by /etc/init/control-alt-delete.conf
#
# Terminal gettys are handled by /etc/init/tty.conf and /etc/init/serial.conf,
# with configuration in /etc/sysconfig/init.
#
# For information on how to write upstart event handlers, or how
# upstart works, see init(5), init(8), and initctl(8).
#
# Default runlevel. The runlevels used are:
#   0 - halt (Do NOT set initdefault to this)
#   1 - Single user mode
#   2 - Multiuser, without NFS (The same as 3, if you do not have networking)
#   3 - Full multiuser mode
#   4 - unused
#   5 - X11
#   6 - reboot (Do NOT set initdefault to this)
# 
id:3:initdefault:
[sywu@wusuyuan ~]$

 

CentOS 7 版本不再使用該文件定義系統運行級別,相關運行級別設置無效:

[sywu@c1-11r2-rac1 etc]$ cat /etc/centos-release 
CentOS Linux release 7.0.1406 (Core) 
[sywu@c1-11r2-rac1 etc]$ cat /etc/inittab 
# inittab is no longer used when using systemd.
#
# ADDING CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM.
#
# Ctrl-Alt-Delete is handled by /etc/systemd/system/ctrl-alt-del.target
#
# systemd uses 'targets' instead of runlevels. By default, there are two main targets:
#
# multi-user.target: analogous to runlevel 3
# graphical.target: analogous to runlevel 5
#
# To set a default target, run:
#
# ln -sf /lib/systemd/system/<target name>.target /etc/systemd/system/default.target
#
id:3:initdefault:  #無效
[sywu@c1-11r2-rac1 etc]$

新版本的運行級別都定義在 /lib/systemd/system下:

[sywu@c1-11r2-rac1 system]$ ls -ltr /lib/systemd/system/runlevel*
lrwxrwxrwx. 1 root root 13 7月  30 14:22 /lib/systemd/system/runlevel1.target -> rescue.target
lrwxrwxrwx. 1 root root 15 7月  30 14:22 /lib/systemd/system/runlevel0.target -> poweroff.target
lrwxrwxrwx. 1 root root 17 7月  30 14:22 /lib/systemd/system/runlevel2.target -> multi-user.target
lrwxrwxrwx. 1 root root 17 7月  30 14:22 /lib/systemd/system/runlevel3.target -> multi-user.target
lrwxrwxrwx. 1 root root 17 7月  30 14:22 /lib/systemd/system/runlevel4.target -> multi-user.target
lrwxrwxrwx. 1 root root 16 7月  30 14:22 /lib/systemd/system/runlevel5.target -> graphical.target
lrwxrwxrwx. 1 root root 13 7月  30 14:22 /lib/systemd/system/runlevel6.target -> reboot.target

可以針對不同需要設置不同的運行級別:

如設置命令行級別(init 3)方法:

ln -sf /lib/systemd/system/runlevel3.target /etc/systemd/system/default.target
或
ln -sf /lib/systemd/system/multi-user.target /etc/systemd/system/default.target
或
systemctl set-default multi-user.target

設置窗口級別(init 5)方法:

ln -sf /lib/systemd/system/runlevel5.target /etc/systemd/system/default.target
或
ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target
或
systemctl set-default graphical.target

 

-----------------------------分割線-----------------------------

修改系統運行級別:
1、systemd使用比sysvinit的運行級更為自由的target替代。第3運行級用multi-user.target替代。第5運行級用graphical.target替代。runlevel3.target和runlevel5.target分別是指向 multi-user.target和graphical.target的符號鏈接。
可以使用下面的命令切換到“運行級別3 ”:
systemctl isolate multi-user.target或systemctl isolate runlevel3.target

可以使用下面的命令切換到“運行級別5 ”:
systemctl isolate graphical.target或systemctl isolate runlevel5.target
2、如何改變默認運行級別?
systemd使用鏈接來指向默認的運行級別。在創建新的鏈接前,可以通過下面命令刪除存在的鏈接: rm /etc/systemd/system/default.target
默認啟動運行級別3 :
ln -sf /lib/systemd/system/multi-user.target /etc/systemd/system/default.target

默認啟動運行級別5 :
ln -sf /lib/systemd/system/graphical.target/etc/systemd/system/default.target

systemd不使用/etc/inittab文件。

-----------------------------分割線-----------------------------

如何查看當前運行級別?
舊的runlevel命令在systemd下仍然可以使用。可以繼續使用它,盡管systemd使用 ‘target’ 概念(多個的 ‘target’ 可以同時激活)替換了之前系統的runlevel。
等價的systemd命令是systemctl list-units –type=target


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM