本文以ubuntu18.04为例,记录ubuntu使用shell脚本实现开机自启python程序
文章目录- 前言
- 一、编写shell脚本auto_run.sh
- 二、修改auto_run.sh权限
- 三、添加开启自启程序
- 打开gnome-session-properties
- 添加开启自启脚本
- 总结
前言
项目程序完成后大多情况是需要实现开机自启的,因为让非专业人员在ubuntu系统中通过敲命令行来启动程序是不太现实的,也会影响用户体验。我们希望用户通过重启能解决99%的问题。
一、编写shell脚本auto_run.sh建议在ubuntu系统下编写脚本,若从windows系统下写好在传到ubuntu系统上可能需要更改一下文件格式,可参考文档https://www.cnblogs.com/lalala-123/p/9661777.html
#!/bin/bash cd /home/nvidia/Desktop/Project/ #此处根据自己的main.py路径修改 while true do python3 main.py done
以上脚本实现了当main.py出现任何未知错误时,自动重启程序,如果不需要可以把while true do done去掉。
注意:若是在arm架构下(jetson系列盒子,树莓派),建议在python3前面加上OPENBLAS_CORETYPE=ARMV8,否则可能会出现illegal instruction (core dumped)的报错,即在arm架构下对应的shell脚本变成:
#!/bin/bash cd /home/nvidia/Desktop/Project/ #此处根据自己的main.py路径修改 while true do OPENBLAS_CORETYPE=ARMV8 python3 main.py done二、修改auto_run.sh权限
这里需要对auto_run.sh开启权限,cd到auto_run.sh所在路径,
sudo chmod -R 777 auto_run.sh
不开启权限可能会出现Permission denied提示。
三、添加开启自启程序 打开gnome-session-properties在终端中输入:
gnome-session-properties
出现类似如下界面:
点击Add
Name、Comment按照自己理解填写即可。
Command是最重要的部分,如果需要开机后前台运行程序,即出现终端,可以填写如下命令:
gnome-terminal -- bash -c /home/nvidia/Desktop/Project/auto_run.sh
此处根据自己的auto_run.sh路径修改。
之后就应该大功告成了。
下面总结下整体思路:
1.编写shell脚本来启动python程序;
2.通过gnome-session-properties来添加shell脚本的自启(也就实现了python程序的自启)
2021年11月16日13:58:14
参考文档:
https://blog.csdn.net/mathlxj/article/details/106745367
如果阅读本文对你有用,欢迎一键三连呀!!!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)