如何在 Linux 中创建 Systemd 服务
脚本后台乱跑,管理总出问题,systemd怎么接手。很多脚本用 crontab、nohup 或 rc.local 后台跑。能跑不等于好管,状态、日志、崩溃重启、开机自启都麻烦。systemd 能把脚本变成标准服务,这事值得说清楚,也省得天天手动看进程。
服务停了没人管?Systemd 和 Supervisor 这 6 招,让进程自己启动
本文是《Linux 运维常用软件实战》系列第 47 篇。建议先收藏,跟着练手效果更好。今天把 Systemd 和 Supervisor 讲透,让服务掉了能自动爬起来。一、先搞懂:进程托管到底解决什么裸跑进程有三个致命缺陷:开机不自启、崩溃不重启、日志没地方收。
服务重启就趴窝?systemd这5个配置别漏
服务半夜挂掉,爬起来手动起一下,天天凌晨被叫醒谁都扛不住。很多服务反复重启根本不是程序问题,而是 systemd 服务文件里几个配置没写对。老陈把 5 个高频配置捋一遍,照着改,少值一半夜班。
给服务上锁:systemd 安全加固几个开关
systemd 自带一整套沙箱机制,在单元文件里加几行 directive,就能把服务能看、能改、能连的范围圈起来。文件系统先锁起来ProtectSystem=strict 这一行,把整个文件系统按只读挂载,/usr、/boot、/etc 全部锁死。
如何编写一个生产级 Systemd 服务配置文件
服务能启动不算完,崩溃后全乱套,那份配置少写了什么。我写 systemd 服务时,最早只关心它能不能启动。加个 ExecStart,敲个 enable,看到 active 就以为完事。
Systemd开始接受Rust代码:不移植C、不用Cargo
Systemd开始接受Rust代码:不移植C、不用Cargo,这条路走得很克制Linux 世界的一个标志性项目悄悄开了个口子:Systemd 宣布支持用 Rust 语言开发程序。
Linux systemd 自动重启的正确开法
先加这行:Restart=on-failure在单元文件的 [Service] 段加一行 Restart=on-failure,进程停掉 systemd 自动拉起,不用任何外挂脚本。
进程挂了谁拉起:systemd、Docker、K8s 三层兜底
服务挂掉不算最麻烦的事。麻烦的是它被反复拉起、拉起又挂,监控上看状态是 running,请求却一直在报错。我给一个接口服务配过两套兜底:裸机那套交给 systemd,容器化之后交给 compose。配置都在跑,但两边兜住的故障根本不是同一类。
systemd 开始用 Rust,核心库仍不开放
Rust 可以进,定位有点微妙 systemd 前不久刚宣布官方支持 Rust,开发者 Christian Brauner 和 Lennart Poettering 随即写了一篇长文,把「怎么用、哪儿不用」讲得很清楚。态度很明确:欢迎,但有限制。核心库?