staging.inyokaproject.org

Upgrade auf ext4

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

Dieser Artikel beschreibt, wie man ein bestehendes ext3-Dateisystem ohne eine Neuinstallation in ein ext4-Dateisystem umwandelt.

Einführung

Kompatibilität der ext-Dateisysteme

Alle Dateisysteme der ext-Reihe sind untereinander aufwärts kompatibel. Das heißt, dass ein ext2 ohne Datenverlust in ein ext3 umgewandelt werden kann. Aus einem ext3 kann man genauso problemlos ein ext4 machen.

Umgekehrt ist das nicht so einfach. Zwar kann ein ext3 durch Entfernen des Journals wieder in ein ext2 überführt werden, der Weg von ext4 zurück nach ext3 oder ext2 ist jedoch nicht möglich.

Upgrade oder Neuerstellung?

Da bei Upgrade eines ext3-Filesystems ein Mischsystem entsteht, bei dem nur neu angelegte Dateien in ext4-Strukturen verwaltet werden, wird nicht das volle Potential eines ext4-Dateisystems ausgeschöpft. Man sollte also ernsthaft eine Neuerstellung des Dateisystems in Betracht ziehen.

Neuerungen in ext4

ext4 bietet einige Neuerungen und Verbesserungen gegenüber ext3. Genaueres kann man im Artikel Dateisystem nachlesen.

Hinweis:

In jedem Fall sollte man für regelmäßige Datensicherungen auf einem Datenträger sorgen, auf dem das Dateisystem nicht ext4 ist (das gilt natürlich nicht nur für ext4, sondern für jedes andere Dateisystem auch!)

Upgrade von ext3 auf ext4

Um ein bestehendes ext3- in ein ext4-Dateisystem umzuwandeln, müssen die entsprechenden Dateisystemeigenschaften hinzugefügt werden. Nach dem Ändern der Optionen muss ein Dateisystemcheck durchgeführt werden.

Achtung!

Trotz der Tatsache, dass man praktisch gefahrlos ein ext3-Dateisystem nach ext4 konvertieren kann, ist es ratsam, vorher eine Datensicherung zumindest aller wichtigen Daten und der Konfiguration in /etc zu machen!

Da die zu ändernde Partition bei dem Dateisystemcheck nicht eingehängt sein darf, startet man den Rechner mit einer Live-CD. Dies ist nicht nötig, wenn die zu konvertierende Partition keine Root-Partition ist, da man diese direkt aushängen kann.

Über folgende Befehle kann die genaue Bezeichnung der zu konvertierenden Partition ermittelt werden [1]:

sudo fdisk -l
sudo blkid 

Nun werden die Optionen mit Hilfe von tune2fs hinzugefügt [1].

sudo tune2fs -O extents,uninit_bg,dir_index /dev/<Gerätedatei> 

Für <Gerätedatei> wird die gerade ermittelte Bezeichnung eingefügt.

Abschließend muss noch ein Dateisystemcheck durchgeführt werden. Die Partition darf dabei nicht eingehängt sein!

sudo fsck -fCVD /dev/<Gerätedatei> 

Hinweis:

Durch das Hinzufügen der ext4 Optionen werden neu angelegte Daten im ext4 Format gespeichert. Bereits bestehende Dateien und Verzeichnisse, die noch mit ext3 angelegt wurden, bleiben auf dem Stand von ext3, bis sie neu geschrieben werden. Mit dem Defragmentierungsprogramm Defragmentierung können alle Daten während des Betriebes nach ext4 zu überführt werden.

Damit die Partition beim Systemstart als ext4 eingebunden wird, muss nun noch der Eintrag in der fstab angepasst werden. Dazu wird die Rootpartition bzw. die geänderte Partition in das Live-System eingebunden:

sudo mount /dev/<Gerätedatei> /mnt 

Für <Gerätedatei> wird hier die Bezeichnung der (Root-) Partiton eingesetzt.

Nun wird die fstab des "realen" Systems mit einem Editor eigener Wahl [2] mit Rootrechten geöffnet. Bei der entsprechenden Partition wird der "ext3" Eintrag durch "ext4" ersetzt:

UUID=f72aac23-092f-4484-b35c-f222c106d716   /   ext4   relatime   0   1

Die UUID ist natürlich systemspezifisch, ändert sich durch die Konvertierung von ext3 nach ext4 aber nicht.

Nach dem Speichern der Datei kann man die Live-CD entfernen, das normale System starten und die geänderte Partition mit ext4 nutzen.

Bestehendes ext3 Dateisystem als ext4 mounten

Wenn man sein ext3 Filesystem beibehalten möchte, aber dennoch einige Features von ext4 nutzen will, wie z.b. Multiblock-Allocation und Delayed-Allocation, so kann man mit folgender Ersetzungen in der fstab sein vorhandes ext3 Filesystem als ext4 mounten lassen [2] .

Vorher:

UUID=f72aac23-092f-4484-b35c-f222c106d716   /   ext3   relatime   0   1

Nachher:

UUID=f72aac23-092f-4484-b35c-f222c106d716   /   ext4   relatime   0   1

Diese Revision wurde am 21. Juli 2019 20:59 von Beforge erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: System, Kernel, Dateisystem