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
tutoriel:deplacer_home [Le 27/12/2014, 16:23]
82.253.143.37 [Étape 2 : Mettre à jour les points de montage]
tutoriel:deplacer_home [Le 29/02/2024, 12:53] (Version actuelle)
geole [Procédure avec peu de commentaires] quasiment en lignes de commandes
Ligne 7: Ligne 7:
 ===== Préambule ===== ===== Préambule =====
  
-**Déplacer le dossier HOME est fastidieux et dangereux. Si votre situation le permet vous devriez d'​abord envisager de choisir sa localisation au moment de l'​installationCette manipulation est simplissime: ​ Installer ubuntu manuellement (choisir "faire autre chose" lors de l'​installation). Puis, en plus de choisir la taille et l'​emplacement du "​SWAP"​ et du "\", ​ indiquer la partition que vous souhaitez utiliser pour le HOME en lui donnant l'​étiquette "\HOME"​...**+**Déplacer le dossier HOME est fastidieux et dangereux. Si votre situation le permetvous devriez d'​abord envisager de choisir sa localisation au moment de l'​installationCette manipulation est simplissime :  Installer ubuntu manuellement (choisir "faire autre chose" lors de l'​installation). Puis, en plus de choisir la taille et l'​emplacement du "​SWAP"​ et de la racine ​"/", ​ indiquer la partition que vous souhaitez utiliser pour le HOME en lui donnant l'​étiquette "/HOME"​...**
  
-Si votre situation nécessite un déplacement du HOME sans réinstaller ubuntu+Si votre situation nécessite un déplacement du HOME sans réinstaller ubuntu, les modifications présentées ici ne sont **pas** triviales. Elles nécessitent un minimum de soin. Afin d'​éviter tout problème, **[[:​tutoriel:​sauvegarder_home|faites une sauvegarde de votre répertoire /home]]** (préférablement sur un support externe, comme une partition **linux**((Comme les systèmes de fichiers de Windows (fat32, exfat, ntfs) n'​enregistrent pas les droits des fichiers linux, une sauvegarde sur un de ces systèmes corromprait la sauvegarde.)) d'un disque dur externe ou d'une clé USB ou un DVD-R par exemple) avant toute manipulationEn cas d'​erreur,​ il est possible que vous perdiez l'​intégralité de vos fichiers importants et de votre configuration actuelle ​. Il est donc important d'en conserver une copie accessible à tout moment. 
-Les modifications présentées ici ne sont **pas** triviales. Elles nécessitent un minimum de soin. Afin d'​éviter tout problème, **[[:​tutoriel:​sauvegarder_home|faites une sauvegarde de votre répertoire /home]]** (préférablement sur un support externe, comme un disque dur USB, une clé USB ou un DVD-R par exemple) avant toute manipulation ​En cas d'​erreur,​ il est possible que vous perdiez l'​intégralité de vos fichiers importants et de votre configuration actuelle ​; il est donc important d'en conserver une copie accessible à tout moment.+ 
 +<note help>​Pensez aussi que, le plus souvent, il suffit simplement de [[https://​forum.ubuntu-fr.org/​viewtopic.php?​id=1506051|déplacer vos données ​ ]] 
 +</​note>​
  
 ===== Public ===== ===== Public =====
  
-Si vous avez effectué une installation par défaut, votre répertoire /home se trouve sur la même partition que la racine /. Mais cette situation, qui a des avantages et des inconvénients,​ peut-être modifiée.+Si vous avez effectué une installation par défaut, votre répertoire /home se trouve sur la même partition que la racine /. Mais cette situation, qui a des avantages et des inconvénients,​ peut être modifiée.
  
 Le dossier /home contient : Le dossier /home contient :
-  * tous vos fichiers personnels,  +  * tous vos fichiers personnels,​ 
-  * des répertoires cachés avec la configuration de vos logiciels et de votre interface. ​+  * des répertoires cachés avec la configuration de vos logiciels et de votre interface.
  
 ==== Avantages d'un /home séparé ==== ==== Avantages d'un /home séparé ====
  
 Les avantages d'un /home séparé sont : Les avantages d'un /home séparé sont :
-  * la possibilité de partager ce /home entre plusieurs distributions GNU/Linux utilisant les mêmes versions de logiciels ​(par exemple Ubuntu 10.04 et Kubuntu 10.04), ou bien n'​importe quelles versions si vous utilisez des noms d'​utilisateurs différents((attention,​ les configurations de logiciels peuvent ne pas être rétro-compatibles,​ [[http://​forum.ubuntu-fr.org/​viewtopic.php?​pid=3886346#​p3886346|exemples]].)).  +  * la possibilité de partager ce /home entre plusieurs distributions GNU/Linux utilisant les mêmes versions de logiciels, ou bien n'​importe quelles versions si vous utilisez des noms d'​utilisateurs différents((attention,​ les configurations de logiciels peuvent ne pas être rétro-compatibles,​ [[http://​forum.ubuntu-fr.org/​viewtopic.php?​pid=3886346#​p3886346|exemples]].)). 
-  * Possibilité ​de crypter ​vos données avec [[:​cryptsetup]]+  * la possibilité ​de chiffrer ​vos données avec [[:​cryptsetup]]
   * il est plus facile de récupérer un /home séparé en cas de mauvaise manipulation sur la partition racine (/).   * il est plus facile de récupérer un /home séparé en cas de mauvaise manipulation sur la partition racine (/).
  
-**Note :** depuis Ubuntu 8.04 LTS, il n'​est ​plus indispensable d'​avoir un /home séparé pour réinstaller Ubuntu sans perdre son /home. ([[:​reinstallation_ubuntu|plus d'​informations]]). ​+**Note :** Il n'​est ​pas indispensable d'​avoir un /home séparé pour réinstaller Ubuntu sans perdre son /home. ([[:​reinstallation_ubuntu|plus d'​informations]]). ​
  
 ==== Inconvénients d'un /home séparé ==== ==== Inconvénients d'un /home séparé ====
  
   * Complexité relative de la démarche   * Complexité relative de la démarche
-  * Il faut réserver de la place libre sur la partition (/) qui contient Ubuntu (pour les mises à jour ou les ajouts de logiciels), et de la place libre sur la partition /home séparée (pour des ajouts de fichiers). La méthode du /home séparé prend donc plus de place disque. ​+  * Il faut réserver de la place libre sur la partition (/) qui contient Ubuntu (pour les mises à jour ou les ajouts de logiciels), et de la place libre sur la partition /home séparée (pour des ajouts de fichiers). La méthode du /home séparé prend donc plus de place disque.
   * Si vous attribuez trop peu d'​espace à votre partition racine (/), vous risquez de recevoir des notifications gênantes ([[http://​forum.ubuntu-fr.org/​viewtopic.php?​pid=4078454#​p4078454|exemple]]),​ d'​être bloqué pour ajouter des logiciels supplémentaires,​ voire de faire bugguer Ubuntu si votre partition / est quasi-pleine ([[https://​bugs.launchpad.net/​bugs/​610358|exemple]]). Un /home séparé n'est donc pas recommandé si vous possédez un petit disque dur (<20Gio par exemple) et ne savez pas anticiper vos besoins en espace sur la partition racine (/).   * Si vous attribuez trop peu d'​espace à votre partition racine (/), vous risquez de recevoir des notifications gênantes ([[http://​forum.ubuntu-fr.org/​viewtopic.php?​pid=4078454#​p4078454|exemple]]),​ d'​être bloqué pour ajouter des logiciels supplémentaires,​ voire de faire bugguer Ubuntu si votre partition / est quasi-pleine ([[https://​bugs.launchpad.net/​bugs/​610358|exemple]]). Un /home séparé n'est donc pas recommandé si vous possédez un petit disque dur (<20Gio par exemple) et ne savez pas anticiper vos besoins en espace sur la partition racine (/).
 +  * Si l'​ordinateur se [[https://​forum.ubuntu-fr.org/​viewtopic.php?​pid=22517024#​p22517024|plante]],​ le redémarrage ne se fait pas facilement.
 +  * Si le répertoire home est mis dans un disque dur alors qu'il existe un SSD ou un NVME pour accueillir tout le logiciel qu'il héberge, le fonctionnement des applications sera ralenti.
  
  
-<note important>​La séparation du /home est généralement superflue, voire gênante si vous débutez avec Ubuntu.</​note>​ +Si le /home séparé vous semble bien adapté à vos besoins (en cas de doute, posez votre question sur [[https://​forum.ubuntu-fr.org/​viewtopic.php?​id=397167|ce forum]]), les **2 démarches** ci-dessous vous permettent d'​effectuer cette opération, soit avec le terminal, soit en mode (presque) graphique. 
- +==== La bonne solution ==== 
-Si le /home séparé vous semble bien adapté à vos besoins (en cas de doute, posez votre question sur [[http://​forum.ubuntu-fr.org/​viewtopic.php?​id=397167|ce forum]]), les **2 démarches** ci-dessous vous permettent d'​effectuer cette opération, soit avec le terminal, soit en mode (presque) graphique.+Pas de partition contenant des données personnelles et du logiciel accessibles par le point de montage **/home** mais une partition contenant seulement les données personnelles accessibles par le point de montage **/​media/​Data** [[https://​doc.ubuntu-fr.org/​organiser_data_utilisateurs#​home_ou_le_repertoire_personnelhomeuser|consulter le principe. ]]
  
  
 ===== Méthode 1 : Démarche en mode (presque) graphique ===== ===== Méthode 1 : Démarche en mode (presque) graphique =====
  
-Testé sur Ubuntu 9.10, Ubuntu 12.04 LTS et Gnome, mais devrait fonctionner sous d'​autres versions d'​Ubuntu,​ et doit être assez facile à adapter pour KDE. 
- 
-<note important>​Installer le logiciel [[:​disk-manager|Disk-Manager]] avant de commencer ! Et lancez le avant de neutraliser le  /home en le renommant /oldhome !</​note>​ 
  
 ==== Procédure avec peu de commentaires ==== ==== Procédure avec peu de commentaires ====
  
 +  - Vérifier que vous avez un éditeur de partition et un utilitaire de disque : points 1 et 2 de "3.2 Procédure très commentée"​.
   - Créer avec votre [[:​partitions#​comment_creer_et_supprimer_des_partitions_et_des_systemes_de_fichiers|éditeur de partitions]] ([[:​Gparted]] par exemple) une partition séparée et l'​appeler (étiquette) **newhome**.   - Créer avec votre [[:​partitions#​comment_creer_et_supprimer_des_partitions_et_des_systemes_de_fichiers|éditeur de partitions]] ([[:​Gparted]] par exemple) une partition séparée et l'​appeler (étiquette) **newhome**.
   - Monter la partition newhome en cliquant dessus dans votre navigateur de fichier (de façon ponctuelle, juste pour pouvoir copier).   - Monter la partition newhome en cliquant dessus dans votre navigateur de fichier (de façon ponctuelle, juste pour pouvoir copier).
-  - Saisir dans un terminal ​**sudo cp -av /home//​media/​newhome/​** ce qui copie le contenu de /home (mais pas le /home lui même) sur la nouvelle partition. +  - Saisir dans un terminal ​//- Attention il faut bien un espace entre le . et /media -//  
-  - Lancer votre [[:​gestionnaire de fichiers]] en [[:​sudo|mode administrateur]] ​(par exemple : ALT+F2 puis **gksudo nautilus**, ou **gksudo nemo** pour linux Mint >​=14) ​et neutraliser l'​ancien **/home** en le renommant en **/​oldhome**. +<​code>​sudo cp -av /home//media/(nom d'​utilisateur)/newhome/</​code> ​ce qui copie le contenu de /home (mais pas le /home lui même) sur la nouvelle partition. 
-  - Créer immédiatement via votre [[:​gestionnaire de fichiers]] (en [[:​sudo|mode administrateur]]) un nouveau répertoire **/home** vide, puis dans celui-ci créez un dossier du nom de votre login+  - Lancer votre [[:​gestionnaire de fichiers]] en [[:​sudo|mode administrateur]] et neutraliser l'​ancien **/home** en le renommant en **/​oldhome**. 
-  - Installer puis lancer [[:​Disk-Manager]]. Dans celui-ci, cliquer sur la partition séparée /​newhome, ​cocher ​la colonne « active » (ce qui permettra à votre nouveau /home de se monter au démarrage), puis cliquez ​sur le bouton « modifier ». Dans « point de montage ​», saisissez **/home**. Dans  « options », laissez « defaults ». +  - Créer immédiatement via votre [[:​gestionnaire de fichiers]] (en [[:​sudo|mode administrateur]]) un nouveau répertoire **/home** vide (il servira ​de point de montage à la nouvelle partition)
-  - Redémarrer le système. Votre /home pointe maintenant sur une partition séparée.+  - Lancez l'​application '​Disques'​. Dans celui-ci, ​ 
 +       ​- ​cliquer sur la partition séparée /​newhome, ​ 
 +       - puis sur la roue dentée '​Autres actions'​ 
 +       ​- ​puis sur '​Modifier les options de montages  
 +       - Décocher '​Options de montage automatique'​ 
 +       - Changez ​point de montage ​pour /home 
 +  - Redémarrer le système. Votre partition séparée monte dorénavant dans le dossier ​/home de votre système.
  
-<note tip>Si vous déplacez un ''/​home''​ déjà sur une partition séparée, Suivez les points 1 à 3. Ensuite il vous suffit de [[:​comment_modifier_un_fichier#​en_ligne_de_commande|modifier]] le fichier **/​etc/​fstab** (faites une [[:​comment_sauver_et_restaurer_un_fichier#​en_ligne_de_commande|copie]] de ce fichier avant modification) avec les droits administrateurs afin **de pointer vers le nouveau /home** \\ +<note tip>Si vous déplacez un ''/​home''​ déjà sur une partition séparée, Suivez les points 1 à 3. Ensuite il vous suffit de [[:tutoriel:​comment_modifier_un_fichier|modifier]] le fichier **/​etc/​fstab** (faites une [[:​comment_sauver_et_restaurer_un_fichier#​en_ligne_de_commande|copie]] de ce fichier avant modification) avec les droits administrateurs afin **de pointer vers le nouveau /home** \\ 
-Vous aurez besoin de connaître l'​[[:​uuid_et_label|UUID]] de la partition du nouveau /home \\ **''##​liste les partitions et leur UUID##''​**<​code>​sudo blkid</​code>​ **''##​Sauvegarde du fichier /​etc/​fstab##''​**<​code>​sudo cp -a /etc/fstab /​etc/​fstab.save</​code>​**''##​Modifiez le fichier /​etc/​fstab##''​** <​code>​gksudo ​gedit /​etc/​fstab</​code>​ +Vous aurez besoin de connaître l'​[[:​uuid_et_label|UUID]] de la partition du nouveau /home \\ 
-Cherchez la ligne pointant vers l'​ancien home et remplacez l'​[[:​uuid_et_label|UUID]] par celui de la partition du **nouveau /home**. Profitez-en pour changer dans les commentaires le /dev/sdXy par le nouveau (vous pouvez le trouver avec l'​[[:​gnome-disk-utility|utilitaire de disque]] en cliquant sur la partition voulue) comme dans **l'​exemple ci-dessous** :+**''##​liste les partitions et leur UUID##''​**\\ 
 +<​code>​sudo blkid</​code>​ 
 +**''##​Sauvegarde du fichier /​etc/​fstab##''​**\\ 
 +<​code>​sudo cp -a /etc/fstab /​etc/​fstab.save</​code>​ 
 +**''##​Modifiez le fichier /​etc/​fstab##''​**\\ 
 +<​code>​gedit ​admin:///​etc/​fstab</​code>​ 
 +Cherchez la ligne pointant vers l'​ancien home et remplacez l'​[[:​uuid_et_label|UUID]] par celui de la partition du **nouveau /home**. Profitez-en pour changer dans les commentaires le /dev/sdXy par le nouveau (vous pouvez le trouver avec l'​[[:​gnome-disk-utility|utilitaire de disque]] en cliquant sur la partition voulue) comme dans **l'​exemple ci-dessous** :\\
 <​file>#​Entry for /dev/sdc1 : <​file>#​Entry for /dev/sdc1 :
 UUID=905ce836-7aa9-4413-853f-126a0eb2587c /​home ext4 defaults 0 2</​file>​ UUID=905ce836-7aa9-4413-853f-126a0eb2587c /​home ext4 defaults 0 2</​file>​
 Fermez et enregistrez le fichier puis redémarrer votre ordinateur </​note>​ Fermez et enregistrez le fichier puis redémarrer votre ordinateur </​note>​
 +==== Procédure quasiment en ligne de commande ====
 +  * Lancer gparted pour fabriquer la partition ext4 ayant une  étiquette **newhome**. <code bash> gparted</​code>​
 +  * Monter la partition nouvellement créée. <code bash> udisksctl mount -b /​dev/​disk/​by-label/​newhome</​code>​
 +  * Arrêter firefox et thunderbird avant la duplication est une bonne idée.
 +  * Dupliquer le contenu de la partition. <code bash> sudo cp -avu /home/. /​media/​$USER/​newhome/</​code>​
 +  * Eventuellement,​ vérifier que la quantité de fichiers dupliqués ​ est proche de celle existante actuellement. ( firefox est connu pour fabriquer et supprimer régulièrement des fichiers dans le répertoire **.cache**) <code bash>​sudo ls -1 -Rals /home    | wc -l ; sudo ls -1 -Rals /​media/​$USER/​newhome ​  | wc -l</​code>​
 +  * Eventuellement relancer firefox et thunderbird.
 +  * Vérifier que le répertoire utilisateur est bien présent. <code bash>ls -als /​media/​$USER/​newhome/​$USER</​code>​
 +  * Récupérer le UUID de la nouvelle partition. <code bash>​UUID=$(sudo blkid  | grep newhome| ​ grep -oP ' UUID=\K.*(?​=BLOCK)'​ | cut -d'"'​ -f2)</​code>​
 +  * Vérifier que la commande a bien récupéré un UUID de la forme xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx. <code bash> echo $UUID</​code>​
 +  * Mettre à jour le fichier /etc/fstab pour que cette nouvelle partition soit montée automatiquement.<​code bash> echo $UUID | cut -d'"'​ -f2) /home ext4 defaults 0 2 | sudo tee -a /​etc/​fstab</​code>​
 +  * Neutraliser l'​ancien home.<​code bash>​sudo mv -v /home  /oldhome </​code>​
 +  * Rebooter.
 +  * Vérifier que le nouveau home est bien utilisé.<​code bash>df -htext4</​code>​
 +  * Supprimer le vieux home.<​code bash>​sudo rm -Rv /​oldhome</​code>​
 +  * Vérifier que l'​espace disque de la partition contenant le logiciel de base dispose maintenant de plus de place. <code bash>df -htext4</​code>​
 +
 +
  
  
 ==== Procédure très commentée ==== ==== Procédure très commentée ====
  
-  - Installer [[:​Gparted]] par la logithèque Ubuntu, ou [[:software-center]] (Application / logitèque Ubuntu / Outils système / Outil de partitionnement Gnome), ou par [[:​Synaptic]] (Système / Administration / Gestionnaire de paquet), ou par [[:Apper]] (si vous êtes dans [[:​kubuntu]]).+  - Installer [[:​Gparted]] par la logithèque Ubuntu, ou [[:gnome-software]] (Application / logitèque Ubuntu / Outils système / Outil de partitionnement Gnome), ou par [[:​Synaptic]] (Système / Administration / Gestionnaire de paquet), ou par [[:Muon]] (si vous êtes dans [[:​kubuntu]]).
   - Installer [[:​Disk-Manager]]   - Installer [[:​Disk-Manager]]
   - Lancer [[:​Gparted]] (dans [[:gnome]] : Système / Administration / Gparted).   - Lancer [[:​Gparted]] (dans [[:gnome]] : Système / Administration / Gparted).
Ligne 97: Ligne 129:
 <​file>#​Entry for /dev/sda3 : <​file>#​Entry for /dev/sda3 :
 UUID=acda7b4a-xxxxx /​home ext4 defaults 0 0</​file>​ UUID=acda7b4a-xxxxx /​home ext4 defaults 0 0</​file>​
-    * Si par contre tout a bien marché, lors d'une prochaine installation d'​Ubuntu,​ vous n'​aurez qu'à réinstaller Ubuntu sur la partition système, sans toucher à la partition /newhome/. Pour ce faire, voir [[:​reinstallation_ubuntu]].+    * Si par contre tout a bien marché, lors d'une prochaine installation d'​Ubuntu,​ vous n'​aurez qu'à réinstaller Ubuntu sur la partition système, sans toucher à la partition /newhome/. Pour ce faire, voir cette [[:​reinstallation_ubuntu|page]].
  
-Et votre système redémarrera avec l'​ancienne configuration et les anciens fichiers se trouvant sur le /home séparé. ​+Et votre système redémarrera avec l'​ancienne configuration et les anciens fichiers se trouvant sur le /home séparé.
 D'​éventuels thèmes ou logiciels précédemment installés devront par contre l'​être à nouveau, mais une fois ceci fait, ils démarreront avec la configuration qu'ils avaient antérieurement,​ car ils la retrouveront sur le /home séparé. D'​éventuels thèmes ou logiciels précédemment installés devront par contre l'​être à nouveau, mais une fois ceci fait, ils démarreront avec la configuration qu'ils avaient antérieurement,​ car ils la retrouveront sur le /home séparé.
  
-<note important>​Si le disk manager refuse de se lancer (précisément à cause du renommage de votre /home), utilisez la commande "mount /dev/sda3 /​home"​. Après ça, il devrait se lancer sans problème (ensuite, cliquez sur la partition séparée /home (et non /newhome) et cochez la colonne « active » et passez à l'​étape 3.2.13). ​ +<note important>​Si le disk manager refuse de se lancer (précisément à cause du renommage de votre /home), utilisez la commande "mount /dev/sda3 /​home"​. Après ça, il devrait se lancer sans problème (ensuite, cliquez sur la partition séparée /home (et non /newhome) et cochez la colonne « active » et passez à l'​étape 3.2.13).
 Si il ne se lance toujours pas, passez à l'​étape 4.3.</​note>​ Si il ne se lance toujours pas, passez à l'​étape 4.3.</​note>​
  
Ligne 109: Ligne 141:
 Cette méthode est rapide et simple à exécuter. Elle repose sur l'​utilisation de **Disk-Manager**. Cette méthode est rapide et simple à exécuter. Elle repose sur l'​utilisation de **Disk-Manager**.
  
-==== Préalable ==== 
  
-  * Créez avec [[:​Gparted]] la partition destinée au futur /home. On supposera ici que cette partition est **sda6**. +===== Méthode ​: Démarche avec le terminal =====
-<​note>​Cette opération peut nécessiter de démarrer en LiveCD, dans un premier temps, si une ou des partitions concernées sont actuellement en service</​note>​ +
-  * Installez [[:​Disk-Manager]] si l'​application n'est pas déjà installée.  +
-  * Lancez Disk-Manager qui mettra à jour le fichier **/​etc/​fstab** et créera les points de montage. On choisira à cette étape **/​new.home**,​ comme point de montage pour la partition **sda6**.  +
-  * Montez les partitions.  +
- +
-==== Déplacement du /home ==== +
- +
-  * Copiez le contenu du /home actuel dans le nouveau : <​code>​sudo rsync -av /home/ /​new.home</​code>​ +
-  * Vérifiez par sécurité le contenu du futur /home : <​code>​ls -la /​new.home</​code>​  +
-  * Changez ensuite le nom de l'​ancien /home en **/​old.home** : <​code>​sudo mv /home /​old.home</​code>​ +
-  * Relancez Disk-Manager pour attribuer le nouveau point de montage **/home** à la partition **sda6** +
-  * Redémarrez l'​ordinateur. Le nouveau /home est monté et en service. +
- +
-<​note>​Par prudence, attendez quelques jours pour vérifier que tout va bien, supprimez alors de la racine le dossier /old.home et redimensionnez les différentes partitions pour utiliser l'​espace libéré.  +
-</​note>​ +
- +
- +
-===== Méthode ​: Démarche avec le terminal =====+
  
 ==== Pré-requis ==== ==== Pré-requis ====
Ligne 146: Ligne 159:
 <note tip>Une fois démarré en mode recovery, vous n'​aurez plus ni accès au mode graphique, ni accès à Internet. Il est donc nécessaire d'​imprimer cette page, ou alors d'​avoir deux ordinateurs pour pouvoir suivre les étapes à réaliser sur une autre machine…</​note>​ <note tip>Une fois démarré en mode recovery, vous n'​aurez plus ni accès au mode graphique, ni accès à Internet. Il est donc nécessaire d'​imprimer cette page, ou alors d'​avoir deux ordinateurs pour pouvoir suivre les étapes à réaliser sur une autre machine…</​note>​
  
-<note important>​ 
-Sur ubuntu 12.10, en recovery mode, la partition "/"​ est monté en read-only. Pour la monter en read-write, il faut utiliser 
-<​code>​mount -o rw,remount /</​code>​ 
-Si on évite cette manipulation,​ il est impossible de modifier le fichier /etc/fstab 
-</​note>​ 
  
 ==== Étape 1 : Copie ==== ==== Étape 1 : Copie ====
Ligne 157: Ligne 165:
  
 **telinit 1 fait passer le systeme en runlevel 1, sur un serveur distant vous perdrez donc votre connexion SSH, necessitant un reboot materiel, ou le changement d'​utilisateur.** **telinit 1 fait passer le systeme en runlevel 1, sur un serveur distant vous perdrez donc votre connexion SSH, necessitant un reboot materiel, ou le changement d'​utilisateur.**
- +En recovery mode, la partition "/"​ est monté en read-only. Pour la monter en read-write, il faut utiliser :​ 
-Le but est de copier tout ce que vous avez dans /home, dans la nouvelle partition. Pour cela, il faut d'​abord "​monter"​ la partition en question : +<​code>​mount -o rw,remount /</​code>​ 
 +Le but est de copier tout ce que vous avez dans /home, dans la nouvelle partition. Pour cela, il faut d'​abord "​monter"​ la partition en question :​
   mkdir /​nouveau-home   mkdir /​nouveau-home
   mount /dev/sda3 /​nouveau-home/​   mount /dev/sda3 /​nouveau-home/​
Ligne 190: Ligne 198:
   blkid /dev/sda3   blkid /dev/sda3
  
-Prenez un papier et un crayon, et notez soigneusement l'uuid que vous renvoie cette commandeEnsuite, éditez le fichier /etc/fstab :+Prenez un papier et un crayon, et notez soigneusement l'uuid que vous renvoie cette commande ​ou ajoutez automatiquement l'uuid à la fin de /etc/fstab : 
 + 
 +  blkid /dev/sda3 >> /​etc/​fstab 
 + 
 +Ensuite, éditez le fichier /etc/fstab :
  
   nano /etc/fstab   nano /etc/fstab
  
-Et ajoutez une ligne comme ceci :+Et ajoutez/​modifier ​une/​cette ​ligne comme ceci :
  
 <​file>​ <​file>​
Ligne 229: Ligne 241:
   * **Cas n<​sup>​o</​sup>​ 2 :** Votre home était déjà sur une partition séparée : vous pouvez simplement [[:​partitions#​que_signifie_formater_une_partition|reformater votre partition]].   * **Cas n<​sup>​o</​sup>​ 2 :** Votre home était déjà sur une partition séparée : vous pouvez simplement [[:​partitions#​que_signifie_formater_une_partition|reformater votre partition]].
  
 +===== Méthode 3 : Démarche avec le terminal ; réutilisation d'une autre partition ext4 avec copie =====
  
-===== Méthode 4 : Démarche avec le terminal ; réutilisation d'un ancien home d'une partition ​sans copie=====+**Avant propos**\\ 
 +On va transférer ​le /home qui fonctionne, installé dans la même partition que le logiciel, dans une autre partition EXT4.\\ 
 +**Prérequis**\\ 
 +Une partition formatée en EXT4 probablement stockée dans un autre disque contenant éventuellement déjà des données voir un ancien ​logiciel qui deviendra le futur /home. On l'​appelle Home0. On aura besoin de connaître son nom.\\ 
 +Une installation fonctionnant avec la racine / contenant /home.\\ 
 +**But**\\ 
 +Le but est alors de virer home et d'​utiliser Home0 à la place.\\ 
 +**Méthode**\\ 
 +Définir la partition Home0 comme point de montage du futur home dans le fichier fstab.\\ 
 +Monter la partition\\ 
 +Pour chaque utilisateur,​ transférer les données de home dans Home0 lorsqu'​elles sont absentes sinon dans $USER/Home1 afin que le choix puisse se faire  en conscience. Souvent, il n'y a qu'un utilisateur de défini.\\ 
 +Rebooter.\\ 
 +**Réalisation**\\ 
 +  * Trouver le nom de la partition.\\ 
 +Cette recherche peut se faire en lançant l'​une ​de ces commandes "​lsblk"​ ou  "sudo fdisk -l". La partition ​doit être au format ext4. Elle est de grande taille. Normalement ​ elle n'est pas stockée dans le même disque que le logiciel. Son nom est semblable à SDB1 ou NVME0P1. ​  Cette valeur est destinée à remplacer **XXXX** dans les deux commandes suivantes. 
 +  * Mettre à jour le fichier /​etc/​fstab. 
 +<code bash>​echo UUID=$(sudo blkid  | grep /dev/XXXX |  grep -o ' UUID.*BLOCK'​ | cut -d'"'​ -f2) /home ext4 defaults 0 2 | sudo tee -a /​etc/​fstab</​code>​ 
 +  * Monter la partition. 
 +<code bash>​sudo mkdir -v  /​mnt/​Home0 
 +sudo mount -v /​dev/​XXXX ​  /​mnt/​Home0</​code>​ 
 +  * __Pour chaque utilisateur:​__ 
 +  *  Créer l'​utilisateur si besoin. 
 +<code bash>​sudo mkdir -v /​mnt/​Home0/​$USER 
 +sudo chown $USER:$USER /​mnt/​Home0/​$USER</​code>​ 
 +  *  Transférer les données personnelles absentes. 
 +<code bash>mv -nv $HOME/* /​mnt/​Home0/​$USER</​code>​ 
 +  *  Transférer les données techniques absentes. 
 +<code bash>mv -nv $HOME/​.[0-9a-zA-Z]* /​mnt/​Home0/​$USER</​code>​ 
 +  *  Mettre à jour la configuration en conservant les anciens contenus. 
 +<code bash>​mv ​ -v -b --suffix=.OLD $HOME/​.config/​* /​mnt/​Home0/​$USER/​.config 
 +rmdir  -v .config </​code>​ 
 +  *  Transférer les données personnelles en double dans un sous-répertoire. 
 +<code bash>​mkdir -v /​mnt/​Home0/​$USER/​Home1 
 +mv -v $HOME/* /​mnt/​Home0/​$USER/​Home1</​code>​ 
 +  *  Transférer les données techniques en double dans le même sous-répertoire. 
 +<code bash>mv -v $HOME/​.[0-9a-zA-Z]* /​mnt/​Home0/​$USER/​Home1</​code>​ 
 +  *  Supprimer l'​utilisateur 
 +<code bash>ls -Rals 
 +cd / 
 +sudo rm  -rv $HOME</​code>​ 
 +  * Lorsque tous les utilisateurs sont traités, relancer le système. 
 +Cela libérera physiquement l'​espace disque encore utilisé par les applications en cours et permettra d'​utiliser la nouvelle partition.
  
-== avant propos == +   
-On va réutiliser un /home qui fonctionne avec une nouvelle installation du système d'​exploitation. + 
-On supposera que l'on reste sur le même système d'​exploitation - y compris la version par exemple ​12.04.3  ​- et que celui est à jour pour augmenter la compatibilité mais selon les cas  c'est ou pas nécessaire.+ 
 + 
 +===== Méthode 4 : Démarche avec le terminal ; réutilisation sans copie du /home d'une autre partition ===== 
 + 
 +=== Avant propos ​=== 
 +On va réutiliser un /home qui fonctionne avec une nouvelle installation du système d'​exploitation.\\ 
 +On supposera que l'on reste sur le même système d'​exploitation - y compris la versionpar exemple ​16.04.- et que celui-ci est à jour pour augmenter la compatibilitémais selon les cas c'est ou ce n'​est ​pas nécessaire. 
 + 
 +=== Prérequis === 
 +Une partition UUID=452584560-4521-12ae-b1d7-32fd221fd2125c contient un /home qui deviendra le futur /home: on l'​appelle home0;\\ 
 +Une installation a été faite d'un système propre; en particulier cette partition contient la racine / qui contient /home: on l'​appelle home1. 
 + 
 +=== But === 
 +Le but est alors de virer home1 qui ne contient rien d'​intéressant et d'​utiliser home0 à la place. 
 + 
 +=== Méthode === 
 +Démarrer en root.\\ 
 +Détruire /home ( éventuellement le renommer avec **mv /home /home1** ).\\ 
 +Rajouter une ligne dans  /etc/fstab du type:\\ 
 +UUID=452584560-4521-12ae-b1d7-32fd221fd2125c /home ext4 defaults 0 2\\ 
 +Faire prendre en compte par le système cette nouvelle configuration avec **mount -a**.\\ 
 +**ls /home/** devrait alors vous montrer le contenu de la partition home0. 
 + ===== Méthode 5 : Démarche par duplication ===== 
 +  - Booter avec une live USB afin de pouvoir utiliser des partitions non actives. 
 +  - Lancer le logiciel GPARTED. 
 +  - Rétrécir éventuellement la partition qui contient /home surtout si elle contient aussi   / 
 +  - Copier la partition contenant le répertoire /home (Elle peut aussi contenir d'​autres répertoires). 
 +  - Coller la partition dans la nouvelle partition ou dans un espace inoccupé d'une taille au moins équivalente. 
 +  - Modifier le UUID de la partition réception de la copie  afin qu'il n'y ait pas de doublon. 
 +  - Lancer la commande **sudo blkid** afin de récupérer le UUID qui a été alloué à cette nouvelle partition. 
 +  - Mettre à jour la ligne du fichier **/​etc/​fstab** décrivant le point de montage de la partition /home  avec cette valeur de UUID. 
 +  - Booter. 
 + ===== Méthode 6 : Rapatrier le logiciel de la partition contenant le home en laissant les données sur place ===== 
 +Le logiciel est  composé de tous les répertoires commençant par un point ainsi que le répertoire snap. 
 +La procédure ci-dessous va dupliquer ces fichiers, créer les liens symboliques,​ démonter le home, y mettre ​ ces fichiers et rebooter. Il restera à supprimer ces fichiers ​ ultérieurement. 
 +<code bash>​sudo -i ### Passer en mode administratif</​code><​code bash> 
 +for Me in $(ls -1 /home) ; do 
 +    ###On va dire que l'O.S. de base n'a pas à  modifier le référentiel même lorsque la partition Data est en incident!. 
 +    cp -nv /​etc/​xdg/​user-dirs.conf /​home/​$Me/​.config && sed -i '​s/​True/​False/'​ /​home/​$Me/​.config/​user-dirs.conf  
 +    mkdir -pv /​Newhome/​$Me ## Créer un home futur. 
 +    echo  le transfert de $Me   
 +    rsync -ax  --stats ​ /​home/​$Me/​{.[^.]*,​snap} ​ /​Newhome/​$Me 
 +    ln -s /​media/​Data/​$Me/​Bureau ​            /​Newhome/​$Me/​Bureau 
 +    ln -s /​media/​Data/​$Me/​Documents ​         /​Newhome/​$Me/​Documents 
 +    ln -s /​media/​Data/​$Me/​Images ​            /​Newhome/​$Me/​Images  
 +    ln -s /​media/​Data/​$Me/​Musique ​           /​Newhome/​$Me/​Musique 
 +    ln -s /​media/​Data/​$Me/​Téléchargements ​   /​Newhome/​$Me/​Téléchargements 
 +    ln -s /​media/​Data/​$Me/​Vidéos ​            /​Newhome/​$Me/​Vidéos ​  
 +    chown -R $Me:$Me /​Newhome/​$Me;​ done ### Déplacer le logiciel  
 +sed -i '​s/​\/​home/​\/​media\/​Data/'​ /​etc/​fstab ​   ### Mettre à jour le fichier /​etc/​fstab. 
 +mkdir -v /media/Data # et créer son point de montage. 
 +umount -l /home ## démonter la partition /home en cours d'​utilisation. 
 +mv -v /Newhome/* /home   ## Mettre en place le nouveau home. 
 +reboot ## Rebooter.</​code>​ 
 +===== Méthode 7 : Rapatrier le logiciel et les données utilisateur de la partition contenant le home dans la partition contenant le logiciel de base ===== 
 +<code bash>​sudo -i   # Devenir administrateur </​code>​ 
 +<code bash>for Me in $(ls -1 /home) ; do 
 +    mkdir -pv /​Newhome/​$Me ## Créer un home futur. 
 +    echo  le transfert de $Me  ; sleep 5 ### Afin d'​avoir le temps de lire. 
 +    cp -Rauv    /​home/​$Me/​* ​ /​Newhome/​$Me ​  #### Copier les fichiers utilisateur. 
 +    cp -Rauv    /​home/​$Me/​.[0-9a-zA-Z]* /​Newhome/​$Me ### Copier les fichiers techniques. 
 +    chown -R $Me:$Me /​Newhome/​$Me ### L'​utilisateur redevient propriétaire de ses données. 
 +done </​code>​ 
 +<code bash>sed -i '/​\home/​ s/^/# /' /​etc/​fstab ​   ### commenter la ligne montant le home dans le fichier /​etc/​fstab 
 +umount -l /home ## Démonter la partition /home en cours d'​utilisation. 
 +mv -v /Newhome/* /home   ## Mettre en place le nouveau home par substitution de répertoire.  
 +reboot #Rebooter pour prise en charge de la modification.</​code>​
  
-== prérequis : == 
-une partition UUID=452584560-4521-12ae-b1d7-32fd221fd2125c contient un /home qui deviendra le futur /home on l'​appelle home0 
-une installation a été faite d'un systeme propre; en particulier cette partition il contient / qui contient /home; on l'​appelle home1 
  
-== but ==  
-Le but est alors de virer home1 qui ne contient rien d'​intéressant et d'​utiliser home0 à la place ;  
  
-== méthode ==  
-Démarrer en root 
-Détruire /home ( éventuellement le renommer avec mv /home /home1 ) 
-Rajouter une ligne dans  /etc/fstab du type : 
-UUID=452584560-4521-12ae-b1d7-32fd221fd2125c /home ext3 defaults 0 2  
-mount -a ; ls /home/ devrait alors vous montrer le contenu de la partition home0 
  
 ===== Voir aussi ===== ===== Voir aussi =====
  
  
-  * [[http://www.courtois.cc/monblog/index.php/2008/09/02/536-changer-son-linux-d-un-disque-a-un-autre-ubuntu-804|Recopier ​ses données ​et son système lors d'un changement de disque dur]] (à réserver aux connaisseurs). +  * [[https://olivopiment.wordpress.com/2018/12/27/deplacer-le-repertoire-home-sous-linux-ubuntu-18-04-bionic-beaver/|comment déplacer son /home sur un disque différent en conservant ​ses données ​suite à des difficultés ​d'installation]], 
-  * [[:​reinstallation_ubuntu]] : comment réinstaller Ubuntu sur un /home séparé.+  * [[:​reinstallation_ubuntu|comment réinstaller Ubuntu sur un /home séparé]].
  
 ---- ----
  
 //​Contributeurs principaux : [[utilisateurs:​raph|Raphaël Doursenaud]],​[[utilisateurs:​daeavelwyn]],​ [[utilisateurs:​Hoper]] ​ ,​[[utilisateurs:​bruno_sanchiz|dindoun]].//​ //​Contributeurs principaux : [[utilisateurs:​raph|Raphaël Doursenaud]],​[[utilisateurs:​daeavelwyn]],​ [[utilisateurs:​Hoper]] ​ ,​[[utilisateurs:​bruno_sanchiz|dindoun]].//​
 +
 +
 +
 +
 +                       
  • tutoriel/deplacer_home.1419693820.txt.gz
  • Dernière modification: Le 27/12/2014, 16:23
  • par 82.253.143.37