新创建的 systemd 服务需依次完成加载、启用、启动三步操作才生效:1. 将 .service 文件放入 /etc/systemd/system/;2. 执行 sudo systemctl daemon-reload;3. sudo systemctl enable myapp.service;4. sudo systemctl start myapp.service。

新创建的 systemd 服务不会自动生效,必须完成加载、启用、启动三步操作,缺一不可。
1. 把服务文件放对位置
服务单元文件(.service结尾)应放在以下任一目录:
- /etc/systemd/system/:推荐用于自定义服务(系统级,root 权限管理)
- /usr/lib/systemd/system/:通常预装服务存放处,不建议手动写入自定义服务
例如:sudo vim /etc/systemd/system/myapp.service
2. 重新加载 systemd 配置
让 systemd 扫描并识别新服务文件:
sudo systemctl daemon-reload
⚠️ 这一步必须执行。否则 enable 或 start 会报错“Unit myapp.service not found”。
3. 启用开机自启(可选但常用)
让服务在下次系统启动时自动运行:
sudo systemctl enable myapp.service
该命令会在 /etc/systemd/system/multi-user.target.wants/ 下创建软链接,表示该服务属于多用户运行目标。
4. 立即启动服务
启用 ≠ 启动。要马上运行服务,还需手动启动:
sudo systemctl start myapp.service
验证是否成功运行:
sudo systemctl status myapp.service(查看状态、日志、进程 PID)
不复杂但容易忽略。只要记住四步顺序:写好文件 → reload → enable → start。


















