Meine Empfehlung für ein anständiges Server-Dateisystem mit Redundater Sicherung, ist das von Sun Microsystems entwickeltes transaktionales Dateisystem ZFS. Nicht nur Geschwindigkeit, Sicherheit und Benutzerfreundlichkeit, sprechen für das Dateisystem, sondern auch die wunderbar einfache Verwaltung und Erweiterung.
ZPOOL vs. ZFS:
Zpool steuert Operationen des jeweiligen Pools um Festplatten hinzufügen, entfernen, ersetzen und verwalten.
Mit zfs hingegen erstellt, zerstört und verwaltet man das Dateisystem und auch die einzelnen Volumen.
wichtige zpool Befehle:
Erstellen eines neuen RAID0 Pools über die Festplatten sdb und sdc:
zpool create pool0 sdb sdc
Erstellen eines neuen RAID1 Pools über die Festplatten sdb und sdc:
zpool create pool1 mirror sdb sdc
Erstellen eines neuen RAID10 Pools über die Festplatten sdb, sdc und sdd, sde:
zpool create pool2 mirror sdb sdc mirror sdd sde
Erstellen eines neuen RAID5 Pools über die Festplatten sdb, sdc und sdd:
zpool create pool3 raiz sdb sdc sdd
Allgemein den Status der Pools abfragen:
zpool status
Den Status eines spezifischen pool0 Pools abfragen:
zpool status pool0
Den Pool pool0 exportieren:
zpool export pool0
Den Pool pool0 importieren:
zpool import pool0
Den Zugiff (IO Status) der Pools einsehen:
zpool iostat
Den Zugiff (IO Status) eines spezifischen Pools einsehen:
zpool iostat pool0
Den Zugiff (IO Status) der Pools periodisch alle Sekunde einsehen:
zpool iostat 1
Den Zugiff (IO Status) eines spezifischen Pools alle 4 Sekunden einsehen:
zpool iostat pool0 4
wichtige zfs Befehle:
Ein Volumen mit dem Namen test auf dem Datenpool / festplattenpool pool0 erstellen:
zfs create pool0/test
Ein Volumen mit dem Namen test auf dem Datenpool / festplattenpool pool0 erstellen und unter /mnt/test mounten:
zfs create pool0/test -m /mnt/test
Dem Volumen test eine Kapazität von 150 Gigabyte zuweisen:
zfs set quota=150G pool0/test
Die maximale Kapazität des Volumens test abgragen:
zfs get quota pool0/test
Die maximale Kapazität des Volumens test auf 250 Gigabyte anpassen:
zfs set quota=250G pool0/test
Die maximale Kapazität des Volumens test entfernen:
zfs set quota=none pool0/test
Ein Volumen test2 auf dem Datenpool pool0 anlegen:
zfs create pool0/test2
250 Gigabyte für das Volumen test2 reservieren
zfs set reservation=150G pool0/test2
Die Speicherplatzreservierung für das Volumen test2 aufheben:
zfs set reservation=none pool0/test2
Den Moutpoint für das Volumen test2 auf /home/test ändern:
zfs set mountpoint=/home/test pool0/test2
Alle Volumen mit ihren Mountpoints ausgeben:
zfs list
Datensicherung / Snapshot:
Eine Sicherung des Volumens test2 mit dem Namen Freitag erstellen:
zfs snapshot pool0/test2@freitag
Eine Sicherung mit dem Namen now der kompletten Volumen auf dem Datenpool pool0 erstellen:
zfs snapshot -r pool0@now
Alle Sicherungen anzeigen:
zfs list -t snapshot
Die Datensicherung now auf dem Datenpool pool0 löschen
zfs destroy pool0@now
Die Kompression für das Volumen pool0/test2 festlegen:
zfs set compression=on pool0/test2
Standardmäßig ist die Kompression aus, zur Auswahl stehen unteranderem die Kompressionen LZ4 und GZIP-7. Ich empfehle die Kompression LZ4, da diese mit dynamischen Blockgrößen funktioniert. Denn bei GZIP-7 kann es im schlimmsten Fall dazu kommen, dass die komprimierten Daten auf Grund der fixen Blockgröße mehr Platz benötigen als unkomprimiert. Eine Komprimierung ist nur bei ausreichender CPU-Leistung und RAM-Größe zu empfehlen. Pro TB an Speicherplatz kann man pauschal mit einem GB RAM rechen.