文章目录:

  • 1 通过系统界面设置开机自动运行程序
    • 1.1 windows系统设置开机自动运行命令
    • 1.2 Linux开机设置开机自动运行命令
  • 2 Linux中设置开机自启动python脚本程序
    • 2.1 方法一:在`/etc/rc.local`中添加要运行的脚本命令
    • 2.2 方法二:在`/etc/profile`中添加要运行的脚本
      • 2.2.1 在`/etc/profile`中添加要运行的脚本
      • 2.2.2 知识拓展
    • 2.3 方法三:添加到桌面自动启动程序中
    • 2.3 方法四:使用crontab命令

想要做到某个程序在开机的时候自动启动,就要知道系统中哪些程序或者配置文件,是每次开机都是要先运行一遍的,我们只需要想办法把程序运行的命令放到指定的位置,就可以伴随着开机后自动运行!

1 通过系统界面设置开机自动运行程序

1.1 windows系统设置开机自动运行命令

在windows系统中,可以通过任务计划程序,把需要运行的程序命令,或者要运行的应用程序添加到一个任务中,这样在每次开机或指定的时间就可以运行该程序,具体请参考这篇博客

1.2 Linux开机设置开机自动运行命令

当然linux上也有可视化的界面,设置每次开机自动启动的应用或程序!

1、这是我的Mint系统(Ubuntu系统改造后的系统)中设置界面中的开机自启动程序

2、然后选择自定义命令

3、然后把你要运行的命令或者程序填写进入即可(当然你也可以写成一个bash脚本)然后在bash脚本中定义要运行的程序!

注意:

Jetson NanoJetson Xavier NX中并没有该设置界面,其他的嵌入式设备我也没有尝试,如果你设备也没有类似的设置界面,那就继续往下看吧!

2 Linux中设置开机自启动python脚本程序

先说明,我要开机运行如下的程序,让每次程序开机后就自动播放一段视频,我脚本程序的路径为:/home/zhihui/test_boot_up.py

python3 test_boot_up.py

注意:

  • 下面的所有linux开机自启动python程序的方法,我最终都是在Jetson nano上测试的!!!

2.1 方法一:在/etc/rc.local中添加要运行的脚本命令

1、用vim打开/etc/rc.local文件

sudo vim /etc /rc.local

2、在/etc/rc.local文件中添加你要运行的命令

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing./usr/bin/python3 /home/zhihui/test_boot_up.py &
exit 0

注意:

  • 自启动的脚本命令要放到exit 0之前
  • &:表示让命令在后台运行,不在命令行显示,当然你不加&也是可以的
  • 我的/etc目录下并没有rc.local文件,而且我尝试这种方法在Jetson nano上是没有成功的,大家可以自行尝试

2.2 方法二:在/etc/profile中添加要运行的脚本

2.2.1 在/etc/profile中添加要运行的脚本

1、先创建一个脚本文件:/home/zhihui/start.sh

vim ~/start.sh

当然,这个文件你可以放在任意的位置,记住start.sh文件的路径即可!

2、在 start.sh文件中添加要开机自启动的脚本命令

#!/bin/bash
sudo python3  /home/zhihui/test_boot_up.py

3、给start.sh文件加上可执行权限

sudo chmod +x /home/zhihui/test_boot_up.py

4、把/home/zhihui/start.sh添加到/etc/profile文件的末尾

sudo vim /etc/profile

然后把/home/zhihui/start.sh添加到配置文件的末尾

5、重新启动,看看程序有没有自动启动

sudo reboot

注意:

  • 我用这种方法可以成功自启动程序,但是有点小问题,每次打开后视频是在播放,但是界面不能够操作
  • 还有,这种方法你需要管理员权限

2.2.2 知识拓展

1、登录shell之后启会被运行的配置文件

登录shell时,linux会按一定规则读取启动几个配置文件:

/ect/profile$HOME/.bash_profile$HOME/.bashrc$HOME/.bash_login$HOME/.profile

其中 /ect/profile文件是系统默认主启动文件,系统上每个用户登录时都会执行

  • 1)命令行登录和ssh登录,shell会按照以下顺序,运行第一个被找到的文件,余下的会被忽略:
$HOME/.bash_profile$HOME/.bash_login$HOME/.profile

