Configuration NAS Mnemosyne
Reference Information
- Device: Synology NAS DS409+
- Name: Mnemosyne
- Disk Station Manager: http://mnemosyne:5000, log in with admin account admin
- SSH: root@mnemosyne (same password as admin account)
- Configuration files: /etc, /usr/syno/etc/smb.conf
- Samba Version: 3.0.20b
smbd -V
# Version 3.0.20b
- Samba Configuration file: /usr/syno/etc/smb.conf
- Mount requires to add iocharset=utf8 on the client side
- NFS version: supports version 2, 3, 4.
nfsstat -o all -234
Configuration
First install
- Mounted 4 harddrives Western Digital Caviar Green 2TB WD20EADS
- Plugged power & Ethernet (on home intranet), then power on.
- (under Linux) Launched DSAssistant.i386... Server not found
- (reboot in Windows) Launched Synology Assistant... found!
- Step-by-step installation (see data below)
- Disk formatting (system partition / data partition)
- Logged into Disk Station Manager (see data below)
- !!! login does not work with Internet Explorer (password not accepted) !!!
- Set up language
- Set up e-mail notification
- Created volume
- Created users
- Created shared folders
- Defined file sharing (windows,NFS)
Web interface
System — Network |
|
System — Language |
|
System — Time |
|
System — Notification |
|
System — Power |
|
System — Firmware Update: |
|
Privileges — Users: |
|
Privileges — Shared folders: |
|
Storage — Volume |
|
File Sharing — Win/Mac OS |
|
File Sharing — NFS |
|
File Sharing — Network Services |
|
Samba server
By default, directory created on shares have permissions 777. To change this, we disable CIFS extensions [2]:
unix extensions=no
To restart samba on the synology:
/usr/syno/etc/rc.d/S80samba.sh restart
Old solution — Another solution is to enforce permissions on the server side. For this, edit /usr/syno/etc/smb.conf, and add to [global]
section [3]:
create mask=644 security mask=644 directory mask=755 directory security mask=755 force create mode=644 force security mode=644 force directory mode=755 force directory security mode=755
Note this might interfere with synology defaults [4]. We don't apply this configuration because we use unison to backup the shares on a remote server, and the easiest solution is to sync permissions and uses 777/766 permission settings.
Upgrade firmware
TBC
Install optware
TBC
Extra packages
To install via ipkg:
ipkg install screen
ipkg install tmux
How-To
Enable SSH
- Enable SSH service
- To have root access, log in as user root, and use same password as admin account.
Client must explicitly specify charset utf8 in the mount line:
mount -t cifs //mnemosyne/photos /smb/mnemosyne/photos -o noperm,iocharset=utf8
If you get the error mount error(13): Permission denied
, you need to add the option sec:
mount -t cifs //mnemosyne/photos /smb/mnemosyne/photos -o noperm,iocharset=utf8,sec=ntlm
Enable NFS
(See HOW-TO page here)
- Enabled NFS service
- Edited NFS privilege for share volume1/backup, allow rw, for client minimoy
- Then from NFS client, tried
- Looking into NAS file /var/log/messages (need to ssh as root on the NAS), there is the line:
- So it seems that the connection is refused because the DNS name of the NFS client does not match the export line in file /etc/exports
sudo mkdir -p /net/mnemosyne/backup
sudo mount mnemosyne:/volume1/backup /net/mnemosyne/backup
# mount.nfs: access denied by server while mounting mnemosyne:/volume1/backup
... refused mount request from HOST00245402988d.HELL for /volume1/backup (/): no export entry
/volume1/backup minimoy.HELL(rw,no_wdelay,no_root_squash,insecure_locks,anonuid=0,anongid=0)
Found a working recipe on this page:
- Content of file /etc/exports
- Touched file /var/lib/nfs/rmtab (because non-existent) :
- On NFS client, mount the NFS share with:
/volume1/backup 172.19.100.102(rw,no_wdelay,no_root_squash,insecure_locks,anonuid=0,anongid=0)
touch /var/lib/nfs/rmtab
cd /
/usr/sbin/exportfs -a # Update list of exported filesystem
sudo mount mnemosyne:/volume1/backup /net/mnemosyne/backup
Open issues:
- How to make it to work using hostname instead of IP addess?
Additional problem is that at each boot DNS Relay table on the ADSL router is reset to 'HOSTxxxxxxxxxxx' for wired interface on the NFS client, hence making it not recognizable for the NFS server. - How to deal with Access Control? I want root to be mapped to nobody, and write access only allowed for one user (which requires password to login)?
This can be done with the following export line:
/volume1/backup minimoy.HELL(rw,no_wdelay,root_squash,insecure_locks)
Compile Unison
Instruction from Tom Booschaert ([5]).
# install OCaml, Gnu C Compiler en Make:
ipkg install ocaml
ipkg install gcc
ipkg install make
# get Unison source and unpack:
mkdir Unison_tmp
cd Unison_tmp
wget http://www.seas.upenn.edu/~bcpierce/unison//download/releases/stable/unison-2.32.52.tar.gz
# Other versions:
# wget http://www.seas.upenn.edu/~bcpierce/unison//download/releases/unison-2.27.57/unison-2.27.57.tar.gz
tar -xzf unison-2.32.52.tar.gz
# use make to compile:
cd unison-2.32.52
make NATIVE=false UISTYLE=text
# copy executable to bin folder so it can be executed anywhere:
cp unison /opt/bin/
- Compilation error
- When building with ocaml 3.12, we get the following error:
ocamlc -I lwt -I ubase -custom -g -c /root/build/tmp/unison-2.27.57/update.ml File "/root/build/tmp/unison-2.27.57/update.ml", line 1, characters 0-1: Error: The implementation /root/build/tmp/unison-2.27.57/update.ml does not match the interface update.cmi: Modules do not match:
sed -ri '/^module NameMap : Map/s/Map.S/MyMap.S/' update.mli
- test Unison
unison -version
# unison version 2.27.57
unison -selftest
# Contacting server...
# Connected [//Mnemosyne//root/test-a.tmp -> //Mnemosyne//root/test-b.tmp]
# Running internal tests...
# backups 1 (local)...
# backups 2...
# backups 2a...
# backups 3...
# backups 4...
# backups 5 (directories)...
# backups 6 (backup prefix/suffix)...
# links 1 (directories and links)...
# links 2 (symlink to nowhere)...
# Success :-)
Command-line reference
TBC
Statistics
Some statistics on NAS file transfer
Task | Source | Size | Time | Rate |
---|---|---|---|---|
DVD to NAS | Unicorn | 4,23GB | 15m48s | avg 4,687kB/s, peak 7,290kB/s |
DVD to NAS | Unicorn | 4,32GB | 16m03s | avg 4,708kB/s, peak 7,701kB/s |
DVD to NAS | Unicorn | 3,93GB | 14m34s | avg 4,717kB/s, peak 7,553kB/s |
DVD to HDD | Unicorn | 3,65GB | 4m49s | avg 13,263kB/s, peak 19,393kB/s |
HDD to NAS | Unicorn | 3,65GB | ~7m00s | avg 8,900kB/s |
DVD to NAS | Unicorn | 3,65GB | 11m23s | avg 5,612kB/s, peak 7,848kB/s |