Comment migrer des systèmes de fichiers Ext2 ou Ext3 vers Ext4 sous Linux

Vous savez que vous devriez mettre à jour votre système de fichiers Linux mais que vous ne pouvez pas faire face à l’aggravation? Voici comment convertir ext2 et ext3 en ext4 sans le bouleversement d’une réinstallation complète.

Systèmes de fichiers Linux

Si tu étais poli, tu appellerais le système de fichiers ext3 vénérable, lancé comme il l’a fait en 2001. Quant à pauvre vieux ext2, ce système de fichiers est originaire de 1993, et il n’y a pas de mot autre que l’ancien. En termes informatiques, ext3 est une antiquité. Et ext2 est une découverte archéologique.

Le système de fichiers moderne dans le monde Linux est ext4 qui était sorti en 2008. Il est plus rapide, moins sujet à la fragmentation, capable de gérer des systèmes de fichiers plus volumineux – et des fichiers plus volumineux – il a des horodatages de fichier plus précis et avons-nous mentionné qu’il est plus rapide? Beaucoup plus vite.

OK, je suis vendu – Faisons ça

Pensons à cela. En fait, vous ne souhaitez probablement pas mettre à niveau votre système de fichiers.

Il est plus logique de mettre à niveau tout votre système Linux à la place. Par mise à niveau, nous entendons effectuer quelques sauvegardes de données, effacer votre système, réinstaller une distribution moderne et restaurer vos données. Optez pour le rafraîchissement complet. Bénéficiez des avantages d’une distribution Linux moderne avec des logiciels mis à jour, ainsi que d’un système de fichiers propre, actuel et nouvellement installé.

Si vous ne pouvez pas exécuter un Linux moderne sur votre matériel, même l’une des distributions légères comme Lubuntu, LinuxLite ou CrunchBang ++, et vous devez absolument vous en tenir au Linux que vous avez, il y a encore des mises en garde.

Pour mettre à jour votre système de fichiers vers ext4, vous devez utiliser la version 2.6.28 ou ultérieure du noyau. Donc, si vous n’avez pas cette version du noyau ou une version ultérieure, vous devez d’abord mettre à jour votre noyau.

Attention: ne pensez même pas à essayer ceci sans satisfaire cette exigence de version du noyau. Vous vous retrouverez avec un ordinateur non amorçable. Vérifiez la version du noyau que vous utilisez avant de continuer.

Assurez-vous que vous disposez d’un disque d’installation pour la version de Linux que vous utilisez actuellement et gardez-le en veille. La mise à niveau de votre système de fichiers n’est pas sans danger.

  Comment obtenir une visionneuse d'images riche en fonctionnalités dans Chrome

Les sauvegardes sont votre filet de sécurité. Avant de faire quoi que ce soit, effectuez quelques sauvegardes de données sur différents supports de sauvegarde et assurez-vous d’avoir cet ancien disque d’installation Linux à portée de main. Si quelque chose ne va pas, vous pouvez réinstaller votre ancien Linux et restaurer vos données.

Vous aurez également besoin d’un CD / DVD Live actuel d’une distribution Linux moderne pour effectuer la mise à niveau du système de fichiers avec. Assurez-vous donc d’en avoir un à portée de main.

Incidemment, cet article a été recherché en utilisant une installation d’Ubuntu Jaunty Jackalope, qui a été publiée en avril 2009. Il utilisait ext3 comme système de fichiers.

Toujours avec nous?

John Wayne a déclaré que le courage était terrifié, mais qu’il était toujours en train de se ressaisir. J’admire vos tripes.

La première chose que nous allons faire est de vérifier la version du noyau avec uname. La commande uname peut afficher différents types d’informations système.

Sur votre ancien ordinateur Linux, ouvrez une fenêtre de terminal et tapez la commande suivante. Tapez uname, un espace, -r, puis appuyez sur Entrée.

uname -r

uname -r dans une fenêtre de terminal.

La version de Linux sur cet ordinateur utilise la version 2.6.28-11 du noyau, nous avons donc satisfait aux exigences de version du noyau.

Sérieusement, si vous ne remplissez pas cette condition, arrêtez maintenant. Assez près ne suffit pas. Vous devez atteindre ou dépasser ce numéro de version du noyau.

