【Linux】systemd 管理自启动

1. 创建服务

进入 /etc/systemd/system 目录下 编写一个我们所需要的服务:
创建服务

2. 编写服务

  # Unit:描述服务单元的总体信息
  # Description: 对服务的简单描述
  # After: 指定该服务应在网络启动后开始运行
  [Unit]
  Description=Start ROS2 Nodes and MicroXRCEAgent
  After=network.target
  
  # Service: 定义服务的具体行为和配置
  # Type=simple:这是服务的类型,表示 ExecStart 中定义的命令会启动该服务的主要进程。	
  # 默认情况下, systemd 会认为该进程将持续运行,直到服务终止。
  # ExecStart: 定义服务启动时执行的命令, 这里是启动一个 shell 脚本, 也可以替换为想使用的命令
  # 例如:  ExecStart=/bin/bash -c "echo hello"  
  # Restart=on-failure:如果服务因故障(非正常退出)停止,将自动重启。
  # User=jetson:指定运行该服务的用户是 jetson。
  [Service]
  Type=simple
  ExecStart=/home/jetson/transmissionrobot2_dev/start_ros2_node.sh
  Restart=on-failure
  User=jetson
 
  # Install: 定义如何将该服务与系统的启动过程相关联。
  # WantedBy=multi-user.target:表示当系统进入 multi-user 目标(即大多数服务运行的普通系统状态)时,该服   务将启动。
  [Install]
  WantedBy=multi-user.target

3. 启动服务

启动服务

4. 相关指令

# 查看服务状态:
systemctl status <service-name>

# 启动服务:
sudo systemctl start <service-name>

# 停止服务:
sudo systemctl stop <service-name>

# 启用服务开机自启动:
sudo systemctl enable <service-name>

# 禁用服务开机自启动:
sudo systemctl disable <service-name>

# 重启服务:
sudo systemctl restart <service-name>

# 查看所有服务的状态:
systemctl list-units --type=service
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

育碧不配有妈妈、

创作不易,自愿投币

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值