Neuigkeiten:

Privates MODX und LINUX BLOG, User Registrierung ist deaktiviert! Fragen oder Tipps? Bitte per Matrix: @jolichter:tchncs.de

Hauptmenü

NAS Iomega ix2 unter Ubuntu

Begonnen von Jo, 2010-12-12 | 02:24:45

« vorheriges - nächstes »

Jo

Hier geht es um:


  • Iomega StorCenter ix2-200 mit Ubuntu 10.04 LTS betreiben
  • Datentransferrate 1 Gigabit ;-( Iomega suggeriert damit ein schnelles NAS!)
  • SMB/CIFS Netzwerkfreigaben mounten
  • NFS Netzwerkfreigaben mounten (Linux)

Hintergrund:
Ich benutze einen Iomega ix2-200 NAS (Network Attached Storage) als reines Backup-System für meine Linux PC's. Dieser NAS mit 2*2GB im RAID-1 Verbund (Festplatten werden gespiegelt) ist für Windows, MAC OS X und Linux geeignet.  Um Datenverlust bei einem plötzlichen Stromausfall ohne USV zu verhindern würde ich auf jeden Fall den Festplatten Cache ausschalten!

Leider sind nicht alle Bauteile redundant, was bei einem evt. Ausfall zu beachten ist!

Nachdem der NAS ins Netzwerk integriert ist, holt sich der NAS seine IP-Adresse über den DHCP-Server. Gesteuert wird dieser über ein Web-Interface, das dank benutzerfreundlicher Oberfläche einfach zu bedienen ist. Da das NAS als Backup-System fest in meinem Netzwerk eingebunden ist, habe ich den DHCP-Server abgeschaltet und eine feste IP dem NAS vergeben (z.B. 192.168.0.100).

Tip: Wer den Medienserver nicht benötigt kann diesen deaktivieren. Bei mir hat der Standbymodus die Festplatten nicht abgeschaltet - erst als ich den Medienserver ausgeschaltet habe.

Einrichten:
Wer den NAS unter Linux und Windows betreiben will kann dieses auf Basis von Samba ins Netzwerk einbinden. Smbfs ist ein Dateisystem, dass das SMB/CIFS-Protokoll versteht. Das ist ein Protokoll, das von Windows oder LAN Manager verwendet wird, um miteinander zu kommunizieren. Dieses ist im Paket smbfs enthalten:

sudo aptitude install smbfs

Das hier beschriebene Verfahren lässt sich auf jede Linux-Distribution anwenden (abgesehen von sudo ;-).

Zuerst wird ein neues Verzeichnis erstellt, das uns später als lokaler Mountpoint für die SMB/CIFS-Netzwerkfreigabe dient:

sudo mkdir /media/STORAGE

Anschließend mountet man manuell die Freigabe des NAS "Backups" vom Samba-Server, der in diesem Fall die IP-Adresse 192.168.0.100 besitzt:

sudo mount.cifs //192.168.0.100/Backups /media/STORAGE

Anmerkung: Auf die Idee dass man die IP+Namen des Verzeichnisses braucht und nicht IP+Pfad+Share muss man auch erst mal kommen ;-)

Nun kann man auf dem Desktop-PC per SMB/CIFS freigegebene Dateien direkt über den lokalen Mountpoint /STORAGE zugreifen.

Diese NAS ist ideal für das Linux Backup-Tool Back-In-Time.
Damit mache ich z.B. vollautomatisch täglich/wöchentlich oder monatliche inkrementelle Backups per Netzwerk und bei evt. Störungen sendet mir die NAS eine eMail  :smilie:

Übrigens: Bei großen Datenmengen ist ein Gigabit Router (1 GBit/s-LAN = 125 MB/s) zu empfehlen!
Bei WLAN mit Draft-n sind es wohl effektiv 30-40% was von den 300 MBit raus zu holen ist:


  • Theorie: 300 MBit/s = 37,5 MB/s Datentransfer
  • in der Praxis sind das dann wohl 15 MB/s Datentransfer bei 40%tiger Effektivität; aber:

