ubuntu 开机启动hass
Systemd
Systemd是目前新版的linux比较常用的管理后台服务的机制。在Linux的发行版Fedora、ArchLinux,Debian(8或以上),Ubuntu(15.04以上),CentOS,Redhat都使用systemd机制。
注:运行命令ps -p 1 -o comm=看是否返回“systemd”,可以检测系统是否运行了systemd后台服务管理机制。
以root身份创建文件/etc/systemd/system/home-assistant@[user].service,其中“[user]”替换为你希望运行hass的用户名。文件内容为:
1 2 3 4 5 6 7 8 9 10 11 | [Unit] Description=Home Assistant After=network.target [Service] Type=simple User=%i ExecStart=/usr/bin/hass [Install] WantedBy=multi–user.target |
注1:修改文件中ExecStart指向的文件路径修改为系统中实际的路径(不同系统安装hass的目录可能不同,可以使用命令whereis hass获得)。
注2:如果是在Python的虚拟环境(virtualenv)中安装的HomeAssistant,需要修改文件中ExecStart指向的命令加上参数-c,指定hass的配置文件目录。例如:ExecStart=/srv/homeassistant/bin/hass -c "/home/homeassistant/.homeassistant"
注3:如果是在docker下运行HomeAssistant,文件会相对复杂一些,可以参见docker的相应说明。
以下systemd相关的控制命令供参考:
sudo systemctl --system daemon-reload:重新加载systemd的配置文件。sudo systemctl enable home-assistant@[user]:设置home-assitant服务为自启动。sudo systemctl disable home-assistant@[user]:从自启动中去除home-assitant服务。sudo systemctl start home-assistant@[user]:手工启动home-assitant服务(命令中start可以替换成stop、restart、status,完成停止、重启、查看服务状态等功能)。sudo journalctl -f -u home-assistant@[user]:查看hass的日志输出。sudo journalctl -f -u home-assistant@[your user] | grep -i 'error':查看hass的日志输出中的error部分。
评论
发表评论