1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > Jetson nano开机自启动程序

Jetson nano开机自启动程序

时间:2023-06-26 19:52:07

相关推荐

Jetson nano开机自启动程序

目录

前言1.介绍2.创建开机自启动程序2.1 创建一个bash文件2.2 创建一个service文件2.3 添加权限2.4 移动service文件2.5 启动服务2.6 停止/重启服务2.7 取消开机自启动服务结语参考

前言

最近有个需求,需要在jetson nano开机自启动一个应用程序,最近看了几篇帖子,简单实现了其中一种,故此做个记录方便下次查看。此次使用的方法是systemd服务进程拉起方式,具体细节,大家自行查阅,这里只说明具体实现流程。

参考:Linux系统设置开机自动运行脚本的方法实例、Linux设置进程自启动(systemd,init)、Linux设置软件开机自启动的三种方式

1.介绍

这里实现一个部署在jetson nano上的yolov5算法程序的自启动功能,jetson nano每次开机后自动开启yolov5检测程序,PC端通过zmq实现远程画面显示。参考jetson nano模型部署、zmq远程画面显示

2.创建开机自启动程序

2.1 创建一个bash文件

首先需要创建一个bash文件start.sh,里面的内容为你需要拉起的可执行程序,比如我需要拉起yolov5检测程序,那么我的start.sh内容如下:

#! /bin/bashcd /home/zhlab/tensorRT_Pro-main/workspace./pro yolo

cd到指定目录,然后执行程序。大家可以执行bash start.sh检查下程序是否启动

2.2 创建一个service文件

创建一个service文件start.service,里面内容指定为你需要执行的bash文件的路径,比如我需要指定开机执行start.sh,那么我的start.service内容如下:

[Unit]Description=Run a Custom Script at StartupAfter=default.target[Service]ExecStart=/home/zhlab/tensorRT_Pro-main/workspace/start.sh[Install]WantedBy=default.target

大家只需要修改[Service]下的可执行bash文件的路径修改为你的路径即可,从服务的内容来看,我们最终还是会调用/home/zhlab/tensorRT_Pro-main/workspace/start.sh这个脚本

2.3 添加权限

start.sh以及start.service添加权限

sudo chmod 777 start.shsudo chmod 777 start.service

2.4 移动service文件

大家需要将创建的start.service文件移动到/etc/systemd/system下,当然你也可以直接在/etc/systemd/system创建service文件,具体移动指令如下

sudo mv start.service /etc/systemd/system

2.5 启动服务

现在只需要启动服务然后重启即可,需要执行的指令如下:

systemctl daemon-reloadsystemctl enable start.service// 启动刚才定义的service服务sudo reboot // 重启

演示如下图所示,重新开机后会启动start.service服务,去执行start.sh文件,从而去执行yolov5检测程序

图(1) 服务启动演示

重新开机后可以使用如下指令查看服务是否开启

systemctl status start.service

图(2) 服务状态查看

此时可以看到服务的状态是active(running)即激活状态,现在可以在PC端通过zmq远程显示yolov5推理的画面了,如下图所示:

图(3) zmq远程画面显示

2.6 停止/重启服务

停止服务指令如下

systemctl stop start.servicesystemctl restart start.service

图(4) 停止服务演示

上图演示了服务停止到服务重启的过程,可以看到服务状态的转变。

2.7 取消开机自启动服务

值得注意的是systemctl stop start.service只是停止了本次服务,但是当开机时服务又会重新启动,现在需要取消服务自启动,执行指令如下:

systemctl disable start.service// 取消自启动服务sudo reboot// 重启

演示如下图

图(5) 取消自启动服务演示

开机之后可以使用systemctl status start.service查看服务状态,会发现此时服务未启动,如下图所示

图(6) 取消自启动服务后服务的状态查看

特别注意!!!大家一定要知道自己开启了哪些服务以及对应的服务的功能,不要多次启动同一个程序

结语

关于jetson nano的开机自启动程序大家可以自行测试,具体的细节需要各位自行查阅。

感谢各位看到最后,创作不易,读后有收获的看官帮忙点个👍。

参考

Linux系统设置开机自动运行脚本的方法实例Linux设置软件开机自启动的三种方式Linux设置进程自启动(systemd,init)jetson nano模型部署

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。