17.2.2 【Linux】通过systemctl观察系统上所有的服务

使用 systemctl list-unit-files 会将系统上所有的服务通通列出来~而不像 list-units 仅以 unit 分类作大致的说明。 至于 STATE 状态就是前两个小节谈到的开机是否会载入的那个状态项目。主要有 enabled / disabled / mask / static 等等。

假设我不想要知道这么多的 unit 项目,我只想要知道 service 这种类别的 daemon 而已,而且不论是否已经启动,通通要列出来! 那该如何是好?

17.2.3 通过 systemctl 管理不同的操作环境 (target unit)

可否列出跟操作界面比较有关的 target 项目呢?

在CentOS 7.1的默认情况下,就有26个target unit。跟操作界面相关性比较高的 target 主要有下面几个:

graphical.target:就是文字加上图形界面,这个项目已经包含了下面的 multi-user.target项目!

multi-user.target:纯文本模式!

rescue.target:在无法使用 root 登陆的情况下,systemd 在开机时会多加一个额外的暂时系统,与你原本的系统无关。这时你可以取得 root 的权限来维护你的系统。 但是这是额外系统,因此可能需要动到 chroot 的方式来取得你原有的系统。

emergency.target:紧急处理系统的错误,还是需要使用 root 登陆的情况,在无法使用rescue.target 时,可以尝试使用这种模式!

shutdown.target:就是关机的流程。

getty.target:可以设置你需要几个 tty 之类的,如果想要降低 tty 的项目,可以修改这个东西的配置文件!

正常的模式是 multi-user.target 以及 graphical.target 两个,救援方面的模式主要是rescue.target 以及更严重的 emergency.target。 如果要修改可提供登陆的 tty 数量,则修改getty.target 项目。基本上,我们最常使用的当然就是 multi-user 以及 graphical。

改变 graphical.target 以及 multi-user.target 是通过 isolate 来处理的。在正常的切换情况下,使用上述 isolate 的方式即可。不过为了方便起见, systemd 也提供了数个简单的指令给我们切换操作模式之用,大致上如下所示:

关机、重新开机、救援与紧急模式这没啥问题,那么什么是暂停与休眠模式呢?

suspend:暂停模式会将系统的状态数据保存到内存中,然后关闭掉大部分的系统硬件,当然,并没有实际关机 当。使用者按下唤醒机器的按钮,系统数据会重内存中回复,然后重新驱动被大部分关闭的硬件,就开始正常运行!唤醒的速度较快。

hibernate:休眠模式则是将系统状态保存到硬盘当中,保存完毕后,将计算机关机。当使用者尝试唤醒系统时,系统会开始正常运行, 然后将保存在硬盘中的系统状态恢复回来。因为数据是由硬盘读出,因此唤醒的性能与你的硬盘速度有关。

相关推荐
极验2 分钟前
智能体时代的自动化对抗:Agent Bot 与隐匿技术共舞
运维·自动化
烈焰晴天9 分钟前
Codex 桌面端如何链接Figma MCP 服务器拿到 Figma设计稿精准尺寸等结构化数据 来精准还原UI
服务器·ui·figma
Dlrb121120 分钟前
Linux网络编程-网络基础概念(IP, UDP协议)
linux·服务器·网络·网络基础·端口号·ip协议·udp协议
shushangyun_28 分钟前
汽车服务行业B2B平台+AI解决方案哪家专业:2026年最新测评
java·运维·网络·数据库·人工智能·汽车
施努卡机器视觉30 分钟前
SNK施努卡转子自动化生产线:从铁芯上料到下线,精密装配方案
运维·自动化
小易撩挨踢1 小时前
[特殊字符] Linux 7.1 内核正式发布:距 7.0 仅 9 周,新 CPU/GPU/文件系统全面升级
linux·运维
vortex52 小时前
Linux进程权限继承研究:从setuid()到exec()与system()的行为差异
linux·服务器·系统安全·suid
信也科技布道师2 小时前
从Istio 503 NC 错误深入理解 Mesh 路由全链路原理
java·服务器·网络
云计算磊哥@2 小时前
运维开发宝典030-MySQL06数据库运维阶段总结
运维·数据库·运维开发