So migrieren Sie Ext2- oder Ext3-Dateisysteme zu Ext4 unter Linux

Wissen Sie, dass Sie Ihr Linux-Dateisystem aktualisieren sollten, können sich aber der Verschlimmerung nicht stellen? So konvertieren Sie ext2 und ext3 in ext4, ohne eine komplette Neuinstallation durchführen zu müssen.

Linux-Dateisysteme

Wenn du höflich wärst, würdest du das anrufen ext3-Dateisystem ehrwürdig, Markteinführung wie schon 2001 armer alter ext2, dieses Dateisystem stammt aus dem Jahr 1993, und es gibt kein anderes Wort dafür als uralt. Computertechnisch ist ext3 eine Antiquität. Und ext2 ist ein archäologischer Fund.

Das moderne Dateisystem in der Linux-Welt ist ext4, das war veröffentlicht im Jahr 2008. Es ist schneller, weniger anfällig für Fragmentierungen, kann größere Dateisysteme – und größere Dateien – verarbeiten, hat genauere Dateidatumsstempel und haben wir schon erwähnt, dass es schneller ist? Viel schneller.

OK, ich bin verkauft – lass uns das tun

Lassen Sie uns das durchdenken. Eigentlich möchten Sie Ihr Dateisystem wahrscheinlich nicht aktualisieren.

Es ist sinnvoller, stattdessen Ihr gesamtes Linux-System zu aktualisieren. Mit Upgrade meinen wir, einige Datensicherungen durchzuführen, Ihr System zu löschen, eine moderne Distribution neu zu installieren und Ihre Daten wiederherzustellen. Gehen Sie für die vollständige Aktualisierung. Nutzen Sie die Vorteile einer modernen Linux-Distribution mit aktualisierter Software sowie einem sauberen, aktuellen und neu installierten Dateisystem.

Wenn Sie kein modernes Linux auf Ihrer Hardware ausführen können, ist selbst eine der leichten Distributionen wie Lubuntu, LinuxLite oder CrunchBang++, und Sie müssen unbedingt bei dem Linux bleiben, das Sie haben, es gibt immer noch Vorbehalte.

Um Ihr Dateisystem auf ext4 zu aktualisieren, müssen Sie die Kernel-Version 2.6.28 oder höher verwenden. Wenn Sie also nicht diese Version des Kernels oder eine neuere Version haben, müssen Sie zuerst Ihren Kernel aktualisieren.

Warnung: Denken Sie nicht einmal daran, dies zu versuchen, ohne die Anforderungen der Kernelversion zu erfüllen. Sie werden mit einem nicht bootfähigen Computer enden. Überprüfen Sie, welche Kernel-Version Sie verwenden, bevor Sie fortfahren.

Stellen Sie sicher, dass Sie eine Installationsdiskette für die Version von Linux haben, die Sie derzeit verwenden, und halten Sie sie im Standby-Modus. Die Aktualisierung Ihres Dateisystems ist nicht ungefährlich.

Backups sind Ihr Sicherheitsnetz. Bevor Sie etwas unternehmen, erstellen Sie einige Datensicherungen auf verschiedenen Sicherungsmedien und stellen Sie sicher, dass Sie die alte Linux-Installationsdiskette zur Hand haben. Wenn etwas schief geht, können Sie Ihr altes Linux neu installieren und Ihre Daten wiederherstellen.

Außerdem benötigen Sie eine aktuelle Live-CD/DVD einer modernen Linux-Distribution, um das Dateisystem-Upgrade durchzuführen. Stellen Sie also sicher, dass Sie auch eine davon zur Hand haben.

Dieser Artikel wurde übrigens mit einer Installation von Ubuntu Jaunty Jackalope recherchiert, die im April 2009 veröffentlicht wurde. Als Dateisystem wurde ext3 verwendet.

Immer noch bei uns?

John Wayne sagte, dass Mut erschreckt wurde, aber trotzdem sattelte. Ich bewundere deinen Mut.

Das erste, was wir tun werden, ist die Kernel-Version mit uname zu überprüfen. Der Befehl uname kann verschiedene Arten von Systeminformationen anzeigen.

Öffnen Sie auf Ihrem alten Linux-Computer ein Terminalfenster und geben Sie den folgenden Befehl ein. Geben Sie uname , ein Leerzeichen, -r ein und drücken Sie dann die Eingabetaste.

uname -r

Die Linux-Version auf diesem Computer verwendet die Kernel-Version 2.6.28-11, sodass wir die Anforderungen der Kernel-Version erfüllt haben.

