Publié le samedi 3 décembre 2005, mis a jour le samedi 16 décembre 2006, par Stephane MALINET
Reiser4 est le digne successeur de l’illustre système de fichiers reiserfs V3 qui a fait sa réputation par sa vélocité à manipuler les petits fichiers. Je ne rentrerais pas dans le détail des benchmarks, mais la vélocité de reiser4 est au rendez-vous : impressionnante car "visuelle"...
Une partition libre ne sera pas de trop pour notre histoire. Pour commencer, il vous faudra vous munir du Gentoo Rescue Reiser4 LiveCD GT (eh oui, on ne sait jamais...) :
$ wget http://shark.nauticaltech.com/~mspiegle/files/Gentoo-RR4-LiveCD-1.30.iso
Gravez l’image iso ainsi récupérée et gardez le CD-ROM sous le coude pour plus tard. Maintenant, il nous faut installer les outils reiser4.
Pour ce faire, il va falloir, si vous n’êtes pas en x86, taper ce qui suit :
$ echo sys-fs/reiser4progs ~x86 >> /etc/portage/package.keywords
et puis :
# emerge sys-fs/reiser4progs
Ensuite, il vous faut un noyau qui soit pacthé avec le support reiser4 : il n’en existe plus, en tout cas pour le 2.6.9, sinon les mm-sources-2.6.10 dans l’arbre officiel de Portage, et, en non-officiel, les loves-sources et les nitro-sources, mais, dans cet exemple, nous utiliserons les nitro-sources-2.6.9-r4 ("Less is more") dont vous trouverez la méthode d’installation ici en français. Pour voir apparaître les options concernant reiser4, il faut décocher l’option suivante dans le noyau :
Kernel hacking --->
[ ] Use 4Kb for kernel stacks instead of 8Kb
Ensuite, activez le support reiser4 :
File systems --->
<*> Reiser4 (EXPERIMENTAL very fast general purpose filesystem)
[*] Use larger keys on reiser4 tree
Une fois que vous aurez redémarrer sur ce noyau dument configurer vous serez prets, pour les moins aventuriers d’entre vous, à convertir une partition, ou bien, toutes vos partitions...
La partition /boot nécéssite que votre chargeur de démarrage soit patchée, il ne sera pas question de cette partie ici mais vous pouvez trouver le patch sur cette page.
Cette méthode n’est donnée que comme exemple : j’aurais tendance à préfèré un formatage. Nous allons prendre comme exemple la partition /home en /dev/hda4 car c’est une de celle qui posera le moins de problème à votre système si les choses se passaient mal.
Adaptez les commandes en rapport avec vos partitions. Quittez le mode graphique et identifiez-vous en tant que root.
Nous allons préalablement faire un backup de votre partition /home sur une partion que nous avons monter sur /mnt/dump... au cas où...
Avec la commande cp :
$ cp -a /home /mnt/dump
Vous constaterez que maintenant vous avez un /mnt/dump/home, avec les droits préservés... Ou avec la commande tar qui sera plus longue mais vous donnera une archive compressée :
$ tar -cvjpf /mnt/dump/home.tar.bz2 /home
Vous pouvez bien sûr choisir un autre format d’archive...
Maintenant nous allons démonter la partition et la convertir avec les outils reiser4 :
$ umount /home
$ debugfs.reiser4 -C /dev/hda4
$ fsck.reiser4 --fix /dev/hda4
$ fsck.reiser4 --build-sb /dev/hda4
et l’on re-vérifie une dernière fois si la reconstruction de l’arborescence s’est bien passée :
$ fsck.reiser4 --fix /dev/hda4
Avant de remonter la partition, nous alons modifier le fichier /etc/fstab avec vim dans l’exemple :
$ vi /etc/fstab
/dev/hda4 /home reiser4 defaults 0 0
L’option defaults correspond aux options notail,noatime.
Il ne reste plus qu’à remonter la partition /home :
$ mount /home
Si vous êtes convaincu par le système de fichiers reiser4 mais que vous voulez voir ce que donnerai un système complet, alors lisez ce qui suit.
Avant de passer toutes vos partitions en reiser4, nous allons éffectuer un backup de votre système avec tar, toujours au cas où (...).
Cette opération est particulièrement longue surtout si vous avez beaucoup de données, d’autre part, s’il y a des fichiers "non-compressibles" tel que des mp3, avi... ne vous attendez pas à avoir une "petite archive".
Par ailleurs, il est conseillé de faire une sauvegarde à partir d’un LiveCD, plutôt qu’ "à chaud", reportez-vous à cette page Howto : backup d’un systeme Linux pour plus d’informations.
A partir de maintenant, je part du principe que nous sommes sur le Gentoo Rescue Reiser4 LiveCD, que nous avons monter toutes nos partitions comme pour une installation ou un sauvetage :
Nous allons créer un fichier un fichier /mnt/gentoo/dump/exclude qui comprendra le répertoire de l’archive afin de l’exclure de la compression (...) :
$ cd /mnt/gentoo/dump/
$ vi exclude
et mettez-y la ligne suivante :
/mnt/gentoo/dump
maintenant nous allons lancer la sauvegarde :
$ tar -X exclude -cvjpf /mnt/gentoo/dump/backup.tar.bz2 /mnt/gentoo
Une fois l’opération terminée, nous allons démonter toutes les partitions et les convertir comme expliqué plus haut dans la partie Conversion.
N’oubliez pas de modifier votre fichier /etc/fstab en spécifiant le bon système de fichier ! sinon vous serez bon pour un sauvetage...
Si, par contre, vous vouliez formatez les partitions et ensuite restaurer votre système, alors la commande est :
$ mkfs.reiser4 /dev/hdax
Pour restaurer votre système, il vous suffit de remonter vos partitions nouvellement formatées et de décompresser votre archive, chrootez pour vérifier que votre système fonctionne correctement, et rebootez.
Evidemment, je ne peux être tenu pour responsable si quelque chose se passait mal...
Note : Le support reiser4 devrait être intégré dans le noyau 2.6.10 (à confirmer).