2025年3月5日 星期三

在RPI 4 上設定開機啟動你的程式

在 Raspberry Pi 4 上,如果沒有 rc.local 文件,這是因為現代的 Linux 系統使用了 systemd 來管理啟動過程。你可以使用 systemd 創建一個自定義的服務來在啟動時執行你的應用程序。

以下是如何使用 systemd 設置開機啟動的步驟:

1. 創建 systemd 服務文件

  1. /etc/systemd/system/ 目錄中創建一個新的服務單元文件。例如,我們可以將其命名為 appPlayer.service

    sudo nano /etc/systemd/system/appPlayer.service
  2. 在該文件中,添加以下內容:

    [Unit]
    Description=appPlayer Application After=graphical.target [Service] ExecStart=/home/pi/appPlayer WorkingDirectory=/home/pi Environment="LD_LIBRARY_PATH=/usr/local/qt6/lib:$LD_LIBRARY_PATH" User=pi Restart=always RestartSec=5 [Install] WantedBy=multi-user.target
    • ExecStart 指定你的應用程序的路徑。
    • Environment 部分設置需要的環境變量。
    • Restart=always 表示如果應用崩潰或退出,systemd 會自動重新啟動它。
  3. 保存並退出 nano(按 Ctrl + X,然後按 Y 確認保存,再按 Enter)。

2. 重新加載 systemd 並啟用服務

  1. 重新加載 systemd 配置:

    sudo systemctl daemon-reload
  2. 啟用服務,使其在啟動時自動運行:

    sudo systemctl enable appPlayer.service

3. 啟動服務並檢查狀態

你可以立即啟動這個服務並查看其狀態:

sudo systemctl start appPlayer.service
sudo systemctl status appPlayer.service

如果一切正常,這會啟動你的應用程序並顯示該服務的狀態。

4. 重啟系統

現在,服務應該會在每次系統啟動時自動啟動。如果你想檢查是否自動啟動,可以重新啟動 Raspberry Pi:

sudo reboot

在系統啟動後,應該會自動運行 appPlayer

沒有留言:

張貼留言