sep 2007
27
Tutoriel : Comment déplacer et redimensionner une partition EXT3 sous Ubuntu ?
Par Anthony, à 01h06 dans Ubuntu | #51 | RSS | 4298 lectures
J'ai eu besoin il y a un petit moment de déplacer une partition ext3 qui était située en fin de disque pour l'agrandir et permettre aussi des temps d'accès plus rapide. Il s'agissait en effet de ma partition dédiée à Ubuntu, et comme je voulais qu'Ubuntu devienne mon OS principal, il fallait lui en donner les moyens. Je voulais donc enlever quelques gigas à XP (situé en début de partition) pour les affecter à Ubuntu. Seulement, mis à part quelques tutoriels pour redimensionner une partition ext3, j'ai bien eu du mal à trouver comment la déplacer, surtout pour une partition système. Une solution facile est de passer par le LiveCD de Gparted, encore faut-il avoir une connexion suffisante pour le télécharger rapidement, ce qui n'était pas mon cas à l'époque. Voici donc une petite méthode pour pouvoir déplacer une partition ext3 depuis le liveCD d'Ubuntu...
Tout d'abord, je tiens à préciser que ma solution nécessite de l'espace disque disponible, car nous allons passer par la copie complète de la partition. Ensuite, il faut disposer du Live CD d'Ubuntu (celui utilisé pour l'installation), afin pouvoir faire les modifications de configuration sur notre partition. En effet, en ayant Ubuntu de lancé depuis son disque dur, il n'est pas possible de faire toutes les opérations nécessaires car la partition est en cours d'utilisation.
Préparer de la partition
Tant qu'à faire, nous allons profiter de cette occasion pour faire un peu de ménage sur la partition en :
- supprimant les données inutiles (films deja gravés, etc...)
- supprimant les applications non utilisées :
sudo apt-get remove nom_paquet - supprimant les copies des paquets installés :
sudo apt-get clean - supprimant les copies des paquets desinstallés :
sudo apt-get autoclean - supprimant les paquets inutiles (généralement des dépendances obselètes) :
sudo apt-get autoremove - etc...
Cela va donc nous permettre d'avoir le plus d'espace disque disponible sur notre partition et de pouvoir la redimensionner à la taille minimum nécessaire grâce à Gparted ("System" => "Administration" => "GNOME Partition Editor"). Il est également nécessaire d'avoir l'équivalent en taille de cette partition en espace libre, à partir du point où l'on veut la faire débuter sur le disque.
Lancer le Live CD
Pour démarrer depuis le Live CD, vous devez (logiquement) inserer le CD dans votre lecteur, redémarrer et choisir lors du boot d'Ubuntu "Start or install Ubuntu". Le système va donc se charger en mémoire et nous pourrons effectuer toutes les manipulations nécessaires sur la partition. Pour plus de facilité, nous allons tout d'abord passer le clavier en AZERTY en allant dans le menu "System" => "Preferences" => "Keyboard" puis dans l'onglet "Layout". Voilà on peut commencer...
Copier la partition
Depuis Gparted, nous allons copier la partition à l'endroit souhaité, en sélectionnant la partition et en faisant un copier/coller et en appliquant les modifications.
Modifier la configuration de Grub1
Pour pouvoir accéder aux fichiers de configuration, il faut tout d'abord monter la partition que l'on a créée :
sudo mkdir /media/newPartition sudo mount /dev/sda5 /media/newPartition
Nous pouvons maintenant toucher à la configuration de Grub pour lui dire de booter sur la nouvelle partition.
sudo grub
Une fois rentré dans l'administration de grub, nous allons lui demander sur quelles partitions il trouve des configurations de grub :
find /boot/grub/stage1
Va alors s'afficher les emplacements des partitions trouvées sous cette forme :
(hd0, 3) (hd0, 4)
Pour faire la correspondance entre les partitions : (hd0, 4) équivaut à la partition /dev/sda5. Vous pouvez donc reconnaitre la nouvelle et l'ancienne partition en comparant avec les infos affichés sous Gparted. Nous pouvons alors lui désigner le grub que l'on souhaite charger.
root (hd0,4) setup (hd0) quit
Ensuite, nous allons éditer le menu de chargement de Grub :
sudo gedit /media/newPartition/boot/grub/menu.lst&
Une fois le fichier ouvert, nous allons modifier les parametres de chargement d'Ubuntu en remplaçant l'ancien emplacement par l'emplacement que l'on a défini dans l'administration de Grub :
title Ubuntu, kernel 2.6.20-16-generic root (hd0,3)
par :
title Ubuntu, kernel 2.6.20-16-generic root (hd0,4)
Modifier les UUID
Comme nous avons copié la partition, les deux partitions possèdent le même UUID, nous devons donc en définir un nouveau pour la nouvelle partition.
uuidgen
Cette commande va vous renvoyer un nouvel UUID comme par exemple :
66958ff1-53e3-4f95-b8f5-22c14295ef15
Nous allons donc assigner cet nouvel UUID à l'ancienne partition :
sudo tune2fs -U 66958ff1-53e3-4f95-b8f5-22c14295ef15 /dev/sda4
Pour pouvoir retrouver plus facilement les configs à modifier par la suite, nous allons regarder l'UUID de notre nouvelle partition :
sudo vol_id -u /dev/sda5
Ce qui donnera par exemple :
874873fe-9d56-462a-945e-e5166f33b58d
Ensuite, nous allons modifier le fichier fstab2 :
sudo gedit /media/newPartition/etc/fstab
Dans ce fichier nous allons modifier la ligne de commentaire située au dessus de l'UUID de notre partition :
# /dev/sda4 UUID=874873fe-9d56-462a-945e-e5166f33b58d / ext3 defaults,errors=remount-ro 0 1
par
# /dev/sda5 UUID=874873fe-9d56-462a-945e-e5166f33b58d / ext3 defaults,errors=remount-ro 0 1
puis nous allons modifier le fichier blkid.tab3 en modifiant la ligne correspondant à l'UUID de notre partition :
<device DEVNO="0x0808" TIME="1189544172" UUID="874873fe-9d56-462a-945e-e5166f33b58d" SEC_TYPE="ext2" TYPE="ext3">/dev/sda3</device>
à remplacer par
<device DEVNO="0x0808" TIME="1189544172" UUID="874873fe-9d56-462a-945e-e5166f33b58d" SEC_TYPE="ext2" TYPE="ext3">/dev/sda4</device>
Supprimer l'ancienne partition
Avant de supprimer l'ancienne partition, nous allons d'abord vérifier que Grub charge bien la nouvelle partition, en créant un dossier sur le Desktop que l'on verra en se connectant si la configuration est correcte :
cd /media/newPartition/home/nom_utilisateur/Desktop sudo mkdir bonne_partition
Puis redémarrez. Normalement vous devriez voir en vous connectant le dossier "bonne_partition" sur votre bureau. Si ce n'est pas le cas, redémarrez avec le LiveCD et vérifier bien toutes les étapes.
Si tout est bon, nous allons pouvoir supprimer l'ancienne partition avec Gparted. Pensez par contre à démonter la partition ainsi que toutes les partitions ayant un numéro plus élevé que celle-ci (> sda3 dans notre cas), sinon il vous affichera un message d'erreur.
sudo umount /media/newPartition
Attention !
Dans le cas où il existe des partitions ayant un numéro plus élevé que la partition que l'on a supprimé (> sda3 dans notre cas), toutes ces partitions changeront de numéro (sda4 devient sda3, sda5 devient sda4, etc...). Il peut donc être nécessaire de repasser les modifications que l'on faite pour adapter les numéros [1] [2] [3], ce qui est notre cas. Dans le cas contraire, aucune autre modification n'est nécessaire.
Notes :
Certains auront pu remarquer que dans notre exemple, nous aurions pu simplement copier/coller la partition et supprimer l'ancienne, notre nouvelle partition reprennant l'UUID et le numéro de la partition que l'on a supprimé. Néanmoins, cela nous permet d'être sûr que l'on bootera bien sur notre nouvelle partition et que l'on ne perdra pas nos données avant de supprimer l'ancienne. La méthode "rapide" est donc à reserver à ceux ayant les connaissances nécessaires pour se lancer... sans craintes.

Commentaires
#1 - Le 22 octobre 2007 à 16h02, par sciensous
#2 - Le 22 février 2008 à 13h54, par MrBark
#3 - Le 22 février 2008 à 20h41, par Aguillem
Ajouter un commentaire
Les commentaires pour ce billet sont fermés.