(笔记)自定义 systemd 服务

参考文章1

参考文章2

systemd教程

创建服务文件

新建 .service 文件,例如 MyService.service:

复制代码
sudo vi /etc/systemd/system/MyService.service
javascript 复制代码
[Unit] # 区块:启动顺序与依赖关系
Description=自定义开机启动服务
After=network.target  # 表示该服务的依赖关系

[Service]  # 区块:启动行为,如何启动,启动类型
ExecStart=写自己的sh文件绝对路径
Restart=always
Type=simple #程序要用forking,注意类型,可以看上面的参考文章
User=root

[Install]  # 区块,定义如何安装这个配置文件,即怎样做到开机启动
WantedBy=multi-user.target # multi-user.target 表示多用户命令行状态

编写脚本

确保 /path/to/your/script.sh 存在,并具有可执行权限:

复制代码
sudo chmod +x /path/to/your/script.sh

javascript 复制代码
#!/bin/bash
echo "开机启动测试 $(date)" >> /home/test.log
exit 0

启用服务

启用并启动服务:

复制代码
sudo systemctl enable MyService.service
sudo systemctl start MyService.service

验证运行状态

查看服务状态:

复制代码
sudo systemctl status MyService.service

roscore启动失败问题

需要注意服务的type,失败时因为用的simple,表示前台服务,会注销。启动程序应该用forking

相关推荐
曦月逸霜10 分钟前
离散数学-学习笔记(持续更新中~)
笔记·学习·离散数学
hunter145021 分钟前
windows server AD域与CA部署证书
笔记
im_AMBER22 分钟前
Leetcode 101 对链表进行插入排序
数据结构·笔记·学习·算法·leetcode·排序算法
laplace012342 分钟前
# 第四章|智能体经典范式构建 —— 学习笔记(详细版)
笔记·学习
别了,李亚普诺夫1 小时前
PCB设计大师篇笔记
笔记·嵌入式硬件·学习
西瓜堆1 小时前
提示词工程学习笔记: IT技术行业提示词推荐
笔记·学习
2301_810746311 小时前
CKA冲刺40天笔记 - day24 Kubernetes Clusterrole 和 Clusterrole Binding
笔记·容器·kubernetes
stars-he1 小时前
FPGA学习笔记-图书馆存包柜,乒乓球游戏电路设计
笔记·学习·fpga开发
Gary Studio2 小时前
simulink simscape(机器人方向)学习笔记
笔记·学习
Zeku2 小时前
20260111 - Linux驱动学习笔记:异步通知
笔记·stm32·freertos·linux驱动开发·linux应用开发