systemd教程
systemd由来
起初Linux启动一直采用init启动
用如下命令启动服务
# /etc/init.d/mysql start $ service mysql start
但是这有两种方法有两个缺点
启动时间过长。init进程是串行启动,只有一个进程启动完,才会启动下一个进程
启动脚本复杂。init进程只是执行启动脚本,不管其他事情。脚本需要自己处理各种情况,这往往使得脚本变得很长。
systemd就是为了解决这个问题诞生的。它的设计目标是,为系统启动和管理提供一个完整的管理方案。
根据Linux的惯例,d是守护进程(daemon)的缩写,systemd就是守护整个系统。
系统管理
systemd有一组命令涉及系统方方面面的管理
systemctl
systemctl 用于管理系统
#重启系统
$ systemctl reboot
#关闭系统
$ systemctl poweroff
#CPU停止工作
$ systemctl halt
#暂停系统
$ systemctl suspend
#系统冬眠
$ systemctl hibernate
#系统进入交互式休眠状态
$ systemctl hybrid-sleep
#进入救援模式
$ systemctl rescue
systemd-analyze
systemd-analyze 用于查看系统启动耗时
#查看启动耗时
$ systemd-analyze
#查看每个服务启动耗时
$ systemd-analyze blame
#显示瀑布状的启动过程流
$ systemd-analyze critical-chain
#显示指定服务的启动流
$ systemd-analyze critical-chain xxx.service
更新中...
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现