上面没有 $HOME/.bashrc ,因为该文件一般通过其他文件运行。

  • 2)图形界面登录,只加载/ect/profile$HOME/.profile,其他的会被忽略。

对于no-login shell,即图形界面打开的shell,只会读入$HOME/.bashrc文件,不会检查/etc/.profile等其他登录shell文件。

2、开机自动启动的服务程序

linux随机启动的服务程序都在/etc/init.d这个文件夹里,里面的文件全部都是脚本文件:

另外在/etc这个文件夹里还有诸如名为rc1.d, rc2.d一直到rc6.d文件夹,这些都是linux不同的runlevel,我们一般进入的X windows多用户的运行级别是第5级,也就是rc5.d,在这个文件夹下的脚本文件就是运行第5级时要随机启动的服务程序。需要注意的是,在每个rc (1-6).d文件夹下的文件其实都是/etc/init.d文件夹下的文件的一个软连接,也就是说,在 /etc/init.d文件夹下是全部的服务程序,而每个rc(1-6).d只链接它自己启动需要的相应的服务程序! 还 需要注意的一点是,在rc5.d里,每个链接的名字都是以S或者K开头的,S开头的表示是系统启动是要随机启动的,K开头的是不随机启动的。这 样,你就可以知道,如果我要哪个服务随机启动,就把它名字第一个字母K改成S就可以了,当然,把S改成K后,这个服务就不能随机启动了。Ubuntu系统运行级别: 0 系统停机状态 1 单用户或系统维护状态 2~5 多用户状态 。

2.3 方法三:添加到桌面自动启动程序中

1、创建文件:~/.config/autostart/MyScript.desktop

注意:

如果没有autosart目录就先创建一个目录

2、然后把要开机运行的命令添加到~/.config/autostart/MyScript.desktopExec中即可,如下:

[Desktop Entry]
Encoding=UTF-8
Name=MyScript
Comment=MyScript
Icon=gnome-info
Exec=python3 /home/zhihui/test_boot_up.py
Terminal=false
Type=Application
Categories=X-GNOME-Autostart-enabled=true
X-GNOME-Autostart-Delay=0

3、然后重启一下,看看是否会自动启动程序

sudo reboot

  • 推荐使用这种方法
  • 我使用这种方法可以成功运行程序!

2.3 方法四:使用crontab命令

是用crontab -e命令,打开配置文件,然后在配置文件中加入要运行的命令:

@reboot python3 /home/zhihui/test_boot_up.py

也可以加上睡眠时间:

@reboot (sleep 30; python3 /home/zhihui/test_boot_up.py)

参考:https://www.jianshu.com/p/06b140e598e3
参考:https://blog.csdn.net/qq_29113041/article/details/78675396
参考:https://www.xz577.com/j/24992.html
参考:https://stackoverflow.com/questions/24518522/run-python-script-at-startup-in-ubuntu
参考:https://raspberrypi.stackexchange.com/questions/4123/running-a-python-script-at-startup

欢迎大家关注笔者,你的关注是我持续更博的最大动力

原创文章,转载告知,盗版必究
微信:suihailiang0816 QQ:931762054 wx公众号:仰望星空的小随

