本文主要是介绍Linux创建服务使用systemctl管理详解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
《Linux创建服务使用systemctl管理详解》文章指导在Linux中创建systemd服务,设置文件权限为所有者读写、其他只读,重新加载配置,启动服务并检查状态,确保服务正常运行,关键步骤包括权...
创建服务 /usr/lib/systemd/system/
[Unit] # 服务描述(自定义,便于识别) Description=SFTP Directory Sync Service (inotifywait + rsync daemon) # 服务依赖:网络启动后、rsync 服务启动后再启动本服务(确保网络和依赖可用) After=network.target rsyncd.service # 服务文档(可选,指向命令手册) Documentation=man:inotifywait(1) man:rsync(1) [Service] # 服务类型:simple(前台运行,适合持续监控的脚本) Type=simple # 执行服务的用户/组(建议用 root,避免目录、密码文件权限不足) User=root GroucaNEyYnMfp=root # 工作目录(脚本所在目录,避免相对路径问题) WorkingDirectory=/usr/local/bin/sftp_sync # 核心:服务启动命令(脚本绝对路径,必须正确) ExecStart=/usr/local/bin/sftp_sync/sftp_sync_daemon.sh # 服务意外退出时自动重启(确保稳定性,如脚本崩溃后恢复) Restart=always # 重启间隔(意外退出后,5秒再重启,避免频繁重启) RestartSec=5 # 停止服务时,杀死所有子进程(避免 inotifywait 残留) KillMode=control-group # 输出重定向到 journalctl(可通过 journpythonalctl 查看服务运行日志) StandardOutput=journal StandardError=journal [Install] # 服务安装目标:多用户模式下开机自启(适配服务器环境) WantedBy=multi-user.target
设置服务文件权限:所有者读写,其他用户只读
chmod 644 /usr/lib/systemd/system/sftp-syjavascriptnc-daemon.service
systemctl 配置
- 重新加载 systemd 配置
systemctl daemon-reload
- 启动服务
systemctl start sftp-sync-daemon
- 查看服务状态(关键!确认是否正常运行)
systemctl status sftp-sync-daemon -l
总结
这篇关于Linux创建服务使用systemctl管理详解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!