Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
deplacer_root [Le 10/02/2008, 22:17]
polarman ajout de l'instruction "sudo grub"
deplacer_root [Le 08/05/2023, 12:29] (Version actuelle)
81.220.114.136 [Pourquoi déplacer sa partition /]
Ligne 1: Ligne 1:
-{{tag>​partitions système ​brouillon}}+{{tag>​partitions système ​BROUILLON}}
  
 <​note>​Cette page est en cours de construction... Si vous êtes arrivé ici, c'est que le sujet vous intéresse. Si vous avez suffisamment de connaissances,​ vous pouvez continuer ce topic. (Pour ma part j'ai peu de temps a y consacré en ce moment malheureusement...) <​note>​Cette page est en cours de construction... Si vous êtes arrivé ici, c'est que le sujet vous intéresse. Si vous avez suffisamment de connaissances,​ vous pouvez continuer ce topic. (Pour ma part j'ai peu de temps a y consacré en ce moment malheureusement...)
  
-Pour plus d'info sur le sujet vous pouvez allez voir sur le forum: [[http://​forum.ubuntu-fr.org/​viewtopic.php?​id=141941|Deplacer contenue ​de / vers partition plus grande]]+Pour plus d'info sur le sujet vous pouvez allez voir sur le forum: [[https://​forum.ubuntu-fr.org/​viewtopic.php?​id=141941|Déplacer le contenu ​de / vers une partition plus grande]].
  
-Voir aussi [[:installation:​deplacer_home|la page traitant du déplacement du /​home]].</​note>​+Voir aussi [[:tutoriel:​deplacer_home|la page traitant du déplacement du /​home]].</​note>​
  
 ====== Déplacer sa racine(ou root (/)) ====== ====== Déplacer sa racine(ou root (/)) ======
 Cet article s'​adresse à ceux qui ont besoin de déplacer leur partition / (ou partition root). Cette partition est la partition principale du système Linux. Cet article s'​adresse à ceux qui ont besoin de déplacer leur partition / (ou partition root). Cette partition est la partition principale du système Linux.
- 
  
 ===== Pourquoi déplacer sa partition / ===== ===== Pourquoi déplacer sa partition / =====
-La principale raison de déplacer sa partition / est de conserver son système actuel avec toutes ​ces configurations et applications lors d'​une ​ré_organisation ​des partitions de son disque dur (déplacement,​ agrandisement,​ retrécissement de partitions, utilisation d'un autre disque dur, suppression de Windows du disque dur). +La principale raison de déplacer sa partition / est de conserver son système actuel avec toutes ​ses configurations et applications lors d'​une ​réorganisation ​des partitions de son disque dur (déplacement,​ agrandisement,​ retrécissement de partitions, utilisation d'un autre disque dur, suppression de Windows du disque dur). 
- +Mais également si on a des craintes avec un disque SSD un peu vieux.
 ===== Mode opératoire ===== ===== Mode opératoire =====
-La procédure de déplacement de la partition / consiste en 4 étapes:+La procédure de déplacement de la partition / consiste en 4 étapes :
  
   - Créer une partition vide avec suffisamment de place pour accueillir le futur système. Nous appellerons cette partition dans la suite "​new"​ en opposition à la partition actuelle que nous souhaitons déplacer et que nous appellerons "​old"​.   - Créer une partition vide avec suffisamment de place pour accueillir le futur système. Nous appellerons cette partition dans la suite "​new"​ en opposition à la partition actuelle que nous souhaitons déplacer et que nous appellerons "​old"​.
Ligne 22: Ligne 20:
   - Modifier les fichiers de gestion de partition (fstab) et modifier les fichiers de démarrage du système (grub).   - Modifier les fichiers de gestion de partition (fstab) et modifier les fichiers de démarrage du système (grub).
   - Effacer l'​ancienne partition après avoir vérifié que la nouvelle configuration de partition fonctionne correctement.   - Effacer l'​ancienne partition après avoir vérifié que la nouvelle configuration de partition fonctionne correctement.
