Déplacer sa partition /var vers une autre partition
Table des matières
Il peut arriver d'installer une distribution avec une seule partition (la partition / appelée racine). Or, après installation, on souhaiterait séparer /var dans une autre partition.
Cet article décrit la création de cette partition et le déplacement des données associées.
Démarrer le système depuis un Live CD.
Se connecter en tant que root (qu'on soit sur un live CD ou sur le système en fonctionnement).
Pour mon cas, j'ai inséré un deuxième disque dur dans mon ordinateur. Il s'appelle /dev/sdb
On créé une partition avec l'utilitaire cfdisk :
Dans cet exemple, ma future partition /var sera sdb1. Elle sera identifiée en tant que tel dans la suite.
On formate la partition en ext4 :
On monte ensuite cette partition dans un point de montage temporaire :
On vérifie que la partition est bien montée et en lecture écriture :
Le résultat doit ressembler à ceci :
Plusieurs méthodes peuvent être employées : archive tar ou utilisation de cp ou utilisation de rsync.
Je vais montrer ici l'utilisation avec rsync.
En une seule commande, on va copier les données de /var vers la partition nouvelle :
On attend que la console nous redonne la main.
Grâce aux options (et notamment -a) on va conserver les permissions, les liens symboliques et plein d'autres attributs.
Une fois fait, vérifier que tout s'est bien copié (à coup de ls )
Maintenant que nos données sont déplacées, il faut créer une entrée dans le fichier /etc/fstab pour que la nouvelle partition soit montée au démarrage du système.
Voici mon fichier fstab avant la modification.
On sauvegarde son ancien fichier fstab via :
Ensuite on édite le fichier fstab et on ajoute la ligne de la partition /var :
On ajoute un commentaire et la ligne qui va bien :
Maintenant, il ne reste plus qu'à supprimer les données de l'ancien /var afin de libérer de la place sur la partition racine :
On redémarre :
Constater que tout fonctionne
Enfin, on peut supprimer le point de montage temporaire :
Introduction
Il peut arriver d'installer une distribution avec une seule partition (la partition / appelée racine). Or, après installation, on souhaiterait séparer /var dans une autre partition.
Cet article décrit la création de cette partition et le déplacement des données associées.
Prérequis
Démarrer le système depuis un Live CD.
Se connecter en tant que root (qu'on soit sur un live CD ou sur le système en fonctionnement).
La préparation des partitions
Pour mon cas, j'ai inséré un deuxième disque dur dans mon ordinateur. Il s'appelle /dev/sdb
On créé une partition avec l'utilitaire cfdisk :
Code BASH :
cfdisk /dev/sdb
Dans cet exemple, ma future partition /var sera sdb1. Elle sera identifiée en tant que tel dans la suite.
On formate la partition en ext4 :
Code BASH :
mkfs.ext4 /dev/sdb1
On monte ensuite cette partition dans un point de montage temporaire :
Code BASH :
mkdir /vartmp mount /dev/sdb1 /vartmp
On vérifie que la partition est bien montée et en lecture écriture :
Code BASH :
mount | grep vartmp
Le résultat doit ressembler à ceci :
Code BASH :
/dev/sdb1 on /vartmp type ext4 (rw)
Déplacer les données
Plusieurs méthodes peuvent être employées : archive tar ou utilisation de cp ou utilisation de rsync.
Je vais montrer ici l'utilisation avec rsync.
En une seule commande, on va copier les données de /var vers la partition nouvelle :
Code BASH :
rsync -avzh /var/ /vartmp/
On attend que la console nous redonne la main.
Grâce aux options (et notamment -a) on va conserver les permissions, les liens symboliques et plein d'autres attributs.
Une fois fait, vérifier que tout s'est bien copié (à coup de ls )
Créer le point de montage dans le fstab
Maintenant que nos données sont déplacées, il faut créer une entrée dans le fichier /etc/fstab pour que la nouvelle partition soit montée au démarrage du système.
Voici mon fichier fstab avant la modification.
Code BASH :
more /etc/fstab # / was on /dev/sda2 during installation UUID=b29e1091-170a-450b-a843-3ca511e8131a / ext4 noatime,nodiratime 0 1 # swap was on /dev/sda1 during installation UUID=c6cb3562-4ae0-41bb-affa-da051ab6e2b5 none swap sw 0 0 proc /proc proc defaults 0 0 shm /dev/shm tmpfs nodev,nosuid,noexec 0 0
On sauvegarde son ancien fichier fstab via :
Code BASH :
cp -p /etc/fstab /etc/fstab.old
Ensuite on édite le fichier fstab et on ajoute la ligne de la partition /var :
Code BASH :
nano -w /etc/fstab
On ajoute un commentaire et la ligne qui va bien :
Code BASH :
# Partition /var /dev/sdb1 /var ext4 defaults 0 2
Suppression de l'ancien /var
Maintenant, il ne reste plus qu'à supprimer les données de l'ancien /var afin de libérer de la place sur la partition racine :
Code BASH :
rm -rf /var/*
On redémarre :
Code BASH :
reboot
Constater que tout fonctionne
Enfin, on peut supprimer le point de montage temporaire :
Code BASH :
rm -rf /vartmp