Nous allons maintenant vérifier les identificateurs de disque avec blkid, qui identifie les périphériques de bloc sur le système.

blkid

blkid dans une fenêtre de terminal

Ce système a un seul disque dur (sda) qui contient un système de fichiers (sda1) qui est monté sur / dev / sda1. Il s’agit d’un système de fichiers ext3. C’est le système de fichiers que nous allons convertir.

Il existe également un système de fichiers appelé swap, mais cela ne nous intéresse pas.

Redémarrez avec le Live CD

Insérez le Live CD et redémarrez votre ordinateur. Vous devrez peut-être appuyer sur une touche lors du redémarrage pour que l’ordinateur démarre à partir du CD. La touche sur laquelle appuyer sera affichée pendant les premières étapes du processus de démarrage. Soyez rapide – la fenêtre d’opportunité ne dure pas longtemps. Si vous le manquez, redémarrez et réessayez.

Lorsque vous avez démarré dans l’environnement Live CD, assurez-vous de ne pas démarrer accidentellement une installation. Prenez le temps de lire les options qui vous sont fournies, et s’il y en a une qui dit quelque chose de similaire à «Try DistributionName», sélectionnez cette option.

Devenez Root

Ouvrez une fenêtre de terminal et tapez la commande suivante. Cela vous rend effectivement root et signifie que vous n’avez pas besoin de taper sudo devant chaque commande.

sudo bash

sudo bash dans une fenêtre de terminal

Notez que l’invite de commande a changé. Vous êtes root. Marchez prudemment.

  Votre gouvernement demande-t-il des données utilisateur aux géants de la technologie?

Identifier les systèmes de fichiers

Nous devons identifier à nouveau les systèmes de fichiers pour voir comment ils apparaissent dans cette instance de Linux.

fdisk -l

fdisk -l dans une fenêtre de terminal

Vous verrez une sortie similaire à la suivante.

sortie de fdisk dans une fenêtre de terminal

Le système de fichiers que nous avons précédemment identifié comme sda1 a été trouvé et reconnu par le Live CD Linux. C’est le premier mini-jalon.

Le second est la conversion du système de fichiers.

Conversion du système de fichiers

Il y a deux commandes répertoriées ici, une pour la conversion d’ext2 en ext4 et une pour la conversion d’ext3 en ext4. Assurez-vous d’utiliser le bon pour vous!

Pour convertir d’ext2 en ext4, utilisez ceci:

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

Pour convertir d’ext3 en ext4, utilisez ceci:

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

tune2fs -O extents, uninit_bg, dir_index / dev / sda1 dans une fenêtre de terminal

C’est un peu décevant car peu de choses semblent se produire. Vous êtes renvoyé à l’invite de commande. Si vous voyez une sortie, il y aura probablement des messages d’erreur. Aucune nouvelle n’est donc une bonne nouvelle ici.

Vérifiez le système de fichiers

Même si aucune erreur n’a été signalée, soyons minutieux et vérifions tout le système de fichiers pour les problèmes. Nous utiliserons une commande appelée e2fsck. Ceci est un outil utilisé pour vérifier le intégrité des systèmes de fichiers. Il peut également tenter de réparer les problèmes détectés. L’outil e2fsck fonctionne avec les systèmes de fichiers ext2, ext3 et ext4.

L’option -p (preen) oblige e2fsck à tenter de réparer les erreurs et l’option -f (force) oblige e2fsck à vérifier le système de fichiers même si le système de fichiers semble propre.

e2fsck -pf /dev/sda1

e2fsck -pf / dev / sda1 dans une fenêtre de terminal

Aucune erreur n’a été signalée. Nous pouvons maintenant essayer de monter le système de fichiers.

Montage du système FIlesystem

Nous devons ajuster la table du système de fichiers (fstab) et le chargeur de démarrage grub pour qu’ils fonctionnent avec le système de fichiers converti. Pour ce faire, nous devons monter le système de fichiers. Nous allons le monter sur / mnt. Nous avons identifié le système de fichiers comme sda1 plus tôt, donc notre commande est:

mount -t ext4 /dev/sda1 /mnt

monter -t ext4 / dev / sda1 / mnt dans une fenêtre de terminal

Maintenant qu’il est monté, nous devrions pouvoir lister le système de fichiers. Vérifions ça. La racine du système de fichiers sera au point de montage, / mnt.

