Comment puis-je convertir ma partition racine de BTRFS en EXT4?

13

Est-il possible de convertir btrfs en ext4 sans perdre de données? J'expérimente une très faible vitesse sur les opérations de lecture / écriture sur btrfs.

mFat
la source

Réponses:

7

Je vais juste sur les outils disponibles, pas sur l'expérience ou la documentation. Vous voudrez peut-être tester cela avec une partition (même juste une image) que cela ne vous dérange pas de perdre si tout va mal. N'essayez pas ceci sans prendre une sauvegarde.

btrfs-converta une fonction de restauration pour annuler une conversion. Je ne sais pas si cela fonctionne pour les partitions qui n'ont pas été converties btrfsavec btrfs-convert.

  1. Commencez par démonter le système de fichiers. Si c'est essentiel pour le système, démarrez dans un LiveCD.

  2. Installer btrfs-tools

    sudo apt-get install btrfs-tools
    
  3. Annulez la conversion

    sudo btrfs-convert -r /dev/sdXn
    
Oli
la source
6
Notez que cela ne fonctionnera qu'avec les systèmes de fichiers convertis et uniquement si vous n'avez pas supprimé l'instantané du système de fichiers ext3 / 4 d'origine.
htorque
Merci mais malheureusement cela ne fonctionne pas pour une partition btrfs non convertie à partir d'autres systèmes de fichiers. Je suppose que je dois réinstaller.
mFat
7
N'oubliez pas que cela annulera toutes les modifications apportées au système de fichiers depuis que vous l'avez converti . Il sera restauré dans le contenu du système de fichiers ext2 / 3 tel qu'il était avant la conversion.
poolie
4

Autant que je sache, vous ne pouvez pas convertir btrfs en un autre système de fichiers.

htorque
la source
pas vrai si vous avez converti ext en btrfs! vous auriez un instantané pour
annuler
1

Je l'ai fait en utilisant un système avec des distributions multiboot (Ubuntu sur ext4, Xubuntu sur btrfs). Sous Ubuntu, j'ai pris la partition home de Xubuntu btrfs et je l'ai archivée à l'aide de fsarchiver. J'ai ensuite pu le restaurer, toujours à l'aide de fsarchiver, sur une autre partition et spécifier le type de système de fichiers ext4. Cela semblait bien fonctionner.

Toujours dans Ubuntu, j'ai monté la partition racine Xubuntu sur / mnt et édité / mnt / @ / etc / fstab pour changer le montage de / home pour pointer vers la nouvelle partition ext4, changer à la fois l'UUID et le type fs, et supprimer les données de sous-volume. J'ai enregistré le fichier et redémarré dans Xubuntu.

Une erreur s'est produite lors du démarrage et le démarrage s'est arrêté. L'erreur était que j'avais une autre partition que je voulais monter dans mon répertoire ~ / Documents qui a échoué. J'ai choisi de résoudre manuellement le problème. Il se trouve que ma partition racine est montée correctement en ext4, mais quand j'ai fait une commande de liste, j'ai

#ls /home
@home

Ainsi, la structure de sous-volume btrfs d'origine était toujours présente dans le système de fichiers ext4. J'ai émis la commande

mount --bind /home/@home /home

J'ai ensuite appuyé sur ctrl-D pour continuer le démarrage, et Xubuntu a continué le démarrage et tout s'est bien passé. Je ne l'ai pas encore fait, car je suis encore sur ce démarrage initial, mais je suis certain que je pourrais mettre cette commande de liaison dans mon fichier fstab. Ou peut-être que j'aurais pu laisser les informations de sous-volume dans l'entrée fstab, je ne sais pas.

Cependant, ce que je ferai à la place (hors sujet), c'est de prendre une instance plus mature d'une partition / home (ext4) pour Xubuntu à partir d'un autre ordinateur et de l'utiliser à la place. J'ai déjà prouvé que cela fonctionnera.

randyman99
la source