天天看點

python程式開機自啟動_Python腳本開機自啟動(Linux)

Python腳本開機自動運作;本帖适用于使用systemd的Linux系統,現在流行的Linux發行版都使用systemd。

背景服務程式是随系統自啟動的,我們隻要把Python腳本配置為服務就行了。需要注意的一點是你Python腳本的啟動時機,它依賴不依賴其他服務(網絡連接配接、一些分區的挂載等等)。

1 Python腳本

一個你要自啟動的Python腳本,我使用 /home/snail/autorun.py為例。

2 建立Unit配置檔案

$ sudo vim /lib/systemd/system/autorun.service

寫入如下内容:

[Unit]

Description=Test Service

After=multi-user.target

[Service]

Type=idle

ExecStart=/usr/bin/python /home/snail/autorun.py

[Install]

WantedBy=multi-user.target

上面定義了一個叫 Test Service 的服務,它在multi-user環境起來之後運作;ExecStart參數指定我們要運作的程式;idle確定腳本在其他東西加載完成之後運作,它的預設值是simple。

注意使用絕對路徑。

為了獲得腳本的輸出資訊,我們可以重定向到檔案:

ExecStart=/usr/bin/python /home/snail/autorun.py > /home/snail/autorun.log 2>&1

更改配置檔案的權限:

$ sudo chmod 644 /lib/systemd/system/autorun.service

3 使配置檔案生效

$ sudo systemctl daemon-reload

$ sudo systemctl enable autorun.service

4 重新開機

$ sudo reboot

5 檢視服務狀态

$ sudo systemctl status autorun.service

python程式開機自啟動_Python腳本開機自啟動(Linux)
python程式開機自啟動_Python腳本開機自啟動(Linux)