ls /mnt

monter -t ext4 / dev / sda1 / mnt dans une fenêtre de terminal

C’est encourageant. Il semble que nous nous y attendions.

Modification de fstab

Nous devons éditer le fichier fstab et changer toutes les références d’ext3 (ou ext2, si c’est le système de fichiers à partir duquel vous avez converti) en ext4.

Le Live CD utilisé dans cet exemple contient l’éditeur nano. C’est un simple petit éditeur, nous allons donc l’utiliser. Si nano n’est pas disponible sur votre Live CD, il y aura un autre éditeur qui aura été fourni par la distribution Linux sur le CD.

nano /mnt/etc/fstab

nano / mnt / etc / fstab dans une fenêtre de terminal

La fenêtre de l’éditeur nano apparaîtra. Vous devez rechercher les occurrences de la chaîne «ext3» ou «ext2» et les changer en «ext4». Dans cet exemple, il y avait une occurrence d’ext3, qui est mise en évidence.

  Comment diffuser le match des étoiles de la NBA

nano fenêtre avec ext3 en surbrillance

L’ext3 a été remplacé par ext4.

nano fenêtre avec ext4 en surbrillance

Vous devez enregistrer le fichier et quitter l’éditeur. Dans nano, Ctrl + O enregistrera le fichier et Ctrl + X fermera l’éditeur.

Mise à niveau de grub

Comme nous avons monté le système de fichiers sda1 sur / mnt, les chemins vers les répertoires du système de fichiers ont en fait tous été déplacés d’un niveau plus profond que d’habitude. C’est pourquoi le chemin que nous avons fourni à nano était / mnt / etc / fstab au lieu de l’habituel / etc / fstab.

Puisque grub s’attend à trouver des choses à certains endroits, nous devons faire en sorte que le système de fichiers apparaisse comme s’il était monté normalement. Nous avons besoin que la racine du système de fichiers soit à / et non à / mnt. La commande chroot nous permet d’exécuter un shell de commande et de spécifier le point racine nous souhaitons utiliser.

La commande que nous utilisons est:

chroot /mnt

chroot / mnt dans une fenêtre de terminal

Notez que l’invite de commande a changé.

Nous pouvons maintenant lancer la commande update-grub pour que grub lise le fichier fstab et se reconfigure.

update-grub

update-grub dans une fenêtre de terminal.

Une fois que grub s’est reconfiguré, nous devons installer une nouvelle instance de grub sur le disque dur. Notez qu’il s’agit du disque dur sda, pas du système de fichiers sda1. N’incluez pas le «1», tapez simplement «sda».

grub-install /dev/sda

grub-install / dev / sda dans une fenêtre de terminal

Redémarrer votre Linux

Redémarrez votre système et retirez le Live CD. Une fois votre système redémarré, ouvrez une fenêtre de terminal et entrez la commande suivante:

blkid

blkid dans une fenêtre de terminal

Comme nous pouvons le voir, le système de fichiers est maintenant un système de fichiers ext4.

La machine sur laquelle cet article a été recherché a mis tellement de temps à redémarrer (plus de dix minutes) qu’on a supposé que quelque chose s’était mal passé et que cela ne reviendrait jamais.

Peut-être était-ce parce qu’il s’agissait d’une machine virtuelle, ou peut-être qu’une partie de la conversion du système de fichiers a lieu lors de ce premier démarrage. Quoi qu’il en soit, la patience l’a emporté et elle a fini par refaire surface. Si votre machine fait quelque chose de similaire, attendez. Tout pourrait ne pas être perdu.

Les redémarrages suivants ont été aussi rapides que d’habitude.

Mettez à niveau votre Linux à la place

Eh bien, nous y sommes arrivés. Mais il vous reste toujours un hybride non standard utilisant une ancienne version de Linux sur un système de fichiers moderne.

Si le passage à un nouveau système de fichiers est important pour vous et que votre matériel peut le supporter, le passage à une distribution Linux actuelle est la meilleure voie à suivre. Vous bénéficierez de tous les autres avantages en matière de sécurité et de logiciel qui en découlent.

Pourtant, s’il n’y a rien d’autre pour cela – et parfois nous n’avons pas les options que nous souhaiterions avoir – ces étapes vous permettront de mettre à jour votre système de fichiers.