Unter NFS (reines Linux Netzwerk-Protokoll von Sun) ist die Datentransferrate zwar schneller als unter Samba,
jedoch komme ich nur auf ca 15 MB/s an einem 1GBit Router von D-LINK DIR-655 - selbst mit Jumbo Frames (MTU 9000). Ich rede hier von einer großen 4GB Testdatei (Film) und nicht von vielen kleinen Dateien.

Ich habe testweise diese 4GB-Datei auf einen 2ten PC mit 55 MB/s kopiert (theoretisch kann diese HDD 120 MB/s).
Was so einen schnelle Platte im GBit-Netz bringen kann ;-) Schade der Iomega NAS ist davon weit entfernt.

Der Gigabit-LAN an diesem NAS ist ein Witz? Iomega suggeriert damit ein schnelles NAS!
Nur was bringt ein GBit-Lan wenn die Platten und/oder die CPU lahm ist?
Meine externe 500GB-USB-2.0-Festplatte (2 Zoll) bringt es immerhin auf ca. 22 MB/s Datentransfer.

Dieser NAS hat für mich nur einen Vorteil, dass er automatisch im Hintergrund seine Backups verrichtet.
Unter schnell verstehe ich was anderes!




CIFS/SMB-Freigabe mounten via script

Leider gibt es in neueren Ubuntu-Versionen bei einem Eintrag in die Konfigurationsdatei /etc/fstab immer häufiger Probleme, weil der Boot-Vorgang durch Upstart so beschleunigt wird, dass das Netzwerk nicht rechtzeitig zur Verfügung steht. Mit WLAN funktioniert der Eintrag in /etc/fstab sowieso nicht.
Eine Alternative zum systemweiten statischen Einbinden mittels fstab ist ein persönliches Mount-Skript. Hierzu legt man in seinem Heimverzeichnis eine leere Textdatei beliebigen Namens (Beispiel mount_storage.sh) an und trägt folgendes ein:
#! /bin/bash
# NAS-System als Backup Laufwerk mounten
gksudo mount -t cifs //192.168.0.100/Backups /media/STORAGE


und eine unmount_storage.sh:
#! /bin/bash
# NAS-System als Backup Laufwerk unmounten
gksudo umount.cifs /media/STORAGE


Außerdem muss das Skript noch ausführbar gemacht werden ( "Eigenschaften > Zugriffsrechte").

Um Freigaben mittels mount.cifs bzw. mount -t cifs systemweit einzubinden, werden Root-Rechte benötigt.
Um diese auch ohne Root-Rechte persönlich einzubinden und wieder auszuhängen zu können, muss für mount.cifs und umount.cifs das SUID-Bit gesetzt sein. Ab Ubuntu 10.04 ist dies nicht mehr standardmäßig der Fall und man muss dafür in einem Terminal folgende Befehlszeilen eingeben:

sudo chmod +s /sbin/mount.cifs
sudo chmod +s /sbin/umount.cifs

Hinweis:
Es kann sein, dass bei Updates von smbfs das SUID-Bit zurückgesetzt wird und es deshalb danach neu zu setzen ist.

Nun kann auf das gksudo in den beiden Scripts verzichtet werden und in Startprogramme verlinkt werden, z.B.:

#! /bin/bash
# NAS-System als Backup Laufwerk mounten
mount.cifs //192.168.0.100/Backups ~/STORAGE -o guest

    und

#! /bin/bash
# NAS-System als Backup Laufwerk unmounten
umount.cifs ~/STORAGE


Bei einem evt. Backup von /home muss der Ordner /home/username/STORAGE ausgeschlossen werden!




Mein Favorit: NFS-Freigabe
NFS sollte nur bei einem vorhandenen Netzwerk aus Linux- oder UNIX-Computern aktiviert werden:

#mounten
gksudo mount -t nfs 192.168.0.100:/nfs/Backups ~/STORAGE

#unmounten
gksudo umount.nfs ~/STORAGE


Vorteil: Datentransferrate ist schneller als cifs - jedoch nicht verwendbar unter Windows  :p


Jo  :cool:

Jo

#1
Der Iomega ix2 NAS ist schneller wenn ihr ihn als iSCSI mountet.
Damit kann zwar nur 90% der Platte genutzt werden (den Rest als Folder) -
aber damit komme ich nun tatsächlich auf fast 20 MB/s.

