Add configuration for Synology NAS
This commit is contained in:
parent
133692cf7e
commit
d8d60e8ffe
2 changed files with 211 additions and 0 deletions
|
@ -74,6 +74,182 @@ Running these commands will:
|
|||
- Launch Home Assistant and serve the web interface on [http://localhost:8123](http://localhost:8123)
|
||||
|
||||
</div> <!-- INSTALL-INSTRUCTIONS RASPBERRY -->
|
||||
|
||||
<div class='install-instructions synology' markdown='1'>
|
||||
|
||||
The following configuration has been tested on a Synology 415+ running DSM 5.2-5644 Update 3
|
||||
|
||||
Running these commands will:
|
||||
|
||||
- Install Home Assistant
|
||||
- Ebable Home Assistant to be launched on [http://localhost:8123](http://localhost:8123)
|
||||
|
||||
Using the Synology webadmin:
|
||||
- Install python3 using the Synology package centre
|
||||
- Create homeassistant user and add to the "users" group
|
||||
|
||||
SSH onto your synology & login as admin or root
|
||||
Check the path to python3 (assumed to be /usr/local/python3/bin)
|
||||
```bash
|
||||
$ cd /usr/local/python3/bin
|
||||
```
|
||||
Use PIP to install Homeassistant package
|
||||
```bash
|
||||
$ pip3 install homeassistant
|
||||
```
|
||||
Create homeassistant config directory & switch to it
|
||||
```bash
|
||||
$ mkdir /volume1/homeassistant
|
||||
$ cd /volume1/homeassistant
|
||||
```
|
||||
Create hass-daemon file using the following code (edit the variables in uppercase if necessary)
|
||||
```bash
|
||||
#!/bin/sh
|
||||
|
||||
# Package
|
||||
PACKAGE="homeassistant"
|
||||
DNAME="Home Assistant"
|
||||
|
||||
# Others
|
||||
USER="homeassistant"
|
||||
PYTHON_DIR="/usr/local/python3/bin"
|
||||
PYTHON="$PYTHON_DIR/python3"
|
||||
HASS="$PYTHON_DIR/hass"
|
||||
INSTALL_DIR="/volume1/homeassistant"
|
||||
PID_FILE="$INSTALL_DIR/home-assistant.pid"
|
||||
FLAGS="-v --config $INSTALL_DIR --pid-file $PID_FILE --daemon"
|
||||
REDIRECT="> $INSTALL_DIR/home-assistant.log 2>&1"
|
||||
|
||||
start_daemon ()
|
||||
{
|
||||
su ${USER} -s /bin/sh -c "$PYTHON $HASS $FLAGS $REDIRECT;"
|
||||
}
|
||||
|
||||
stop_daemon ()
|
||||
{
|
||||
kill `cat ${PID_FILE}`
|
||||
wait_for_status 1 20 || kill -9 `cat ${PID_FILE}`
|
||||
rm -f ${PID_FILE}
|
||||
}
|
||||
|
||||
daemon_status ()
|
||||
{
|
||||
if [ -f ${PID_FILE} ] && kill -0 `cat ${PID_FILE}` > /dev/null 2>&1; then
|
||||
return
|
||||
fi
|
||||
rm -f ${PID_FILE}
|
||||
return 1
|
||||
}
|
||||
|
||||
wait_for_status ()
|
||||
{
|
||||
counter=$2
|
||||
while [ ${counter} -gt 0 ]; do
|
||||
daemon_status
|
||||
[ $? -eq $1 ] && return
|
||||
let counter=counter-1
|
||||
sleep 1
|
||||
done
|
||||
return 1
|
||||
}
|
||||
|
||||
case $1 in
|
||||
start)
|
||||
if daemon_status; then
|
||||
echo ${DNAME} is already running
|
||||
exit 0
|
||||
else
|
||||
echo Starting ${DNAME} ...
|
||||
start_daemon
|
||||
exit $?
|
||||
fi
|
||||
;;
|
||||
stop)
|
||||
if daemon_status; then
|
||||
echo Stopping ${DNAME} ...
|
||||
stop_daemon
|
||||
exit $?
|
||||
else
|
||||
echo ${DNAME} is not running
|
||||
exit 0
|
||||
fi
|
||||
;;
|
||||
restart)
|
||||
if daemon_status; then
|
||||
echo Stopping ${DNAME} ...
|
||||
stop_daemon
|
||||
echo Starting ${DNAME} ...
|
||||
start_daemon
|
||||
exit $?
|
||||
else
|
||||
echo ${DNAME} is not running
|
||||
echo Starting ${DNAME} ...
|
||||
start_daemon
|
||||
exit $?
|
||||
fi
|
||||
;;
|
||||
status)
|
||||
if daemon_status; then
|
||||
echo ${DNAME} is running
|
||||
exit 0
|
||||
else
|
||||
echo ${DNAME} is not running
|
||||
exit 1
|
||||
fi
|
||||
;;
|
||||
log)
|
||||
echo ${LOG_FILE}
|
||||
exit 0
|
||||
;;
|
||||
*)
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
```
|
||||
Create links to python folders to make things easier in the future:
|
||||
```bash
|
||||
$ ln -s /usr/local/python3/bin python3
|
||||
$ ln -s /usr/local/python3/lib/python3.4/site-packages/homeassistant
|
||||
```
|
||||
Set the owner and permissions on your config folder
|
||||
|
||||
```bash
|
||||
$ chown -r homeassistant:users /volume1/homeassistant
|
||||
$ chmod -r 660 /volume1/homeassistant
|
||||
```
|
||||
Make the daemon file executable:
|
||||
```bash
|
||||
$ chmod -r 777 /volume1/homeassistant/hass-daemon
|
||||
```
|
||||
Copy your configuration.yaml file into the config folder
|
||||
That's it... you're all set to go
|
||||
|
||||
Here are some useful commands:
|
||||
- Start Home Assistant:
|
||||
```bash
|
||||
$ sh hass-daemon start
|
||||
```
|
||||
- Stop Home Assistant:
|
||||
```bash
|
||||
$ sh hass-daemon stop
|
||||
```
|
||||
- Restart Home Assistant:
|
||||
```bash
|
||||
$ sh hass-daemon restart
|
||||
```
|
||||
- Upgrade Home Assistant::
|
||||
```bash
|
||||
$ python3/pip3 install --upgrade homeassistant
|
||||
```
|
||||
|
||||
|
||||
Execute the following code in a console:
|
||||
|
||||
```bash
|
||||
$ sudo pip3 install homeassistant
|
||||
$ hass
|
||||
```
|
||||
</div> <!-- INSTALL-INSTRUCTIONS SYNOLOGY -->
|
||||
</div>
|
||||
|
||||
### {% linkable_title Troubleshooting %}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue