-
Notifications
You must be signed in to change notification settings - Fork 151
Install on Synology NAS
ARM & intel based devices are supported. DSM version must be 3.2 or higher. Use armv5 installer for Marvell Kirkwood mv6282 cpu, you can use armv7 installer for newer ARM cpu's. Although armv7 repo was compiled with cortex-a9 optimization it was successfully tested on Marvell Armada XP based NAS.
1. Create a folder on your hdd (outside rootfs)
mkdir -p /volume1/@entware-ng/opt
Make sure that /opt
folder is empty (Optware is not installed), we will remove /opt
folder with its contents at this step.
2. Remove /opt
and create a symlink
rm -rf /opt
ln -sf /volume1/@entware-ng/opt /opt
3. Run install script
- for armv5
wget -O - http://pkg.entware.net/binaries/armv5/installer/entware_install.sh | /bin/sh
- for armv7
wget -O - http://pkg.entware.net/binaries/armv7/installer/entware_install.sh | /bin/sh
- for x86-32
wget -O - http://pkg.entware.net/binaries/x86-32/installer/entware_install.sh | /bin/sh
- for x86-64
wget -O - http://pkg.entware.net/binaries/x86-64/installer/entware_install.sh | /bin/sh
- for MIPS
wget -O - http://pkg.entware.net/binaries/mipsel/installer/installer.sh | /bin/sh
4. Edit /etc/rc.local
file with a text editor and insert following strings
/bin/ln -sf /volume1/@entware-ng/opt /opt
/opt/etc/init.d/rc.unslung start
at the end of this file, but before 'exit 0'. The last line ensures that Entware services will be started at boot.
Note: As of DSM 6.0, /etc/rc.local
is no longer executed as part of the boot process (see this thread). Instead you have two options.
(1) Documented in the Synology DSM6.0 3rd-Party Package Developer Guide, custom startup scripts should be placed in /usr/local/etc/rc.d (alt image capture).
Example:
$>sudo vi /usr/local/etc/rc.d/entware-startup.sh
entware-startup.sh
#!/bin/sh
case $1 in
start)
mkdir -p /opt
mount -o bind /volume1/@entware-ng/opt /opt
/opt/etc/init.d/rc.unslung start
;;
stop)
;;
esac
(2) Alternatively, make an executable script and use the Task Scheduler to create a triggered task that runs on boot. The script would contain:
#!/bin/sh
mkdir -p /opt
mount -o bind /volume1/@entware-ng/opt /opt
/opt/etc/init.d/rc.unslung start
5. Add the following line in the end of /root/.profile
file
. /opt/etc/profile
It will add /opt/bin
and /opt/sbin
to the PATH variable for interactive login.
Remark! According to https://github.com/Entware-ng/Entware-ng/issues/353 in DSM 6.0 /etc/profile
should be modified.
6. Reboot your NAS.
You can use mount -o bind
instead of creating symlinks. In this case execute the following commands on step 2:
mkdir -p /opt
mount -o bind /volume1/@entware-ng/opt /opt
and insert the following lines to /etc/rc.local
or your scheduled task from step 4:
mkdir -p /opt
mount -o bind /volume1/@entware-ng/opt /opt
/opt/etc/init.d/rc.unslung start
Firmware update erases /opt
folder. You should deploy Entware-ng outside of rootfs and create symlink to /opt
or use mount -o bind
. After firmware update you may need to edit /etc/rc.local
and /root/.profile
files once more.