systemd与system V init 的区别-《linux就该这么学》笔记

拈花ヽ惹草 提交于 2020-02-25 15:23:18

在redhat7中,已经没有“运行级别”这个概念了,linux系统在启动时要进行大量的初始化工作,比如挂载文件系统和交换分区、启动各类进程服务等,这些都可以看作是一个一个的单元(Unit),systemd用目标(target)代替了System V init 中运行级别的概念,区别如下:

init运行级别 systemd目标名称 作用
0 runlevel0.target - poweroff.target 关机
1 runlevel1.target - rescue.target 单用户模式
2 runlevel2.target - multi-user.target 等同于级别 3
3 runlevel3.target - multi-user.target 多用户的文本界面
4 runlevel4.target - multi-user.target 等同于级别3
5 runlevel5.target - graphical.target 多用户的图像界面
6 runlevel6.target - reboot.target 重启
emergency emergency.target 紧急shell

如果需要将系统默认运行的目标修改为“多用户,无图形”模式,可以直接用ln 命令把多用户模式目标文件连接到/etc/systemd/system/目录:

ln -sf /lib/systemd/system/multi-user.target /etc/systemd/system/default.target

在redhat7上使用systemctl命令管理服务,常用命令:

命令 作用
systemctl start foo.service 启动服务
systemctl stop foo.service 停止服务
systemctl restart foo.service 重启服务
systemctl reload foo.service 重新加载配置文件
systemctl status foo.service 查看服务状态
systemctl enable foo.service 开机自启动
systemctl disable foo.service 开机不自启动
systemctl is-enabled foo.service 查看服务是否为开机自启动
systemctl list-unit-files --type=service 查看各个级别下服务的启动与禁止情况
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!