系统服务控制
系统服务控制
systemctl [控制类型] [服务名称]
控制类型
start :启动
stop :停止
restart 重新启动
reload :重新加载
status:查看服务状态
enable:开机启动
disable:开机禁用
. . . . . .
Linux系统的运行级别
查看运行级别
- runlevel 命令
- systemctl 工具
临时切换运行级别
- init 命令
- systemctl 工具
查看默认的运行级别
[root@server3 ~]# systemctl get-default
graphical.target
[root@server3 ~]#
可以看到输出结果是 graphical.target 说明当前运行级别是图形化界面
不重启设备而切换当前运行级别
#isolate 用于切换当前的运行级别
#切换到multi-user.target(命令行界面)
systemctl isolate multi-user.target
#切换到graphical.target(图形界面)
systemctl isolate graphical.target
查看当前的运行级别
用runlevel查看当前运行级别
[root@server3 ~]# systemctl isolate multi-user.target
[root@server3 ~]# runlevel
5 3
[root@server3 ~]#
也可以使用who -rmling
[root@server3 ~]# who -r
运行级别 3 2020-08-27 11:47 最近=5
[root@server3 ~]#
运行级别是当前的运行级别,最近是上一个运行级别
#set-default用来指定默认的运行级别
[root@server3 ~]# systemctl set-default multi-user.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@server3 ~]#
**#查看是否修改成功**
[root@server3 ~]# systemctl get-default
multi-user.target
[root@server3 ~]#
**#或者通过创建软链接的形式来更改默认运行级别,创建之前要先删除位于/etc/systemd/system的default.target的文件**
[root@server3 ~]# cd /etc/systemd/system
[root@server3 system]# ll
总用量 4
drwxr-xr-x. 2 root root 31 8月 7 23:09 basic.target.wants
drwxr-xr-x. 2 root root 31 8月 7 23:07 bluetooth.target.wants
lrwxrwxrwx. 1 root root 41 8月 7 23:07 dbus-org.bluez.service -> /usr/lib/systemd/system/bluetooth.service
lrwxrwxrwx. 1 root root 41 8月 26 17:31 dbus-org.fedoraproject.FirewallD1.service -> /usr/lib/systemd/system/firewalld.service
lrwxrwxrwx. 1 root root 44 8月 7 23:09 dbus-org.freedesktop.Avahi.service -> /usr/lib/systemd/system/avahi-daemon.service
lrwxrwxrwx. 1 root root 44 8月 7 23:09 dbus-org.freedesktop.ModemManager1.service -> /usr/lib/systemd/system/ModemManager.service
lrwxrwxrwx. 1 root root 46 8月 7 23:07 dbus-org.freedesktop.NetworkManager.service -> /usr/lib/systemd/system/NetworkManager.service
lrwxrwxrwx. 1 root root 57 8月 7 23:07 dbus-org.freedesktop.nm-dispatcher.service -> /usr/lib/systemd/system/NetworkManager-dispatcher.service
lrwxrwxrwx. 1 root root 41 8月 27 11:53 default.target -> /usr/lib/systemd/system/multi-user.target
drwxr-xr-x. 2 root root 87 8月 7 23:07 default.target.wants
drwxr-xr-x. 2 root root 38 8月 7 23:09 dev-virtio\x2dports-org.qemu.guest_agent.0.device.wants
lrwxrwxrwx. 1 root root 35 8月 7 23:08 display-manager.service -> /usr/lib/systemd/system/gdm.service
drwxr-xr-x. 2 root root 32 8月 7 23:07 getty.target.wants
drwxr-xr-x. 2 root root 65 8月 7 23:14 graphical.target.wants
drwxr-xr-x. 2 root root 4096 8月 26 17:31 multi-user.target.wants
drwxr-xr-x. 2 root root 48 8月 26 15:05 network-online.target.wants
drwxr-xr-x. 2 root root 26 8月 7 23:07 printer.target.wants
drwxr-xr-x. 2 root root 31 8月 7 23:08 remote-fs.target.wants
drwxr-xr-x. 2 root root 229 8月 26 17:21 sockets.target.wants
drwxr-xr-x. 2 root root 36 8月 7 23:09 spice-vdagentd.target.wants
drwxr-xr-x. 2 root root 26 8月 7 23:07 sssd.service.d
drwxr-xr-x. 2 root root 169 8月 7 23:07 sysinit.target.wants
drwxr-xr-x. 2 root root 44 8月 7 23:07 system-update.target.wants
drwxr-xr-x. 2 root root 29 8月 7 23:07 vmtoolsd.service.requires
[root@server3 system]# rm /etc/systemd/system/default.target
rm:是否删除符号链接 "/etc/systemd/system/default.target"?y
[root@server3 system]# ln -s /usr/lib/systemd/system/graphical.target /etc/systemd/system/default.target
[root@server3 system]#
**#查询下是否成功**
[root@server3 system]# systemctl get-default
graphical.target
[root@server3 system]#
查看一个运行级别下面的所有unit
#list-dependencies:分析指定target各unit之间的依赖关系,如果不指明target,则表示默认的target
说明:各个service前的圆点颜色不同,如果是绿色,表示正在运行中,active,如果是红色,表示是未运行,inactive
查看哪些target引用了当前运行级别的target
[root@server3 ~]# systemctl list-dependencies multi-user.target --reverse
multi-user.target
● └─graphical.target
[root@server3 ~]#
multi-user.target被graphical.target所引用
优化启动过程
ntsysv工具
- 提供一个交互式、可视化窗口
- 可以在字符终端运行
- 便于集中管理多个服务
systemctl工具
- 不提供交互式、可视化的窗口
- 管理单个服务效率更高
ntsysv系统服务工具
ntsysv --level (按照默认设置,只有当前运行级别会被配置,要配置不同的运行级别使用“–level”选项来指定一个或多个运行级别。例如,命令“ntsysv --level 3 4 5”配置运行级别3、4和5)
执行此命令会出现下图,方向键选择,空格键选中,TAB键切换选项
systemctl与关机/重启相关的命令
1. 关闭CPU,但未关闭电源
[root@server3 ~]# systemctl halt
2. 关闭电源
[root@server3 ~]# systemctl poweroff
3. 重启机器
[root@server3 ~]# systemctl reboot