Im Ernst, wenn Sie diese Anforderung nicht erfüllen, hören Sie jetzt auf. Nah genug ist einfach nicht genug. Sie müssen diese Kernel-Versionsnummer erfüllen oder überschreiten.

Jetzt überprüfen wir die Festplattenkennungen mit blkid, das die Blockgeräte auf dem System identifiziert.

blkid

Dieses System hat eine einzelne Festplatte (sda), auf der sich ein Dateisystem (sda1) befindet, das unter /dev/sda1 eingehängt ist. Dies ist ein ext3-Dateisystem. Dies ist das Dateisystem, das wir konvertieren werden.

Es gibt auch ein Dateisystem namens swap, aber das interessiert uns nicht.

Neustart mit der Live-CD

Legen Sie die Live-CD ein und starten Sie Ihren Computer neu. Möglicherweise müssen Sie während des Neustarts eine Taste drücken, damit der Computer von der CD bootet. Die zu drückende Taste wird während der frühen Phasen des Bootvorgangs angezeigt. Seien Sie schnell – das Zeitfenster der Gelegenheit dauert nicht lange. Wenn Sie es verpassen, starten Sie neu und versuchen Sie es erneut.

Wenn Sie in die Live-CD-Umgebung gebootet haben, stellen Sie sicher, dass Sie nicht versehentlich eine Installation starten. Nehmen Sie sich die Zeit, die Ihnen zur Verfügung gestellten Optionen zu lesen, und wenn es eine gibt, die etwas Ähnliches wie „Verteilungsname versuchen“ sagt, wählen Sie diese Option aus.

Werde Wurzel

Öffnen Sie ein Terminalfenster und geben Sie den folgenden Befehl ein. Dies macht Sie effektiv zum Root und bedeutet, dass Sie nicht vor jedem Befehl sudo eingeben müssen.

sudo bash

Beachten Sie, dass sich die Eingabeaufforderung geändert hat. Du bist Wurzel. Vorsichtig auftreten.

Identifizieren Sie die Dateisysteme

Wir müssen die Dateisysteme noch einmal identifizieren, um zu sehen, wie sie in dieser Linux-Instanz angezeigt werden.

fdisk -l

Sie sehen eine Ausgabe ähnlich der folgenden.

Das zuvor als sda1 identifizierte Dateisystem wurde von der Live-CD Linux gefunden und erkannt. Das ist der erste Mini-Meilenstein.

Die zweite ist die Konvertierung des Dateisystems.

Konvertieren des Dateisystems

Hier sind zwei Befehle aufgeführt, einer zum Konvertieren von Ext2 in Ext4 und einer zum Konvertieren von Ext3 in Ext4. Stellen Sie sicher, dass Sie das richtige für sich verwenden!

Um von ext2 zu ext4 zu konvertieren, verwenden Sie Folgendes:

tune2fs -O extents,uninit_bg,dir_index,has_journal /dev/sda1

Um von ext3 in ext4 zu konvertieren, verwenden Sie Folgendes:

tune2fs -O extents,uninit_bg,dir_index /dev/sda1

Es ist etwas enttäuschend, da nicht viel zu passieren scheint. Sie kehren zur Eingabeaufforderung zurück. Wenn Sie eine Ausgabe sehen, handelt es sich wahrscheinlich um Fehlermeldungen. Keine Nachrichten sind hier also gute Nachrichten.

Überprüfen Sie das Dateisystem

Auch wenn keine Fehler gemeldet wurden, lassen Sie uns gründlich vorgehen und das gesamte Dateisystem auf Probleme überprüfen. Wir werden einen Befehl namens e2fsck verwenden. Dies ist ein Tool zur Überprüfung der Integrität von Dateisystemen. Es kann auch versuchen, alle gefundenen Probleme zu beheben. Das e2fsck-Tool funktioniert mit ext2-, ext3- und auch ext4-Dateisystemen.

Die Option -p (preen) bewirkt, dass e2fsck versucht, Fehler zu reparieren, und die Option -f (force) veranlasst e2fsck, das Dateisystem zu überprüfen, selbst wenn das Dateisystem sauber erscheint.

e2fsck -pf /dev/sda1

Es wurden keine Fehler gemeldet. Wir können nun versuchen, das Dateisystem einzuhängen.

Montage des Dateisystems

Wir müssen die Dateisystemtabelle (fstab) und den Grub-Bootloader anpassen, um mit dem konvertierten Dateisystem zu arbeiten. Dazu müssen wir das Dateisystem mounten. Wir werden es auf /mnt mounten. Wir haben das Dateisystem zuvor als sda1 identifiziert, daher lautet unser Befehl:

mount -t ext4 /dev/sda1 /mnt

