Creating Python Cron Job On Synology
Objective
To install a python script on Synology NAS and run it as a cron job.
Prerequisites
python
Install Python3 using the Package Center app in the DSM.
pip
SSH to the DiskStation and install pip with
$ wget https://bootstrap.pypa.io/get-pip.py $ sudo python3 get-pip.py $ rm get-pip.py
This will install pip at /volume1/@appstore/py3k/usr/local/bin/, but the pip command isn't automatically available.
$ pip -sh: pip: command not found $ sudo ln -s /volume1/@appstore/py3k/usr/local/bin/pip /usr/local/bin/pip $pip --version pip 9.0.3 from /volume1/@appstore/py3k/usr/local/lib/python3.5/site-packages (python 3.5)
This may be a viable alternative for installing pip:
$ sudo yum install python-pip $ sudo pip install --upgrade pip
virtualenv
Once pip is installed, use it to install virtualenv, and make sure the command is available from the command line:
$ sudo pip install virtualenv $ sudo ln -s /volume1/@appstore/py3k/usr/local/bin/virtualenv /usr/local/bin/virtualenv
Create a virtual environment for the python script:
$ virtualenv -p /volume1/@appstore/py3k/usr/local/bin/python3 venv
SSH key for GitHub
- Generate a SSH key
- Add the SSH key to the GitHub acccount
- The instructions on that page say to use
apt-getto installxclip.apt-getis not available on Synology. [1]xclipis being installed to copy the contents of the ssh key file from the command line, howeverxclipdoesn't seem to be readily available for Synology, so open up the key file and manually copy its contents instead.
- The instructions on that page say to use