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

相关推荐
腾科IT教育3 小时前
Oracle认证怎么选?2026年OCP/OCM报考指南
linux·运维·华为认证·hcie·开闭原则·datacom
幸福指北3 小时前
🚀 开源了,一个人 + AI 肝出一个 AI 终端 | AShell 技术分享
运维·人工智能·ai·终端
肥胖小羊5 小时前
微信社群自动化管理与防骚扰系统的设计与实现
运维·自动化
AI办公探索者5 小时前
仓储物流AI任务执行的技术拆解:从WMS自动化到多设备协同的落地路径
运维·人工智能·ai·自动化
longerxin20207 小时前
nano编辑器插入、编辑完整操作教程(Linux日志/配置专用)
linux·运维·编辑器
cesium vue7 小时前
nginx 流媒体配置
运维·nginx
木心术17 小时前
GitHub Actions自动化运维实战:从CI/CD到全链路DevOps
运维·自动化·github
糯米导航7 小时前
实践教程|搭建电商 AI 无限画布,实现百款商品主图自动化批量生成
运维·人工智能·自动化
朴马丁8 小时前
从制造到智造:PLM如何赋能企业研发创新
大数据·运维·人工智能·食品行业·流程行业plm·化工新材料行业·新能源材料行业
爱小黄8 小时前
使用docker搭建集群-使用 Docker 搭建 KingbaseES 集群
运维·docker·容器