这个方式不用修改 rc.local 文件。机制上类似于 Windows 的“开始”菜单中的“启动”菜单。方法如下:
在 /home/pi/.config 下创建一个文件夹,名称为 autostart,并在该文件夹下创建一个xxx.desktop文件(文件名以.desktop结尾,前面可以自定义),文件内容如下:
[Desktop Entry] Name=example Comment=My Python Program Exec=python /home/pi/example.py Icon=/home/pi/example.png Terminal=false MultipleArgs=false Type=Application Categories=Application;Development; StartupNotify=true
以上 Name、Comment、Icon 可以自定,分别表示这个启动项目的名称、备注以及显示的图标。Exec 表示调用的指令,和在终端输入运行脚本的指令格式一致。
之后 sudo reboot 重启,就可以看到 example.py 在树莓派启动后也自动启动了。
这个跟lxde有关吧,太麻烦,而且卸载图形界面后可能会失效。
在linux下,最正确的姿势是把那个脚本作为一个服务启动,需要在/etc/init.d/中写一个来控制那个程序的脚本(如启动,停止,重启,查看状态),并在/etc/rcX.d/中建一个符号连接到控制脚本(X改成对应的运行级别,默认是2),来实现在对应运行基本中的自启动。像apache、mysql这种“正宗”的程序都是这么做的。
当然,如果只是个小程序,/etc/rc.local是最简单的做法
没错,多谢楼上补充。
为楼上WUSIYU点赞,透彻!
我使用上述方法并不成功,在启动桌面系统后,可以看到系统运行了我要运行的充的窗口,但是窗口启动并没有完成,就直接退出了,在任务器中也看不到