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 25/04/2023, 09:20] frombenny lien vers la logithèque |
tutoriel:deplacer_home [Le 21/03/2025, 14:54] (Version actuelle) 91.161.152.215 [Avantages d'un /home séparé] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag>partitions système tutoriel}} | + | {{tag>partitions système tutoriel vetuste}} |
- | ---- | + | ====== Déplacer son dossier utilisateur (« /home/$USER ») ====== |
- | ====== Déplacer son dossier utilisateur (« /home ») ====== | + | <note important>FIXME |
+ | |||
+ | Ce tutoriel est ancien et les méthodes qu'il propose sont complexes, fastidieuses et ne font pas consensus. | ||
+ | |||
+ | La manière simple et généralement conseillée pour déplacer ses données personnelles et simplement de les déplacer - seul le contenu concerné, sans son répertoire parent ''/home/$USER'' - puis d'informer le système de leur nouvel emplacement en [[:variables_d_environnement#xdg-user-dirs|mettant à jour les variables xdg-user-dirs]].</note> | ||
===== 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'installation. Cette 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"...** | + | **Déplacer le dossier /home/$USER est fastidieux et dangereux. Si votre situation le permet, vous devriez d'abord envisager de choisir sa localisation au moment de l'installation. Cette 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, 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 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. | + | 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 du 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 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 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 ]] | ||
Ligne 29: | Ligne 33: | ||
* 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 :** Il n'est pas 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]])<note tip>Cela n'est plus vrai depuis l'arrivée d'un nouvel installateur en version 24.04.</note>. |
==== Inconvénients d'un /home séparé ==== | ==== Inconvénients d'un /home séparé ==== | ||
Ligne 41: | Ligne 45: | ||
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. | 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 81: | ||
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> | ||
+ | |||
+ | |||
Ligne 304: | Ligne 329: | ||
<code bash>sudo -i ### Passer en mode administratif</code><code bash> | <code bash>sudo -i ### Passer en mode administratif</code><code bash> | ||
for Me in $(ls -1 /home) ; do | for Me in $(ls -1 /home) ; do | ||
- | mkdir -pv /Newhome/$Me ## Créer un home futur | + | ###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 | echo le transfert de $Me | ||
rsync -ax --stats /home/$Me/{.[^.]*,snap} /Newhome/$Me | rsync -ax --stats /home/$Me/{.[^.]*,snap} /Newhome/$Me | ||
- | ln -s /media/data/$Me/Bureau /Newhome/$Me/Bureau | + | ln -s /media/Data/$Me/Bureau /Newhome/$Me/Bureau |
- | ln -s /media/data/$Me/Documents /Newhome/$Me/Documents | + | ln -s /media/Data/$Me/Documents /Newhome/$Me/Documents |
- | ln -s /media/data/$Me/Images /Newhome/$Me/Images | + | ln -s /media/Data/$Me/Images /Newhome/$Me/Images |
- | ln -s /media/data/$Me/Musique /Newhome/$Me/Musique | + | 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/Téléchargements /Newhome/$Me/Téléchargements |
- | ln -s /media/data/$Me/Vidéos /Newhome/$Me/Vidéos | + | ln -s /media/Data/$Me/Vidéos /Newhome/$Me/Vidéos |
chown -R $Me:$Me /Newhome/$Me; done ### Déplacer le logiciel | 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. | + | 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. | + | mkdir -v /media/Data # et créer son point de montage. |
umount -l /home ## démonter la partition /home en cours d'utilisation. | umount -l /home ## démonter la partition /home en cours d'utilisation. | ||
mv -v /Newhome/* /home ## Mettre en place le nouveau home. | mv -v /Newhome/* /home ## Mettre en place le nouveau home. | ||
reboot ## Rebooter.</code> | 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> | ||