it-swarm.com.de

Wie kann ich meine Root-Partition von BTRFS nach EXT4 konvertieren?

Ist es möglich, btrfs nach ext4 zu konvertieren, ohne Daten zu verlieren? Bei Lese-/Schreibvorgängen auf btrfs ist die Geschwindigkeit sehr niedrig.

13
mFat

Ich greife nur auf die verfügbaren Tools zurück, nicht auf Erfahrung oder Dokumentation. Vielleicht möchten Sie dies mit einer Partition (auch nur mit einem Image) testen, die Sie gerne verlieren, wenn alles schief geht. Versuchen Sie dies nicht, ohne ein Backup zu erstellen.

btrfs-convert hat eine Rollback-Funktion, um eine Konvertierung rückgängig zu machen. Ich bin nicht sicher, ob dies für Partitionen funktioniert, die nicht mit btrfs-convert in btrfs konvertiert wurden.

  1. Hängen Sie zunächst das Dateisystem aus. Wenn es für das System unerlässlich ist, starten Sie eine LiveCD.

  2. Installiere btrfs-tools

    Sudo apt-get install btrfs-tools
    
  3. Machen Sie die Konvertierung rückgängig

    Sudo btrfs-convert -r /dev/sdXn
    
7
Oli

Soweit ich weiß, können Sie btrfs nicht in ein anderes Dateisystem konvertieren.

4
htorque

Ich habe dies mit einem System mit Multiboot-Distributionen gemacht (Ubuntu auf ext4, Xubuntu auf btrfs). Unter Ubuntu habe ich die Home-Partition von Xubuntu btrfs mit fsarchiver archiviert. Ich war dann in der Lage, es wieder mit fsarchiver auf einer anderen Partition wiederherzustellen und den ext4-Dateisystemtyp anzugeben. Das schien in Ordnung zu funktionieren.

Immer noch in Ubuntu habe ich die Xubuntu-Root-Partition unter/mnt gemountet und/mnt/@/etc/fstab bearbeitet, um den Mount für/home so zu ändern, dass er auf die neue ext4-Partition zeigt, wobei sowohl die UUID als auch der fs-Typ geändert und gelöscht wurden die Subvolumendaten. Ich habe die Datei gespeichert und Xubuntu neu gestartet.

Beim Booten ist ein Fehler aufgetreten, und das Booten wurde abgebrochen. Der Fehler war, dass ich eine andere Partition hatte, die ich in mein ~/Documents-Verzeichnis mounten wollte, was fehlgeschlagen ist. Ich habe ausgewählt, das Problem manuell zu beheben. Es stellte sich heraus, dass meine Root-Partition in Ordnung als ext4 gemountet war, aber als ich einen Listenbefehl ausführte, bekam ich

#ls /home
@home

Die ursprüngliche Subvolume-Struktur von btrfs befand sich also noch im ext4-Dateisystem. Ich habe den Befehl gegeben

mount --bind /home/@home /home

Ich drückte dann Strg-D, um weiter zu booten, und Xubuntu fuhr fort zu booten und alles lief gut. Ich habe es noch nicht getan, da ich noch beim ersten Start bin, aber ich bin mir sicher, dass ich diesen Bindebefehl in meine fstab-Datei schreiben kann. Oder vielleicht hätte ich die Subvolume-Informationen im fstab-Eintrag belassen können, ich weiß es nicht.

Ich werde stattdessen jedoch (dies ist vom Thema abweichend) eine ausgereiftere Instanz einer/home-Partition (ext4) für Xubuntu von einem anderen Computer nehmen und diese stattdessen verwenden. Ich habe bereits bewiesen, dass dies funktionieren wird.

1
randyman99