- 
- 
  
 ===== Pré-requis ===== ===== Pré-requis =====
  
   * Posséder un live CD afin de pouvoir manipuler vos partitions de l'​extérieur.   * Posséder un live CD afin de pouvoir manipuler vos partitions de l'​extérieur.
-  * Posséder une connexion internet pour pouvoir installer [[GParted]] si celui ci ne figure pas sur le live CD. GParted ​figure sur le CD Gutsy.+  * Posséder une connexion internet pour pouvoir installer [[GParted]] si celui ci ne figure pas sur le live CD. 
 +  * Connaître les identifiants de ses partitions (sous la forme ''/​dev/​sda1''​),​ à l'aide de GParted ​ou de la commande <code bash>​sudo fdisk -l </​code>​
  
 ===== Déplacer son / ===== ===== Déplacer son / =====
- 
- 
  
 ==== Créer une nouvelle partition ==== ==== Créer une nouvelle partition ====
-Vous devez utiliser une partition vide et formater ​linux (ext3 ou ext2). Si vous n'avez pas déjà cette partition vous devez la créer. Pour modifier, créer ou supprimer vos partitions vous pouvez utiliser le logiciel [[GParted]] (ou d'​autres comme [[QtParted)]].+Vous devez utiliser une partition vide et formatée ​linux (voir la  page [[ssd_solid_state_drive#​choix_du_systeme_de_fichier|choix du système de fichier (SSD)]] si vous avez un SSD). Si vous n'avez pas déjà cette partitionvous devez la créer. Pour modifier, créer ou supprimer vos partitionsvous pouvez utiliser le logiciel [[GParted]] (ou d'​autres comme [[QtParted]]).
  
-<note important>​Attention,​ un disque dur ne peut pas supporter plus de partitions principales. Si vous avez besoin de plus de partitions, ​je vous conseille ​de créer une partition étendue, dans laquelle vous pourrez créer des partitions logiques.+<note important>​Attention,​ un disque dur utilisant une table de partition de type MBR (ce qui est le cas pour la majorité des PCs) ne peut pas supporter plus de quatre ​partitions principales. Si vous avez besoin de plus de partitions, ​il est conseillé ​de créer une partition étendue, dans laquelle vous pourrez créer des partitions logiques.
 </​note>​ </​note>​
  
-A voir: [[installation:​repartitionnner|Comment repartitionner]]+A voir: [[repartitionner|Comment repartitionner]]
  
 +==== Copier sa partition / ====
 +Maintenant qu'une nouvelle partition a été créée, il faut copier les fichiers de l'​ancienne vers la nouvelle. Pour cela, il faut booter à l'aide d'un live CD et lancer un terminal. Voici une série de commandes à exécuter pour copier les fichiers de la partition "​old"​ vers la partition "​new"​.
  
 +La copie peut se faire de différentes façons :
 +* En ligne de commande :
 +    * Avec dd
 +    * Avec rsync
 +    * Avec cp
 +  * En interface graphique :
 +    * Avec gparted
  
 +Avantages / inconvénients :
 +^Méthode^On doit monter les partitions avant la copie^On peut copier la partition root active^Copie le UUID et label^
 +|dd|non|oui|oui|
 +|rsync ou cp|oui|oui|non|
 +|gparted|non|non|oui|
  
  
 +<note important>​On prendra l'​exemple de l'​ancienne partition ("​old"​) :''/​dev/​sda1''​ (où Ubuntu est installé) \\ et la nouvelle partition ("​new"​) : ''/​dev/​sda3''​ (où Ubuntu sera installé)</​note>​
 +Pour plus d'​informations sur la gestion des partitions sous Linux, voir [[:​mount_fstab#​Présentation|cet article]]
  
- +=== Créer 2 répertoires (méthode rsync ou cp) === 
- +Les deux commandes ci-dessous permettent de créer deux répertoires qui serviront à monter les 2 partitions.
- +
- +
- +
- +
- +
- +
- +
- +
- +
- +
- +
- +
-==== Copier sa partition / ==== +
-Maintenant qu'une nouvelle partition a été créée, il faut copier les fichiers de l'​ancienne vers la nouvelle. Pour cela, il faut booter à l'aide d'un live CD et lancer un terminal. Voici une série de commandes à exécuter pour copier les fichiers de la partition "​old"​ hda4 vers la partition "​new"​ hda1. +
-Pour plus d'​informations sur la gestion des partitions sous Linux, voir [[installation:​mount_fstab#​Présentation|cet article]] +
- +
-  * Créer 2 répertoires +
-Les deux commandes ci-dessous permettent de créer deux répertoires qui serviront à monter les 2 partitions. "​old"​ représentera l'​ancienne partition (où ubuntu est pour l'​instant installé) et "​new"​ représentera donc la nouvelle partition où ubuntu sera installé).+
  
   sudo mkdir /old   sudo mkdir /old
   sudo mkdir /new   sudo mkdir /new
  
-  * Monter les 2 partitions +=== Monter les 2 partitions ​(méthode rsync ou cp) === 
-Les deux commandes [[installation:​mount_fstab#​La commande mount|mount]] ci-dessous permettent de monter les partitions dans les répertoires précédemment créés. +Les deux commandes [[:​mount_fstab#​La commande mount|mount]] ci-dessous permettent de monter les partitions dans les répertoires précédemment créés.
- +
-<note important>​Pensez à modifiez les partitions hda1 et hda4 en fonction de vos besoins !</​note>​ +
- +
-  sudo mount /dev/hda4 /old +
-  sudo mount /dev/hda1 /new +
- +
-  * Copie des fichiers ​  +
-Cette commande va lancer la copie de tous les fichiers de l'​ancienne partition vers la nouvelle. En fonction de la quantité de données, cela peut prendre plus ou moins de temps. +
- +
-  sudo cp -ax /old/. /new +
- +
-A ce moment, vous avez deux systèmes ubuntu installés sur votre disques dur. +
- +
- +
- +
- +
- +
- +
- +
- +
- +
- +
- +
- +
- +
- +
  
 +<note important>​Pensez à modifiez les partitions sda1 et sda3 en fonction de vos besoins !</​note>​
 +<code bash>​sudo mount /dev/sda1 /old
 +sudo mount /dev/sda3 /​new</​code>​
  
 +=== Copie des fichiers ===
 +Cette commande va lancer la copie de tous les fichiers de l'​ancienne partition vers la nouvelle. En fonction de la quantité de données, cela peut prendre plus ou moins de temps. Ici, on présente 3 méthodes : avec **rsync** ou **cp** ou **dd**
  
 +**Copie avec rsync**
 +<code bash>​sudo rsync -axHAXP /old/ /​new/</​code>​
  
 +Rsync permet l’arrêt, la reprise et est plus verbeux que cp. \\
 +Vous pouvez installer rsync dans le LiveCD (il disparaîtra à l'​extinction) à l'aide de la commande ''​sudo apt-get install rsync''​
  
 +**Ou copie avec cp**
 +<code bash>
 +cd /old
 +sudo cp -axRv . /new
 +</​code>​
  
 +<note important>​L'​option ''​-x''​ permet de ne pas copier en-dessous des liens logiques vers d'​autres partitions (comme ''/​home''​) pour ne copier que ce qui est réellement dans la partition. En d'​autres termes, si vous avez un ''/​home''​ séparé, il ne sera pas copié (option ''​-x''​). Vous devez donc, si vous le voulez, déplacer votre dossier utilisateur dans une nouvelle partition. (pas besoin d'​être dans un LiveCD)
 +</​note>​
  
 +**Ou copie avec dd**.
 +Une autre alternative est d'​utiliser [[dd#​copier_une_partition_de_disque_sur_un_autre_disque|Commande “dd” pour copier une partition]] :
 +  * Avantage :
 +    * la partition de destination sera un clone identique de la partition initiale
 +    * pas la peine de monter les disques
 +  * Avantage / inconvenient : l'​[[uuid_et_label|UUID et label]] sera copié. Il ne sera pas nécessaire de faire l'​étape suivante (edition de fstab). Par contre, vous devez changer l'UUID du disque initial soit en virant le disque initial, soit en changeant son UUID (astuce : un clic droit sur la partition dans l'​application [[gpart|gpart]])
  
 +A ce moment, vous avez deux systèmes Ubuntu installés sur votre (vos) disque(s) dur(s).
 ==== Modifier les fichiers de gestion du disque ==== ==== Modifier les fichiers de gestion du disque ====
 Il reste à modifier : Il reste à modifier :
 +  * le fichier de gestion des partitions ([[:​mount_fstab#​Le fichier fstab|fstab]]) pour indiquer au nouvel ubuntu la nouvelle organisation du disque dur.
   * la configuration de [[grub|grub]] pour que le démarrage s'​effectue bien sur la nouvelle partition.   * la configuration de [[grub|grub]] pour que le démarrage s'​effectue bien sur la nouvelle partition.
-  * le fichier de gestion des partitions ([[installation:​mount_fstab#​Le fichier fstab|fstab]]) pour indiquer au nouvel ubuntu la nouvelle organisation du disque dur. 
 Les deux étapes suivantes nécessitent de savoir utiliser un [[tutoriel:​comment_editer_un_fichier#​Partout (même sans interface graphique)|éditeur en mode texte]] comme nano ou vi. Les deux étapes suivantes nécessitent de savoir utiliser un [[tutoriel:​comment_editer_un_fichier#​Partout (même sans interface graphique)|éditeur en mode texte]] comme nano ou vi.
 +
 +<note important>​
 +Avant toute manipulation des fichiers fstab et menu.lst, pensez à en faire une sauvegarde dans un coin de votre ordinateur afin de pouvoir, le cas échéant, les restaurer</​note>​
 +=== Le fichier fstab ===
 +Dans le plus simple des cas, c'​est-à-dire si vous n'avez pas déplacé la partition de Swap, il n'y a qu'une ligne à changer. En effet le répertoire racine / devra désormais être monté sur la partition "​new"​. Ouvrez le fichier /​new/​etc/​fstab (fichier fstab situé sur la nouvelle partition). En suivant l'​exemple précédent,​ il faut remplacer la ligne :
 +<code bash>/​dev/​sda1 ​    / ​             ext4        defaults,​errors=remount-ro 0    1</​code>​
 +par la ligne :
 +<code bash>/​dev/​sda3 ​    / ​             ext4        defaults,​errors=remount-ro 0    1</​code>​
 +
 +<​note>​Si vous avez dû utiliser les UUID pour désigner les partitions avec grub, il faudra les réutiliser dans fstab. Voilà ce que donne la ligne :
 +<code bash>​UUID=b6702dea-bd1e-4177-a4d1-a5560b48836c /               ​ext3 ​   defaults,​errors=remount-ro 0    1</​code>​
 +</​note>​
 +<​note>​
 +Pour obtenir l'UUID d'une partition, tapez :
 +<code bash>​sudo blkid /​dev/​sda3</​code>​
 +</​note>​
  
 === Configuration de Grub === === Configuration de Grub ===
-Il va falloir modifier le menu de démarrage de grub. Pour cela, il suffit d'​éditer le fichier /​new/​boot/​grub/​menu.lst. 
  
-Voici un extrait du fichier qui contient les lignes ​à modifier :+== Mise à jour du menu de démarrage de Grub ==
  
-  title           ​Ubuntu 7.10kernel 2.6.22-14-generic +Démarrez le système depuis un live CDUn fois démarré ouvrez une consoleensuite le but est de monter la nouvelle partition ​root et de se loguer en super utilisateur ​se "​chrooter"​ sur la partition). Entrez les commandes suivantes (en remplaçant sda3 par votre nouvelle partition) : 
-  ​root            (hd0,3+<code bash>​sudo mount /dev/sda3 /mnt 
-  ​kernel ​         ​/boot/vmlinuz-2.6.22-14-generic ​ root=/dev/hda4 ro quiet splash +sudo mount --bind /dev /mnt/dev 
-  initrd ​         ​/boot/​initrd.img-2.6.22-14-generic +sudo mount --bind /proc /mnt/proc 
-  ​quiet +sudo mount --bind /sys /mnt/sys 
-   +sudo chroot ​/mnt /bin/bash</code>
-  title           ​Ubuntu 7.10, kernel 2.6.22-14-generic (recovery mode) +
-  root            (hd0,3) +
-  kernel ​         ​/boot/vmlinuz-2.6.22-14-generic ​  root=/dev/hda4 ro single +
-  initrd ​         ​/boot/​initrd.img-2.6.22-14-generic +
- +
-<​note>​Parfois,​ les partitions ne sont pas désignées par leur chemin (/dev/hda1) mais par leur UUID (numéro hexadécimal qui identifie une partition). Voilà ce que peut donner la ligne kernel dans ce cas : +
-  kernel ​         ​/boot/​vmlinuz-2.6.22-14-generic root=UUID=b6702dea-bd1e-4177-a4d1-a5560b48836c ro quiet splash +
-</note>+
  
-Il faut ensuite modifier les lignes root. En effet, grub démarrait sur la partition ​"old" ​hd0,3 (/dev/hda4) et doit maintenant ​ démarrer ​sur la partition ​"​new"​ hd0,0 (/​dev/​hda1).+<​note>​Si ​la commande chroot génère une erreur du type "bash: ... command not found", ​il est possible que le dossier ​/usr doive être monté ​sur une autre partition ​sdaY. Dans ce casil suffit d'​ajouter la ligne de commande :
  
-De même, il faut modifier les lignes kernel en indiquant le nouveau chemin du répertoire racine / (anciennement ​/dev/hda4, nouvellement /dev/hda1)+sudo mount /dev/sdaY /usr
  
-<​note>​Si votre fichier grub utilisait les UUID, vous devez retrouver le numéro de la nouvelle partition. Pour celà, vous pouvez utiliser la commande tune2fs. Par exemple, pour trouver l'UUID de la partition /dev/hda1 : 
-  sudo tune2fs -l /dev/hda1 | grep UUID 
 </​note>​ </​note>​
  
-Voici à quoi ressemble ​le fichier après modification ​+Ensuite il vous reste à mettre à jour le grub 
-  ​title ​          ​Ubuntu 7.10, kernel 2.6.22-14-generic +<code bash>​grub-mkconfig ​-/boot/grub/grub.cfg 
-  root            (hd0,0) +grub-install ​/dev/sda</code>
-  kernel ​         ​/boot/vmlinuz-2.6.22-14-generic ​ root=/​dev/​hda1 ro quiet splash +
-  initrd ​         /boot/initrd.img-2.6.22-14-generic +
-  ​quiet +
-   +
-  title           ​Ubuntu 7.10, kernel 2.6.22-14-generic (recovery mode) +
-  root            (hd0,0) +
-  kernel ​         /​boot/​vmlinuz-2.6.22-14-generic ​  root=/dev/hda1 ro single +
-  initrd ​         ​/boot/​initrd.img-2.6.22-14-generic+
  
-=== Le fichier fstab === +  * Si la commande ​"grub-install" ​échoue vous pouvez essayer <code bash> grub-install --recheck ​/dev/sda </code>
-Dans le plus simple des cas, c'est à dire si vous n'avez pas déplacé ​la partition de Swap, il n'y a qu'une ligne à changer. En effet le répertoire racine / devra désormais être monté sur la partition ​"new". Ouvrez le fichier ​/new/etc/fstab (fichier fstab situé sur la nouvelle partition). En suivant l'​exemple précédent,​ il faut ramplacer la ligne :+
  
-  ​/​dev/​hda4 ​    / ​             ext3        defaults,​errors=remount-ro 0    1+  ​* Si la commande "grub-mkconfig"​ échoue, essayez:
  
-par la ligne :+<note warning>​Attention nécessite d'​avoir un accès internet depuis le live CD = accès réseau, il peut arriver que les cartes WiFi ne soient pas reconnues</​note>​ 
 + <​code bash> apt-get remove --purge grub-pc 
 + ​apt-get install grub-pc </​code>​
  
-  ​/dev/hda1     / ​             ext3        defaults,​errors=remount-ro 0    1+<​note>​Si la nouvelle partition (contenant le /new) était sur un disque différent, pensez à modifier l'​ordre du boot dans le BIOS afin de démarrer sur ce nouveau disque</note>
  
-<​note>​Si vous avez du utiliser les UUID pour désigner les partitions avec grub, il faudra les réutiliser dans fstab. Voilà ce que donne la ligne +<​note>​Ne pas oublier d'​éditer le fichier de configuration /​etc/​initramfs-tools/​conf.d/​resume et de corriger l'UUID en le remplaçant par celui de l'​éventuelle nouvelle partition swap 
-  UUID=b6702dea-bd1e-4177-a4d1-a5560b48836c /               ​ext3 ​   defaults,​errors=remount-ro 0    1 +RESUME=UUID=<​uuid>​ 
-</​note>​+en remplaçant <​uuid>​ par la valeur adéquate… ​</​note>​
  
 Et voilà ! Il ne reste qu'à rebooter sans le live CD. Et voilà ! Il ne reste qu'à rebooter sans le live CD.
- 
-<​note>​Lorsque j'ai effectué la manipulation,​ j'ai réalisé de multiples essais et j'ai du réinstaller grub sur le MBR du disque dur. Mais je ne sais pas si l'​opération qui suit est nécessaire,​ dans le cas où l'on suit scrupuleusement les indications précédentes. ​ 
-Si à l'​issue de ce tuto, ubuntu ne démarre pas, redémarrez sur le Live CD et lancez le terminal. Tapez la commande : 
-  sudo grub 
- 
-Une invite de commande apparait. Tapez y les deux commandes suivantes (trouvées sur Linux France) : 
-  grub> root (hd0,0) 
-  ​ 
-  Filesystem type is ext2fs, partition type 0x83 
-  ​ 
-  grub> setup (hd0) 
-  ​ 
-  Checking if "/​boot/​grub/​stage1"​ exists... yes 
-  Checking if "/​boot/​grub/​stage2"​ exists... yes 
-  Running "​install /​boot/​grub/​stage1 d (hd0) /​boot/​grub/​stage2 p /​boot/​grub/​menu.lst"​... succeeded 
-  Done. 
-  ​ 
-  grub>​quit 
- 
-Redémarrez à nouveau, cette fois ça devrait être la bonne... 
-</​note>​ 
- 
  
 ====== Voir aussi ====== ====== Voir aussi ======
-  * [[:installation:​deplacer_home|Déplacer son /home]]+  * [[:tutoriel:​deplacer_home|Déplacer son /home]] 
 +  * [[:​deplacer_repertoire_usr|Déplacer son /usr]]
   * [[repartitionner|Comment repartitionner]]   * [[repartitionner|Comment repartitionner]]
  
  • deplacer_root.1202678254.txt.gz
  • Dernière modification: Le 10/02/2008, 22:20
  • (modification externe)