Linux开机自动启动python脚本程序,或 Jetson nano或Jetson Xavier NX开机自动启动python脚本程序相关推荐

  1. astra pro相机(乐视/奥比中光相机)在JETSON NANO、TX2、NX上的ubuntu18.04+ros环境中的驱动及使用

    0 设备和环境 我用设备的是: jetson-nx 设备的环境: nano:Ubuntu18.04+ros-melodic 1 安装过程 (1)安装依赖 sudo apt-get install bu ...

  2. linux的系统监视器图片_用Nvidia Jetson Nano 2GB和Python构建一个价值60美元的人脸识别系统...

    作者|Adam Geitgey 编译|Flin 来源|medium 新的Nvidia Jetson Nano 2GB开发板(今天宣布!)是一款单板机,售价59美元,运行带有GPU加速的人工智能软件. ...

  3. linux的系统监视器图片_用Nvidia Jetson Nano 2GB和Python构建一个价值60美元的人脸识别系统 - 人工智能遇见磐创...

    作者|Adam Geitgey 编译|Flin 来源|medium 新的Nvidia Jetson Nano 2GB开发板(今天宣布!)是一款单板机,售价59美元,运行带有GPU加速的人工智能软件. ...

  4. python怎么另起一行阅读答案_使用Python+Dlib构建人脸识别系统(在Nvidia Jetson Nano 2GB开发板上)...

    Nvidia Jetson Nano 2GB开发板是一款新的单板机 售价59美元 运行带有GPU加速的人工智能软件.在2020年 你可以从一台售价59美元的单板计算机中获得令人惊叹的性能 让我们用它来 ...

  5. linux的系统监视器图片_用Jetson Nano构建一个价值60美元的人脸识别系统

    新的Nvidia Jetson Nano 2GB开发板(今天宣布!)是一款单板机,售价59美元,运行带有GPU加速的人工智能软件. 到2020年,你可以从一台售价59美元的单板计算机中获得令人惊叹的性 ...

  6. 使用Python+Dlib构建人脸识别系统(在Nvidia Jetson Nano 2GB开发板上)

    Nvidia Jetson Nano 2GB开发板是一款新的单板机,售价59美元,运行带有GPU加速的人工智能软件. 在2020年,你可以从一台售价59美元的单板计算机中获得令人惊叹的性能,让我们用它 ...

  7. 用Nvidia Jetson Nano 2GB和Python构建一个价值60美元的人脸识别系统

    作者|Adam Geitgey 编译|Flin 来源|medium 新的Nvidia Jetson Nano 2GB开发板(今天宣布!)是一款单板机,售价59美元,运行带有GPU加速的人工智能软件. ...

  8. yolov3在Linux主机端和jetson nano开发板上的部署,使用,以及tensorrt加速yolov3-tiny

    Linux 主机端上 darknet识别 图片识别:./darknet detect cfg/yolov3.cfg yolov3.weights data/dog.jpg 视频识别:./darknet ...

  9. Jetson温度监测/调节风扇转速/开机自启动风扇

    Jetson Xavier NX开机的时候风扇默认不转的,在温度升高后才会转动. 1 温度监测 1.1 第一种方法用sensors命令 首先需要安装 sudo apt install lm-senso ...

  10. Jetson Nano 从入门到实战(转载)(案例:Opencv配置、人脸检测、二维码检测)

    目录 1. Jetson Nano简介 2. Jetson Nano环境配置 2.1 开箱配件介绍 2.2 烧录系统 2.3 开机和基本设置 2.4 开发环境配置 2.4.1 更新源和软件 2.4.2 ...

最新文章

  1. 哈夫曼树--顺序结构(建立、编码、解码)
  2. oracle的clob赋值_Java处理(插入或修改)clob类型数据
  3. 如何提升研发人员的非技术才能
  4. PaperWeekly 第二十三期 --- 机器写诗
  5. 常用各种芯片手册大全_【汇总】超全面!国内芯片60个细分领域知名代表企业...
  6. .NET5全面拥抱Azure云,微软市值重回巅峰,那些年吹过的牛,都实现了!
  7. 怎么一步一步的开一家公司?
  8. 解题报告 poj 1087
  9. ReSharper卸载后Visual Studio的快捷键和智能提示消失
  10. 3.2自编码器(变分自编码器,VAE)
  11. 【Paper】英文文章图表规范和文献引用格式
  12. 卸载删除gitlab
  13. 2021年山东省安全员C证考试题库及山东省安全员C证考试报名
  14. 分享一些前端开发人员必备的工具,脚本和资源
  15. java freemarker转PDF和Word
  16. Linux系统设置开机自动挂载磁盘流程
  17. 导带电子浓度和价带空穴浓度
  18. python 手游自动化测试_Python+Appium实现APP自动化测试
  19. 前端全栈工程师进阶学习笔记
  20. Collectors.toList()的作用

热门文章

  1. DC中保存ddc格式文件(亲测有效!)save the unmapped design in ddc format
  2. mxh缩写英语_mxh的含义,mxh是什么的缩写,mxh的词语,mxh代表的意思
  3. 外贸出口管理系统亮点及重点
  4. 鼠标不能再Linux命令界面滚动,电脑鼠标不能上下滚动的解决方法
  5. WhatsApp网页版(电脑版)使用教程
  6. 电信系统服务器地址,中国电信专线dns服务器地址!DNS
  7. 资产配置那些事-标准普尔家庭资产象限图
  8. 电路复习——含耦合电感的电路与变压器
  9. win10下装黑苹果双系统
  10. 4.19华为技术面+4.21华为主管面(已OC)