Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
tutoriel:deplacer_home [Le 15/03/2022, 13:48] geole [Méthode 3. réutilisation d'une autre partition ext4 avec copie] |
tutoriel:deplacer_home [Le 29/02/2024, 12:53] (Version actuelle) geole [Procédure avec peu de commentaires] quasiment en lignes de commandes |
||
---|---|---|---|
Ligne 19: | Ligne 19: | ||
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, 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]].)). |
* la possibilité de chiffrer 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 (/). | ||
Ligne 34: | Ligne 34: | ||
* 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 l'ordinateur se [[https://forum.ubuntu-fr.org/viewtopic.php?pid=22517024#p22517024|plante]], le redémarrage ne se fait pas facilement. | ||
Ligne 40: | Ligne 40: | ||
- | 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. | + | 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 ==== | ||
+ | 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 ===== | ||
Ligne 74: | Ligne 77: | ||
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 [[:Muon]] (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 110: | Ligne 131: | ||
* 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]]. | * 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 242: | Ligne 263: | ||
<code bash>sudo mkdir -v /mnt/Home0 | <code bash>sudo mkdir -v /mnt/Home0 | ||
sudo mount -v /dev/XXXX /mnt/Home0</code> | sudo mount -v /dev/XXXX /mnt/Home0</code> | ||
- | * __Pour chaque utilisateur:__ | + | * __Pour chaque utilisateur:__ |
* Créer l'utilisateur si besoin. | * Créer l'utilisateur si besoin. | ||
<code bash>sudo mkdir -v /mnt/Home0/$USER | <code bash>sudo mkdir -v /mnt/Home0/$USER | ||
Ligne 254: | Ligne 275: | ||
rmdir -v .config </code> | rmdir -v .config </code> | ||
* Transférer les données personnelles en double dans un sous-répertoire. | * Transférer les données personnelles en double dans un sous-répertoire. | ||
- | <code bash>mv -v $HOME/* /mnt/Home0/$USER/Home1</code> | + | <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. | * 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> | <code bash>mv -v $HOME/.[0-9a-zA-Z]* /mnt/Home0/$USER/Home1</code> | ||
Ligne 278: | Ligne 300: | ||
Une installation a été faite d'un système propre; en particulier cette partition contient la racine / qui contient /home: on l'appelle home1. | 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 === | + | === But === |
- | Le but est alors de virer home1 qui ne contient rien d'intéressant et d'utiliser home0 à la place. | + | Le but est alors de virer home1 qui ne contient rien d'intéressant et d'utiliser home0 à la place. |
=== Méthode === | === Méthode === | ||
Ligne 288: | Ligne 310: | ||
Faire prendre en compte par le système cette nouvelle configuration avec **mount -a**.\\ | 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. | **ls /home/** devrait alors vous montrer le contenu de la partition home0. | ||
- | ===== Méthode 5 : Démarche par duplication ===== | + | ===== Méthode 5 : Démarche par duplication ===== |
- Booter avec une live USB afin de pouvoir utiliser des partitions non actives. | - Booter avec une live USB afin de pouvoir utiliser des partitions non actives. | ||
- Lancer le logiciel GPARTED. | - Lancer le logiciel GPARTED. | ||
Ligne 298: | Ligne 320: | ||
- Mettre à jour la ligne du fichier **/etc/fstab** décrivant le point de montage de la partition /home avec cette valeur de UUID. | - Mettre à jour la ligne du fichier **/etc/fstab** décrivant le point de montage de la partition /home avec cette valeur de UUID. | ||
- Booter. | - 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> | ||
Ligne 305: | Ligne 362: | ||
- | * [[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]], | + | * [[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é]]. | ||