樹莓派開機自啟動程式
最近在專案中需要用到樹莓派開機自啟動多個程式,網上也看到很多前輩的經驗,學到很多。現在將自己實踐的結果作一分享,希望跟大家一同學習!
網上看到方法有很多,有一篇感覺很好,連線如下:
其中提到修改rc.local檔案的方法,但是我沒有成功;另一種方法是將需要執行的程式作為桌面程式實現上電自啟動,具體方法如下:
一、在/home/pi/.config下找到autostart(沒有就新建一個)的資料夾
進入/home/pi/.config資料夾:
$:cd /home/pi/.config
檢視autostart目錄是否存在 :
$:ls -l
如果不存在,建立autostart目錄;否則,跳過這一步:
$: mkdir autostart
進入autostart目錄:
$: cd autostart
二、在該資料夾內建立一個.desktop結尾的檔案(自擬檔名,注意字尾必須是.desktop)
建立.desktop檔案:
$: touch filename.desktop
編輯.desktop檔案:
$: vim filename.desktop
進去之後,按A鍵或O鍵鍵進入編輯模式。
三、在第二步中新建的檔案中新增如下內容(新增是將後面小括號內的說明連同小括號一同去掉):
[Desktop Entry](注意:方括號必須是英文格式的方括號)
Name=python(名字自擬)
Comment=Python program(內容說明自擬)
Exec=python3 wifitz.py(這裡是中端執行的命令,比如我這裡在終端命令啟動程式的話,我在命令提示符後面執行
命令$:python3 wifitz.py(程式的路徑最好是絕對路徑,比如我這裡應該是
$:python3 /program/wifitz.py))
Icon=/home/pi/python_games/4row_arrow.png(圖示自擬,可以從系統其他地方直接法制個圖示路徑過來)Terminal=false
MultipleArgs=false
Type=Application
Categories=Application;Development;
StartupNotify=true
(第三步操作具體詳見上述連結)
這裡主要是第一行的方括號需要注意下(本人已入坑),還有第4行的執行程式語句最好加絕對路徑。
四、儲存檔案重啟樹莓派,sudo reboot
編輯結束後,先按Esc鍵,再按 :+; 鍵,左下角出現:時,用wq儲存檔案並返回到終端。
重啟樹莓派,sudo reboot。
五、重啟成功後,在linux終端使用命令ps aux檢視當前執行的所有程式,如果程式正常啟動,可以在這裡找到,本人查詢結果如下圖:
六、如果需要啟動多個程式,我試過用上述方法新增三個.desktop檔案,結果失敗了;所以,如果需要啟動多個程式,建議建立一個.sh指令碼檔案,將多個程式的終端啟動命令新增到.sh檔案中,然後將上述第三步中的第4行改為Exec=./filename.sh。接下來執行第4步和第5步檢視執行結果,我這裡能夠成功啟動三個python程式,如下圖: