Ubuntu配置开机自启动
一、 创建启动脚本
创建启动脚本start_control_ros.sh

#!/bin/bash # Wait for the network to be up (if needed) sleep 30 # Source your ROS setup.bash (adjust the path if necessary) source /opt/ros/noetic/setup.bash source /home/boat/duyiming_ws/devel/setup.bash export ROS_MASTER_URI=http://192.168.0.100:11311 export ROS_HOSTNAME=192.168.0.100 export ROS_IP=192.168.0.100 export ROS_LOG_MAX_DISK_BUFFER_SIZE=1024 # Launch your roslaunch file roslaunch test boat_modbus_TCP_speed_start.launch
二、创建 systemd 服务单元文件
2.1 编辑服务单元文件
创建一个 systemd 服务单元文件来管理你的启动脚本
sudo vi /etc/systemd/system/boat_start_ros.service
内容如下:

[Unit] Description=ROS Node Example After=network.target Wants=network-online.target [Service] Type=simple ExecStart=/home/boat/duyiming_ws/src/test/scrips/boat_start/start_control.sh Restart=always User=boat RestartSec=5 # 在重启尝试之间添加 5 秒延迟 [Install] WantedBy=multi-user.target
network.target
),确保在网络准备好后再启动。
always
表示始终重启,可以根据需要调整。
your_username
为你的实际用户名。2.2 设置文件权限并启用服务
设置文件权限:
sudo chmod +x /home/boat/duyiming_ws/src/test/scripys/boat_start/start_control.sh
sudo chmod 644 /etc/systemd/system/boat_start_ros.service
sudo systemctl daemon-reload # 重新加载 systemd 配置
sudo systemctl enable boat_start_ros.service
三、启动和管理服务
启动服务:
sudo systemctl start boat_start_ros.service
停止服务:
sudo systemctl stop boat_start_ros.service
重启服务:
sudo systemctl restart boat_start_ros.service
查看服务状态和日志:
sudo systemctl status boat_start_ros.service
四、查看日志
如果服务启动失败或遇到问题,你可以使用 journalctl
来查看系统日志:
journalctl -xe
分类:
Ubuntu
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术