Und so geht es:

Die iSCSI Inititator Software für Linux heißt Open-iSCSI. Unter Ubuntu einfach mit:
sudo apt-get install open-iscsi
installieren.

Damit beim nächsten Startvorgang die iSCSI Geräte automatisch gestartet werden,
kann den Wert node.startup in der Datei /etc/iscsi/iscsid.conf auf automatic zusetzen:
gksudo gedit /etc/iscsi/iscsid.conf

...
node.startup = automatic
...

(ich lasse mein startup auf manuell!)

Anschließend startet man den Dienst neu:
sudo /etc/init.d/open-iscsi restart




Jetzt kann mit dem Einbinden der eigentlichen iSCSI-Geräte begonnen werden. Dazu muss zunächst ein Discover(Entdecken) durchgeführt werden (eure IP anpassen):
sudo iscsiadm -m discovery -t st -p 192.168.0.100

Anschließend kann die Verbindung mit dem Target aufgebaut werden. Achtung: Dies funktioniert nur, wenn vorher das Discover das entsprechende iSCSI-Gerät erkannt hat ( iSCSI-Gerät und IP anpassen!).

Login:
sudo iscsiadm -m node --targetname "euer iSCSI-Gerät" --portal "192.168.0.100:3260" --login

Logout:
sudo iscsiadm -m node --targetname "euer iSCSI-Gerät" --portal "192.168.0.100:3260" --logout


Hinweis -> Initiator Datenbank löschen (falls ihr noch einmal von vorne Anfangen müsst)
sudo iscsiadm -m node -T "euer iSCSI-Gerät" -p 192.168.0.100:3260 -o delete


Partitionierung

Bevor die über iSCSI auf dem Initiator eingebundene Festplatte verwendet werden kann muss sie vom Initiator aus partitioniert werden. Tip: Partitionieren und verschlüsseln mit dem grafischen Programm palimpsest (Laufwerksverwaltung).

Mounten kann man das Laufwerk ganz einfach im Panel "Orte".

Update 2017: Benutze derzeit einen Synology DS215+ NAS unter KDE neon, siehe Bilder im Anhang (KDE-Partitionsverwaltung)

O0



Noch ein Hinweis:
Die Bedienungsanleitung findet Ihr auf dem NAS unter https://<Eure IP-Adressse>/help/help.html

Quelle: wiki.ubuntuusers.de/iSCSI




Nachtrag Debian
Unter Debian benutze ich mein NAS nur als Backup-Maschine per BackInTime und binde das iSCSI-Laufwerk manuell ein (node.startup = manual).

Dazu habe ich eine bash-Datei (ausführbar) mit grafischen Login erstellt:
#! /bin/bash
gksu -p -m "iSCSI-LOGIN > Bitte dein sudo Passwort eingeben:" | sudo -S -s -- iscsiadm -m node --targetname "euer iSCSI-Gerät" --portal "IP:PORT" --login


oder automatisch mit euren Passwort im bash script:
#! /bin/bash
#Discover(Entdecken)
echo deinPasswort | sudo iscsiadm -m discovery -t st -p 192.168.0.100
#Verbindung mit dem Target aufbauen
echo deinPasswort | sudo -S -s -- iscsiadm -m node --targetname "euer iSCSI-Gerät" --portal 192.168.0.100:3260 --login



Damit auch normale User darauf Zugriff haben ist eine Erweiterung der /etc/fstab per gksudo* gedit /etc/fstab notwendig, z.B.:
# iSCSI
LABEL=Backup-iSCSI /media/Backup-iSCSI ext4 defaults,user,noauto 0 0

(/media/Backup-iSCSI muss evtl. von Hand angelegt werden)

Benutzer und Gruppe werden als Besitzer für das Verzeichnis /media/Backup-iSCSI mit allen Unterordnern und Dateien festgelegt:
sudo chown -cR  $USER:$USER  /media/Backup-iSCSI


* Einem User sudo Rechte vergeben, Liste /etc/sudoers:
# User privilege specification
root  ALL=(ALL:ALL) ALL
USERNAME  ALL=(ALL:ALL) ALL