CentOS7开机流程
Linux运行级别
什么是运行级别?运行级别就是操作系统当前正在运行的功能级别,CentOS7开机时会读取软链接文件/etc/systemd/system/default.target
指向的运行级别。
# 查看系统中的运行级别
[root@wqh06 ~]# systemctl get-default
multi-user.target
# 设置系统运行级别
[root@wqh06 ~]# systemctl set-default graphical.target
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/graphical.target.
[root@wqh06 ~]# systemctl get-default
graphical.target
[root@wqh06 ~]# systemctl set-default runlevel3.target
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/multi-user.target.
[root@wqh06 ~]# systemctl get-default
multi-user.target
System 运行级别 |
Systemd目标名称 |
作用 |
0 |
runlevel0.target,poweroff.target |
关机 |
1 |
runlevel1.target,rescue.target |
单用户模式 |
2 |
runlevel2.target,multi-user.target |
多用户模式(无法使用NFS) |
3 |
runlevel3.target,multi-user.target |
多用户模式 |
4 |
runlevel4.target,multi-user.target |
多用户模式(Unused) |
5 |
runlevel5.target,graphical.target |
图形界面或桌面模式 |
6 |
runlevel6.target,reboot.target |
重启 |
systemd进程管理
systemd的优势
1.最新系统都采用systemd管理(RedHat7,CentOS7,Ubuntu15...)
2.CentOS7 支持开机并行启动服务,显著提高开机启动效率。
3.CentOS7关机只关闭正在运行的服务,而CentOS6,全部都关闭一次。
4.CentOS7服务的启动与停止不在使用脚本进行管理,也就是/etc/init.d下不在有脚本。
5.CentOS7使用systemd解决原有模式缺陷,比如原有service不会关闭程序产生的子进程。
systemd相关文件
相关文件 |
CentOS6 |
CentOS7 |
服务启动脚本存放路径 |
/etc/init.d |
/usr/lib/systemd/system |
开机自启服务存放路径 |
/etc/rcN.d |
/etc/systemd/system/*.target.wants |
默认运行级别 |
/etc/inittab |
/etc/systemd/system/default.target |
systemd启动相关命令
system V init CentOS6 |
systemd CentOS7 |
作用 |
/etc/init.d/nginx start |
systemctl start nginx |
启动nginx服务 |
/etc/init.d/nginx stop |
systemctl stop nginx |
停止nginx服务 |
/etc/init.d/nginx status |
systemctl status nginx |
查看服务的启动状态 |
/etc/init.d/nginx restart |
systemctl restart nginx |
重启服务 |
/etc/init.d/nginx reload |
systemctl reload nginx |
不停止服务,重新加载nginx配置文件 |
|
systemctl is-acvite nginx |
判断nginx服务是否存活 |
|
systemctl mask nginx |
禁止服务运行 |
|
systemctl unmask nginx |
取消禁止 |
systemd开机自启动相关命令
system V init CentOS6 |
systemd CentOS7 |
作用 |
chkconfig --list |
systemctl list-unit-files |
查看开机自启的服务 |
chkconfig nginx on |
systemctl enable nginx |
加入开机自启动 |
chkconfig nginx off |
systemctl disable nginx |
关闭开机自启动 |
chkconfig --list nginx |
systemctl is-enabled nginx |
查看指定服务是否被开机自启 |
chkconfig --add nginx |
systemctl daemon-reload |
当我们手写脚本时让系统认识 |
systemd服务状态
服务状态 |
状态说明 |
loaded |
服务单元的配置文件已经被处理 |
active(running) |
服务的一个或多个进程在运行中 |
active(exited) |
一次性运行的服务成功被执行并退出(服务运行后完成任务,相关进程会自动退出) |
active(waiting) |
服务已经运行但在等待某个事件 |
inactive |
服务没有在运行 |
enable |
服务设定为开机运行 |
disabled |
服务设定为开机不运行 |
static |
服务不能被设定开机启动,但可以由其他服务启动该服务 |