較新的Linux發行版趨向於用systemd
管理守護進程,如果您不確定系統是否正在使用systemd
,您可以使用以下命令進行檢查:
ps -p 1 -o comm=
如果上述命令返回字符串systemd
,說明系統正在使用systemd
我是在python的虛擬環境中運行的Home Assistant,所以編輯下面的內容就可生效。
sudo nano -w /etc/systemd/system/home-assistant@[your user].service
[Unit] Description=Home Assistant After=network-online.target [Service] Type=simple User=%i ExecStart=/srv/homeassistant/bin/hass -c "/home/homeassistant/.homeassistant" [Install] WantedBy=multi-user.target
如果Home Assistant不是安裝在/srv/homeassistant
,請適當修改 ExecStart=
這一行。
下面需要重新加載systemd
讓守護程序知道新配置。
sudo systemctl --system daemon-reload
要讓Home Assistant在啟動時自動啟動,請啟用該服務。
sudo systemctl enable home-assistant@[your user]
要禁用自動啟動,請使用此命令。
sudo systemctl disable home-assistant@[your user]
要立即啟動Home Assistant,請使用此命令。
sudo systemctl start home-assistant@[your user]
您也可以用start
上面的替代stop
方法停止Home Assistant,或者restart
重新啟動Home Assistant.
要獲得Home Assistant的日志輸出,請使用簡單journalctl.
sudo journalctl -f -u home-assistant@[your user]
由於日志可以很快滾動,因此您可以選擇僅查看錯誤行:
sudo journalctl -f -u home-assistant@[your user] | grep -i 'error'
在Home Assistant工作時,您可以輕松地重新啟動系統,然后通過&&
組合上述命令來觀察日志輸出
sudo systemctl restart home-assistant@[your user] && sudo journalctl -f -u home-assistant@[your user]
如果你在Docker容器中運行Home Assistant 或安裝環境不同,請訪問官網自啟動指南解決問題。