We recently got a Synology DS412+ as an office NAS. First thing to do is to set up a proper Linux environment on the device.
Gaining root on Synology NAS is easy – just log in as root with the same password as admin. However, most (all?) commands are mapped to BusyBox, which provides watered-down version of many *nix commands. Good thing is there’s an active modding community and it’s also sanctioned by Synology. A good place to start is here.
First install the bootstrap
cd /tmp wget http://ipkg.nslu2-linux.org/feeds/optware/syno-i686/cross/unstable/syno-i686-bootstrap_1.2-7_i686.xsh chmod u+x syno-i686-bootstrap_1.2-7_i686.xsh ./syno-i686-bootstrap_1.2-7_i686.xsh
Then install optware-devel, which installs many of the common *nix tools and binaries for building programs from tar source.
/opt/bin/ipkg install optware-devel
Unfortunately, installation fails halfway ‘cos wget-ssl which is included in optware-devel conflicts with the wget installed.
# ipkg install -verbose_wget wget-ssl Installing wget-ssl (1.12-2) to root... Nothing to be done An error ocurred, return value: 1. Collected errors: ERROR: The following packages conflict with wget-ssl: wget
Someone posted a solution here and here, but both are for arm-based devices. Digging further, I found the source of the i686 packages here and with that the problem is resolved.
cd /tmp wget 'http://ipkg.nslu2-linux.org/feeds/optware/syno-i686/cross/unstable/libidn_1.25-1_i686.ipk' wget 'http://ipkg.nslu2-linux.org/feeds/optware/syno-i686/cross/unstable/wget-ssl_1.12-2_i686.ipk' ipkg remove wget ipkg install libidn_1.25-1_i686.ipk ipkg install wget-ssl_1.12-2_i686.ipk export PATH=/opt/bin:$PATH ipkg update ipkg install optware-devel
The export step is important, ‘cos it will make ipkg use the new wget.
A few other things to finish up,
- ipkg install util-linux
- install bash, vim, screen
- change default root shell to /opt/bin/bash,
- add /opt/bin to PATH in .profile,
- set PS1=’\h:\w\$ ‘