家庭助理(Home Assistant)是一款基於 Python 的智能家居開源系統,支持衆多品牌的智能家居設備,能夠輕鬆實現設備的語音控制、跟蹤和控制家裏的全部設備, 並自動化控制,能完美的運行在樹莓派。在2017年,HomeAssistant因其出色,得到了開源界的Thomas-Krenn獎。正在有愈來愈多的用戶在使用Home Assistant。python
一、下載Raspberry Pi的系統鏡像並燒寫。linux
Raspbian預裝了大量用於教育,編程和通常用途的軟件。它有Python,Scratch,Sonic Pi,Java,Mathematica等等。燒寫工具咱們下載使用Etcher。git
二、在SD卡上新建一個ssh空白文件,準備經過putty登陸Raspberry Pi。若是打算使用WIFI鏈接網絡,要在SD卡根目錄下創建並編輯配置文件github
wpa_supplicant.conf編程
#priority 是多個網絡鏈接的優先級,值越大優先級越高,不能爲負數 network={ ssid = "你的 WIRI ID" psk = "你的 WIFI 密碼" priority = 5 } network={ ssid = "你的 WIRI ID" psk = "你的 WIFI 密碼" priority = 4 }
啓動後,此文件將寫入系統配置並由系統自動刪除。緩存
上面的配置對於jessie版來講,沒有任何問題,如是新的stretch版本,還要用網線鏈接作以下的操做:bash
確認wpa_supplicant.conf文件的位置網絡
sudo nano /etc/network/interfaces
在後面插入如下內容ssh
allow-hotplug wlan0 iface wlan0 inet manual wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
保存退出後,做以下操做工具
sudo systemctl enable wpa_supplicant.service
而後從新啓動系統,你的無線網卡應該能正常鏈接了。
三、更改登陸密碼,而後設置時區。
pi@raspberrypi:~ $ passwd Changing password for pi. (current) UNIX password: Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully pi@raspberrypi:~ $ sudo raspi-config Current default time zone: 'Asia/Shanghai' Local time is now: Fri May 4 10:35:40 CST 2018. Universal Time is now: Fri May 4 02:35:40 UTC 2018.
四、更換國內的更新源。
sudo nano /etc/apt/sources.list #將原內容註釋掉並添加以下兩行配置,注意raspbian的版本 deb http://mirrors.ustc.edu.cn/raspbian/raspbian/ stretch main non-free contrib rpi deb-src http://mirrors.ustc.edu.cn/raspbian/raspbian/ stretch main non-free contrib rpi
若是在之後更新或安裝軟件的時候出現相似以下的錯誤:
W: Some index files failed to download. They have been ignored, or old ones used instead.
還要修改 註釋掉/etc/apt/sources.list.d/ 下的raspi.list裏面的相關條目。
更改pip的國內的源
默認路徑下並不存在配置文件,須要新建,在linux默認的路徑是 $HOME/.pip/pip.conf
sudo mkdir .pip sudo nano .pip/pip.conf
而後在配置文件中寫入
[global] index-url = https://pypi.mirrors.ustc.edu.cn/simple/ [install] trusted-host = pypi.mirrors.ustc.edu.cn
index-url即源地址,trusted-host爲源地址的域名,因爲國內的源鏡像都未使用https協議,因此若是不添加信任域就會報警。
五、以上步驟順利完成後,進入home-assistant的安裝與配置階段。
5.1 安裝依賴關係
sudo apt-get install python3 python3-venv python3-pip
5.2 添加一個名爲Home Assistant的賬戶homeassistant。因爲此賬戶僅用於運行Home Assistant,所以添加額外參數-rm,以建立系統賬戶並建立主目錄。參數-G dialout將用戶添加到dialout組中。這是使用Z-Wave和Zigbee控制器所必需的。
sudo useradd -rm homeassistant -G dialout
5.3 接下來,咱們將建立一個安裝Home Assistant的目錄,並將全部者更改成該homeassistant
賬戶。
cd /srv sudo mkdir homeassistant sudo chown homeassistant:homeassistant homeassistant
5.4 接下來是建立並更改成Home Assistant的虛擬環境。這將做爲homeassistant
帳戶完成。
sudo su -s /bin/bash homeassistant cd /srv/homeassistant python3 -m venv . source bin/activate
5.5 一旦你激活了虛擬環境(注意提示符改變爲(homeassistant) homeassistant@raspberrypi:/srv/homeassistant $
),你將須要運行如下命令來安裝一個必需的python軟件包。
python3 -m pip install wheel
5.6 一旦你安裝了所需的Python包,如今就能夠安裝Home Assistant的了!
pip3 install homeassistant
經過以上的步驟,就完成了home-assistant的安裝過程。直接輸入命令,就會首次運行並自動下載安裝和緩存必要的庫/依賴項。
hass
您如今能夠經過 http:// ipaddress:8123 上的Web界面在Raspberry Pi上訪問您安裝的home-assistant了。
第一次運行home-assistant時,程序將在.homeassistant
目錄中建立配置/home/homeassistant
目錄並將下載安裝和緩存必要的庫/依賴項。此過程可視網絡狀況而定可能須要5到30分鐘。在此期間,訪問Web界面時可能會出現「網站沒法訪問」錯誤,這時要多一點耐心。這隻會在第一次發生,隨後的從新啓動將會更快。
因衆所周知的緣由,若是不能正常啓動,多是默認配置的模塊要訪問google 服務,編輯/home/homeassistant/.homeassistant/configuration.yaml文件,註釋掉與google相關的服務能解決不少錯誤提示或提升網頁訪問速度。
5.7 更新
要更新到最新版本的Home Assistant,請按照如下簡單步驟操做:
sudo su -s /bin/bash homeassistant source /srv/homeassistant/bin/activate pip3 install --upgrade homeassistant
一旦最後一個命令執行後,將從新啓動home-assistant服務以應用最新的更新。仍是要注意,某些更新可能須要較長時間才能啓動。在此期間,訪問Web界面時可能會出現「網站沒法訪問」錯誤。若是沒法正常啓動,請從發行說明檢查重大更改。
以上內容是本人一步步實踐後紀錄,因我的的使用環境不一樣,會有些差別,如碰到問題,請查詢官方網站或留言互動。
原創文章,轉載請註明出處。