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.