Inhaltsverzeichnis
Sesam Client auf einem Synology NAS
Hat man ein Synology-NAS-System mit einem Atom oder anderen Intel Prozessor so kann man dort des Sesam Client installieren. Perfekt als Backup-Target mit dem Remote-Device-Server RDS.
CPU prüfen
Auf den aktuellen Systemen (03/2015) geht es am besten so:
cat /proc/cpuinfo | grep "model name"
Ist es ein Intel, kann es weiter gehen.
Volumes vorbereiten
Es hat sich bewährt für den Sesam-Datastore ein Volume > 1 vorzusehen und dort NUR Sesam-Backups zu halten, da der Sesam sonst mit der Berechnung des verfügbaren Platzes durcheinander kommt. Grösser 1, da die Optware immer im Volume 1 installiert wird und somit auch wieder dessen Füllstand beeinträchtigt. Leider lässt Synology Volumes nur in 1 GB Schirtten anlegen. Ich lege immer volume 1 mit 1 GB für Optware, Volume 2 für den Sesam und andre Volumes für andere Zwecke an.
Optware installieren
Siehe: http://www.synology-wiki.de/index.php/IPKG
Das sorgt für eine vorgefertigte Verzeichnisstruktur unter /opt die nützlich ist.
Sesam-Client herunterladen
Hier: http://download.sep.de/linux/other/i386/glibc24/ (64bit und andere glibc-Versionen haben nicht funktioniert) den passenden aussuchen und je nach Anwendungszweck „sesam-cli“ (Client) oder „sesam-rts“ (Remote-Device-Server mit Client) herunterladen.
Installation
Um Fehlern vorzubeugen zunächst /etc/init.d anlegen, falls es nicht existiert, da es auf einer Synology manchmal nicht existiert aber das Sesam Setup es voraussetzt:
mkdir /etc/init.d
Sesam auspacken und Setup starten:
BACKUP02> tar xfz sesam-rts-4.2.1.23-linux_i586.tgz BACKUP02> cd sesam_rts_4.2.1.23/ BACKUP02> ./sm_setup Found 1 valid archive(s): 'linux_rts.4.2.1.23.tgz,'. What do you want to install? (tapeserver,client) tapeserver Mode: 'tapeserver' In which directory do you want to install (If not existing it will be created): /opt/sesam To which SEPsesam server should be connected? sesam Got no IP address from sesam Warning: Got 'sesam' as name but didn't find an IP. GUI is included for type 'make_rds' Newest kit 'linux_rts.4.2.1.23.tgz' will be used. Starting installation 'make_rds' 'sesam' in dir '/opt/sesam' Got no IP address from sesam set into: gv_rw_info=/opt/sesam/var/work/info/ set into: gv_rw_ini_stpd=/opt/sesam/var/ini/stpd_conf/ /opt/sesam/var/ini/stpd_conf/ ... ... ...
Jetzt sollte sich schon das Profile sourcen lassen:
. /opt/sesam/var/ini/sesam2000.profile
Und der Sesam Status abfragbar sein:
BACKUP02> sm_main status 2015-03-05 20:08:44: sm_main[16875] started 2015-03-05 20:08:44: Arguments: sm_main status 2015-03-05 20:08:44: qm [ 2998]: online 2015-03-05 20:08:44: db : unused 2015-03-05 20:08:45: Found job: 2 passd 1 1911 19:14 2015-03-05 2015-03-05 20:08:45: passd [ 1911]: online 2015-03-05 20:08:45: Found job: 3 sms 1 1924 19:14 2015-03-05 2015-03-05 20:08:45: sms [ 1924]: online 2015-03-05 20:08:45: Found job: 4 stpd 1 1952 19:14 2015-03-05 2015-03-05 20:08:45: stpd [ 1952]: online 2015-03-05 20:08:45: Found job: 5 ctrl 1 1966 19:14 2015-03-05 2015-03-05 20:08:45: ctrl [ 1966]: online 2015-03-05 20:08:45: sepuler : unused 2015-03-05 20:08:45: rmi : unused STATUS=SUCCESS MSG=All deamons online
Damit das so bleibt sind ein paar Anpassungen nötig. Zum Einen für den Start:
cd /opt/etc/init.d/ mv /etc/init.s/sesam . ln -s sesam S10sesam ln -s sesam K10sesam
und zum Anderen für das Inifile, da es alle möglichen Scripte unter /etc erwarten:
cd /opt/etc mv /etc/sesam2000.ini .
Jetzt noch die Zeile
ln -s /opt/etc/sesam2000.ini /etc
an den Anfang (… nicht in die 1. Zeile …) des Init-Scripts /opt/etc/init.d/sesam
Um auf per USB angeschlossene Platten zuzugreifen muss man ein paar Tricks anwenden, da der Sesam nicht ohne „udevadm“ auskommt aber die Synology kein UDEV und somit auch kein „udevadm“ hat. Glücklicher weise bleibt auch bei einem Plattenwechsel das Device gleich. Folgendes Sctipt liefert dem Sesam die Daten, die er (vermeintlich … ich halte es für unnötig) braucht:
#!/bin/sh ls -l $4 2>&1 | grep "^brw" >/dev/null if [ $? -eq 0 ]; then echo "P: $4" echo "N: `echo $4 | tr "/" "\n" | tail -n1`" echo "E: DEVNAME=$4" echo "E: DEVPATH=$4" echo "E: DEVTYPE=partition" echo "E: ID_BUS=usb" echo "E: ID_FS_TYPE=ext4" echo "E: ID_FS_USAGE=filesystem" exit 0 else echo "device node not found" exit 1 fi
Es hat sich ausserdem bewährt „mount“ und „umount“ zu verlinken:
cd /opt/sesam/bin/sesam/ ln -s /usr/sbin/mount . ln -s /usr/sbin/umount .