Login
Newsletter
Werbung

Do, 26. August 2010, 15:00

btrfs - Linux-Dateisystem der Zukunft

Konversion von ext3/ext4 zu btrfs

Es ist möglich, ein vorhandenes ext3- oder ext4-Dateisystem mit btrfs-convert in ein btrfs-Dateisystem umzuwandeln. Die Konversion erfolgt überraschend schnell, weil dabei nur die btrfs-Metadaten neu angelegt werden, die eigentlichen Datenblöcke aber unverändert bleiben. Das folgende Beispiel geht davon aus, dass sich das ursprüngliche ext4-Dateisystem in /dev/sdb1 befindet.

fsck.ext4 -f /dev/sdb1
btrfs-convert /dev/sdb1
creating btrfs metadata.
creating ext2fs image file.
cleaning up system chunk.
conversion complete.
mount /dev/sdb1 /media/btrfs

btrfs-convert legt bei der Konversion den Snapshot »ext2_saved« an, der den Zustand des bisherigen ext-Dateisystems archiviert. Solange es diesen Snapshot gibt, können Sie das btrfs-System sogar zurück in ein ext-Dateisystem verwandeln! (Veränderungen, die Sie in der Zwischenzeit im btrfs-Dateisystem durchgeführt haben, gehen dabei aber verloren.)

umount /dev/sdb1
btrfs-convert -r /dev/sdb1

Wenn Sie nach der Konversion bei btrfs bleiben möchten, sollten Sie den Snapshot »ext2_saved« löschen. Je mehr Änderungen Sie im btrfs-Dateisystem durchführen, desto mehr Platz erfordert der Snapshot.

btrfs subvolume delete /media/btrfs/ext2_saved

Dateien komprimieren

btrfs untertützt die automatische und transparente Komprimierung von Dateien. Dazu muss das Dateisystem mit der mount-Option compress in den Verzeichnisbaum eingebunden werden. Die Option compress gilt nur für neue bzw. geänderte Dateien. Vorhandene Dateien bleiben unverändert, solange sie nur gelesen werden. Die Option gilt für das gesamte Dateisystem, kann also nicht nur für einzelne Verzeichnisse aktiviert werden.

mount -o compress /dev/sdb1 /media/btrfs

compress beschleunigt in vielen Fällen Dateioperationen! Das mag auf den ersten Blick verwundern, weil die Kompression bzw. Dekompression ja zusätzlichen Aufwand verursacht. Bei einer schnellen CPU ist dieser Aufwand aber gering im Vergleich zur Ersparnis, die sich dadurch ergibt, dass weniger Datenblöcke der Festplatte oder der SSD gelesen bzw. verändert werden müssen. Als Zusatznutzen kommt natürlich die Platzersparnis hinzu.

Sie können das komprimierte Dateisystem später auch ohne die Option compress nutzen. Neue bzw. veränderte Dateien sind dann nicht mehr komprimiert, bereits vorhandene Dateien bleiben aber komprimiert, solange die Dateien nur gelesen werden.

Die compress-Option eignet sich besonders gut für Verzeichnisse, die viele Textdateien enthalten (z. B. /usr, die Platzersparnis beträgt hier fast 50 Prozent!). Nicht empfehlenswert ist die Option hingegen für Ihr Benutzerverzeichnis, wenn sich dort überwiegend bereits komprimierte Dateien befinden (z. B. Audio-, Video-, PDF- und OpenOffice-Dateien). Eine weitere Komprimierung gelingt dann nicht. Das erkennt auch der btrfs-Treiber und verzichtet bei der betreffenden Datei auf die Komprimierung. Dennoch kostet dieser Test etwas Zeit.

In der Praxis ist es bei Desktopsystemen häufig zweckmäßig, für die Systempartition compress zu verwenden, für die Home-Partition aber nicht. Leider können Sie nicht bei jeder Distribution die mount-Optionen bereits bei der Installation einstellen. Bei openSUSE 11.3 ist das möglich, und eine Testinstallation ergab, dass der Platzbedarf für die Systempartition bei einer Standardinstallation von 3,5 auf 1,8 GByte sank!

Längerfristig gibt es Pläne, in btrfs einen noch schnelleren, aber nicht ganz so platzsparenden Komprimieralgorithmus einzusetzen (LZO) und die compress-Option dann standardmäßig zu aktivieren.

Kommentare (Insgesamt: 71 || Alle anzeigen || Kommentieren )
Re: Danke (1ras, So, 29. August 2010)
Re[5]: brtfs (tetex, Sa, 28. August 2010)
Re[2]: Unterschied verschiedener Dateisysteme (Michael Gruner, Sa, 28. August 2010)
Re[2]: Zukunft von btrfs und zfs im Hinblick auf O (reiser4-fan, Sa, 28. August 2010)
Re[2]: Zukunft von btrfs und zfs im Hinblick auf O (reiserfs4-fan, Sa, 28. August 2010)
Pro-Linux
Traut euch!
Neue Nachrichten
Werbung