Dateien und Verzeichnisse
Anpassung nach der Installation
Befehle
Netzwerkserver
Dateisystem ZFS
sonstiges
Hilfe: SUN Anleitung ZFS
ZFS Grundlagen
ZFS Speicherpool-Baum
Reparaturmöglichkeiten
Backup
sonstiges
max. Dateigröße 1384 PByte und max. 16.384 PByte Dateisystem.
- Speicherpool anlegen
zpool create daten c1t1d0
Controller 1 (zweite Massenspeicher-Controller)
Target Device 1 (zweite Port des SATA Adapters)
Disk 0
Option -n Aktion wird nur virtuell ausgeführt, am System werden keine Änderungen durchgeführt.
Pool mit dem Namen daten wird erstellt und automatisch nach /daten gemountet.
- Speicherpool um ein Device erweitern
zpool add daten c1t2d0
- Speicherpool löschen
zpool destroy
- ein Verzeichnis zum Mounten vom Speicherpool daten angeben.
zpool create -m /verzeichnis daten c1t1d0
- Mountpoint nachträglich ändern
zpool set mountpoint=/verzeichnis daten
- automatisches Mounten des Speicherpools deaktivieren
zfs set mountpoint=legacy daten
- Speicherpool daten manuell mounten nach mnt
mount -F zfs daten /mnt
- zweite und dritte SATA Platte wird in ein RAID0 zusammengefasst
zpool create daten c1t1d0 c1t2d0
- zweite und dritte SATA Platte wird in ein RAID1 zusammengefasst
zpool create daten c1t1d0 c1t2d0
- zeigt Plattenstatus an
zpool status
- zeit Liste der Speicherpools an mit Auslastung
zpool list
- Anzahl Lese und Schreiboperationen, mit Option -v auch für jedes Device
zpool iostat
- Ist eine Platte ausgefallen wechselt der Speicherpool vom Status Online in den Status Degraded es erfolgt auch eine Meldung in /var/adm/messages
Die Platte c1t2d0 wird durch die c1t3d0 ersetzt und
die Redundanz wird wiederhergestellt, Daten werden automatisch auf die neue Platte übertragen
zpool replace daten c1t2d0 c1t3d0
- RAID1 mit HotSpare anlegen, Die Platte c1t3d0 ersetzt automatisch eine der beiden anderen bei Ausfall
zpool create daten mirror c1t1d0 c1t2d0 spare c1t3d0
- das HotSpare Device aus einen Speicherpool entfernen, das entfernen von aktiven Massenspeichern aus einen Speicherpool ist nicht möglich.
zpool remove daten c1t3d0
- RAID 5 anlegen
zpool create daten raidz1 c1t1d0 c1t2d0 c1t3d0
- RAID 6 anlegen
zpool create daten raidz2 c1t0d0 c1t1d0 c1t2d0 c1t3d0
wenn bei einem RAID5 oder RAID6 die Platten nicht gleichgroß sind muss die Option -f verwendet werden. Dabei gibt die kleinst Platte die größe des RAIDs vor.
- Infos zum Dateisystem
zfs list
Mit ZFS ist es möglich unterhalb eines Speicherpools noch weitere Dateisysteme anzulegen, dabei teilen sich alle Dateisysteme den verfügbaren Speicherplatz. Dabei werden die Sub-Speicherpools Standardmäßig unterhalt des Speicherpools gemountet. Es ist auch möglich für jeden Benutzer ein eigenes Dateisystem anzulegen und dieses per Snapshot zu sichern.
- erstellt ein untergeordnetes Dateisystem im Speicherpool daten
zfs create daten/sub
- Mountpoint für den untergeordneten Speicherpool sub ändern.
zfs set mountpoint=/sub daten/sub
- Quotas erstellen , der untergeordneten Speicherpool sub kann 100GB nutzen.
zfs set quota=100GB daten/sub
- eine bestimmte Größe im Speicherpool für des Dateisystem sub reservieren
zfs set reservation=10GB daten/sub
Für alle Dateisysteme die unterhalb von sub angelegt werden, gilt die gleiche Quota und auch die Reservierung, diese Einstellungen werden vererbt.
zeigt alle Eigenschaften an, Quotas u.a.
zfs get all
- In einem Speicherpool lassen sich auch Volumes anlegen, die dann als Block-Device z.B. für iSCSI genutzt werden können.
zfs create -V 20GB daten\volume
Reserviert einen 20GB großen Bereich im Speicherpool, der über /dev/zvol/dsk/daten/volume angesprochen werden kann.
ZFS legt für jeden Datenblock eine Checksumme an und prüft beim lesen der Daten ob diese mit der Checksumme übereinstimmen.
- eine manuelle Prüfung den aller Datenblocke gegen die Checksumme, die Prüfung erfolgt im Hintergrund, aber mit einer hohen I/O Last.
zpool scrub daten
- wenn von einer Live-CD gebootet wird, kann man ein Dateisystem im zur Reparatur einbinden.
zpool import -f rpool
# zfs list NAME USED AVAIL REFER MOUNTPOINT rpool 2,66G 7,13G 55K /rpool rpool@install 16K - 55K - rpool/ROOT 2,64G 7,13G 18K /rpool/ROOT rpool/ROOT@install 15K - 18K - rpool/ROOT/opensolaris 2,64G 7,13G 2,45G legacy rpool/ROOT/opensolaris@install 61,8M - 2,22G - rpool/ROOT/opensolaris/opt 136M 7,13G 136M /opt rpool/ROOT/opensolaris/opt@install 81K - 3,60M - rpool/export 14,6M 7,13G 19K /export rpool/export@install 15K - 19K - rpool/export/home 14,6M 7,13G 14,6M /export/home rpool/export/home@install 18K - 21K -
das ROOT Dateisystem das unter rpool/ROOT/opensolaris gespeichert ist, muß manuell eingebunden werden
mount -F zfs rpool/ROOT/opensolaris /mnt
# zpool get all rpool NAME PROPERTY VALUE SOURCE rpool size 9,94G - rpool used 2,66G - rpool available 7,28G - rpool capacity 26% - rpool altroot - default rpool health ONLINE - rpool guid 840255554639111538 - rpool version 10 default rpool bootfs rpool/ROOT/opensolaris local rpool delegation on default rpool autoreplace off default rpool cachefile - default rpool failmode wait default
- Grub reparieren
/mnt/sbin/installgrub /mnt/boot/grub/stage1 /mnt/boot/grub/stage2 /dev/rdsk/c1t0d0s0
mit Option -m wird Grub in den MBR installiert.
- einen Snapshot des Speicherpools daten erstellen
zfs snapshot daten@snap
- einen Snapshot des Speicherpools daten zurückspielen
zfs rollback daten@snap
will man nur eine Datei zurückspielen muss man mit
zfs set snapdir=visible daten
das Verzeichnis mit den Snapshots sichtbar machen, dies befindet sich für den Speicherpool daten unter /daten/.zfs/snapshot. Nicht benötigte Snapshots können mittels zfs destroy
gelöscht
werden.
- rekursive Snapshots einer Herarchie von Speicherpools erstellen.
zfs snapshot -r
zeigt die bisher angelegten Snapshots an
zfs list
- einen Snapshot Clone beschreibbar ins Dateisystem einbinden
zfs snapshot clone daten@08-11-10 daten/all_clones/clone08-11-10
- ein Image von einem Snapshot erstellen, das Image wird nur so groß wie der Speicherpool mit Daten belegt ist
zfs send daten@snap > /mnt/backup/daten.zfs
- Image in den Speicherpool daten/backup wiederherstellen
zfs receive daten/backup < /mnt/backup/daten.zfs
- für Datenbanken empfiehlt es sich die Blockgröße des Dateisystems herabzusetzen, ZFS verwendet Standardmäßig eine Blockgröße von 128 kB, diese sollten auf 8kB gesetzt werden.
zfs set recordsize=8K daten