Nachdem es nun gemountet ist, sollten wir in der Lage sein, das Dateisystem aufzulisten. Lassen Sie uns das überprüfen. Das Stammverzeichnis des Dateisystems befindet sich am Einhängepunkt /mnt.

ls /mnt

Das ist ermutigend. Es sieht so aus, als ob wir es erwarten würden.

Bearbeiten von fstab

Wir müssen die fstab-Datei bearbeiten und alle Referenzen von ext3 (oder ext2, wenn dies das Dateisystem ist, aus dem Sie konvertiert haben) in ext4 ändern.

Die in diesem Beispiel verwendete Live-CD enthält den Nano-Editor. Es ist ein einfacher kleiner Editor, also verwenden wir ihn. Wenn nano nicht auf Ihrer Live-CD verfügbar ist, gibt es einen anderen Editor, der von der Linux-Distribution auf der CD gebündelt wurde.

nano /mnt/etc/fstab

Das Nano-Editor-Fenster wird angezeigt. Sie müssen nach Vorkommen der Zeichenfolge „ext3“ oder „ext2“ suchen und diese in „ext4“ ändern. In diesem Beispiel trat ext3 einmal auf, das hervorgehoben ist.

Die ext3 wurde durch ext4 ersetzt.

Sie müssen die Datei speichern und den Editor verlassen. In nano speichert Strg+O die Datei und Strg+X schließt den Editor.

Grub aktualisieren

Da wir das sda1-Dateisystem auf /mnt gemountet haben, wurden die Pfade zu den Verzeichnissen im Dateisystem praktisch alle eine Ebene tiefer als üblich verschoben. Aus diesem Grund lautete der Pfad, den wir für nano angegeben haben, /mnt/etc/fstab anstelle des üblichen /etc/fstab.

Da Grub erwartet, Dinge an bestimmten Stellen zu finden, müssen wir das Dateisystem so aussehen lassen, als wäre es normal gemountet. Wir brauchen das Wurzelverzeichnis des Dateisystems unter / und nicht unter /mnt. Der Befehl chroot ermöglicht es uns, eine Befehlsshell auszuführen und den Wurzelpunkt angeben wir verwenden möchten.

Der von uns verwendete Befehl lautet:

chroot /mnt

Beachten Sie, dass sich die Eingabeaufforderung geändert hat.

Wir können jetzt den Befehl update-grub ausgeben, damit Grub die fstab-Datei liest und sich selbst neu konfiguriert.

update-grub

.

Nachdem sich Grub neu konfiguriert hat, müssen wir eine neue Grub-Instanz auf der Festplatte installieren. Beachten Sie, dass dies das Festplattenlaufwerk sda ist, nicht das Dateisystem sda1. Geben Sie die „1“ nicht ein, geben Sie einfach „sda“ ein.

grub-install /dev/sda

Neustart Ihres Linux

Starten Sie Ihr System neu und entfernen Sie die Live-CD. Wenn Ihr System neu gestartet wurde, öffnen Sie ein Terminalfenster und geben Sie den folgenden Befehl ein:

blkid

Wie wir sehen, ist das Dateisystem jetzt ein ext4-Dateisystem.

Der Neustart des Computers, auf dem dieser Artikel recherchiert wurde, dauerte so lange (über zehn Minuten), dass angenommen wurde, dass etwas schief gelaufen ist und dass er nie wieder hochfahren würde.

Vielleicht lag es daran, dass es sich um eine virtuelle Maschine handelte, oder vielleicht findet ein Teil der Dateisystemkonvertierung während des ersten Bootens statt. In jedem Fall siegte die Geduld, und schließlich tauchte sie wieder auf. Wenn Ihr Gerät etwas Ähnliches tut, warten Sie es ab. Es kann sein, dass nicht alles verloren ist.

Nachfolgende Neustarts verliefen wie gewohnt schnell.

Aktualisieren Sie stattdessen Ihr Linux

Nun, wir sind dort angekommen. Aber Sie haben immer noch einen Nicht-Standard-Hybrid, der eine alte Linux-Version auf einem modernen Dateisystem verwendet.

Wenn Ihnen der Wechsel zu einem neuen Dateisystem wichtig ist und Ihre Hardware dies aushält, ist der Wechsel zu einer aktuellen Linux-Distribution der beste Weg. Sie genießen alle weiteren Sicherheits- und Softwarevorteile, die sich daraus ergeben.

Wenn es nichts anderes gibt – und manchmal haben wir nicht die Optionen, die wir uns gewünscht hätten – können Sie mit diesen Schritten Ihr Dateisystem aktualisieren.