<hr> 前言
在Ubuntu下,偶然候盼望能够开机后能够主动运行某些命令,比如ROS小车等,盼望能够开机自启动,而不是每次都通过ssh等连接后再运行roslaunch xxxx xxxx.launch等命令。这里基于service实现。
1. service介绍
在Ubuntu中,service是一个用于管理体系服务的命令行工具,它答应用户启动、停止、重启、查看服务状态等操纵。随着Ubuntu版本的更新,systemd成为了大多数Ubuntu版本(特别是Ubuntu 15.04及以后版本)的初始化体系和服务管理器,徐徐取代了旧的SysVinit和Upstart体系。
1.1 service命令的基本用法
service命令的基本语法如下:
- 选项:通常不需要指定,但在某些情况下可以使用选项来修改命令的行为。
- 服务名:要操纵的服务名称,这通常对应于/etc/init.d/目次下的脚本名称(对于SysVinit和Upstart)或systemd的服务单元文件(.service)的名称。
- 命令:要执行的操纵,如start、stop、restart、status等。
1.2. service命令的常用操纵
- 启动服务:sudo service 服务名 start
- 停止服务:sudo service 服务名 stop
- 重启服务:sudo service 服务名 restart
- 查看服务状态:sudo service 服务名 status
- 列出所有服务:systemctl list-units --type=service
1.3. service命令与systemd的兼容性
在systemd体系中,service命令的许多操纵实际上是通过调用systemd的systemctl命令来实现的。例如,当你使用sudo service 服务名 start时,systemd会查找与该服务名对应的.service文件,并使用systemctl start 服务名.service来启动服务。
2. Example之开机启动ROS
2.1 创建服务单元文件
2.1.1 新建.service文件
通过nano,vim等,在/etc/systemd/system/下新建.service文件,如:
[code][/code]
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |