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édentesRévision précédente
Prochaine révision
Révision précédente
organiser_data_utilisateurs [Le 20/10/2022, 18:44] – [Une partition agnostique entre Windows et Linux ?] Coeur Noirorganiser_data_utilisateurs [Le 14/04/2026, 23:13] (Version actuelle) – mise en forme (inachevée) -> effort svp | màj lien internes krodelabestiole
Ligne 1: Ligne 1:
 {{tag>administration partitions optimisation}} {{tag>administration partitions optimisation}}
 +
 ====== Organiser les données du ( ou des ) utilisateurs « humains » d'un système ====== ====== Organiser les données du ( ou des ) utilisateurs « humains » d'un système ======
 +
 **L'objectif de cette page est de proposer une méthode de « rangement » //alternative// des affaires personnelles des utilisateurs**. Cette méthode, en stockant « hors système » la partie visible des données utilisateurs tout en laissant « dans le système » la partie [[dossiers_et_fichiers_caches|cachée]] des données utilisateurs, amène un gain de polyvalence et de robustesse, voire de performances, dans de nombreuses situations.\\ **L'objectif de cette page est de proposer une méthode de « rangement » //alternative// des affaires personnelles des utilisateurs**. Cette méthode, en stockant « hors système » la partie visible des données utilisateurs tout en laissant « dans le système » la partie [[dossiers_et_fichiers_caches|cachée]] des données utilisateurs, amène un gain de polyvalence et de robustesse, voire de performances, dans de nombreuses situations.\\
-Un fil dédié à cette page sur le forum : https://forum.ubuntu-fr.org/viewtopic.php?id=2070904\\ +Un fil dédié à cette page sur le forum : https://forum.ubuntu-fr.org/viewtopic.php?id=2070904 
-\\+ 
 +<note important>Certaines recommandations décrites très en détail sur cette page ne font pas toujours consensus.\\  
 +En outre la création d'une partition ''home'' séparée n'est plus aussi largement recommandée qu'elle a pu l'être (elle n'est plus proposée lors de l'installation), et la mise en place de liens symboliques introduit un niveau de complexité qui n'est pas strictement nécessaire du fait de l'existence à cet effet des **variables [[:variables_d_environnement#xdg-user-dirs]]**. 
 + 
 +Pour la présentation d'une méthode a priori plus simple et sans doute plus orthodoxe, ou en complément de celle-ci, n'hésitez pas à consulter la page //[[:partitions_data|Déployer ses données personnelles sur un espace de stockage dédié]]//.</note> 
 **Elle requiert** :\\ **Elle requiert** :\\
   * une installation qui compte au moins 2 partitions : l'une dédiée au système, installé classiquement ( la racine / entière ) ; l'autre pour l'instant « vide » qui accueillera une partie des données utilisateurs ( les visibles ).\\   * une installation qui compte au moins 2 partitions : l'une dédiée au système, installé classiquement ( la racine / entière ) ; l'autre pour l'instant « vide » qui accueillera une partie des données utilisateurs ( les visibles ).\\
Ligne 10: Ligne 17:
 **Elle fait appel** : **Elle fait appel** :
   * essentiellement et finalement aux [[lien_physique_et_symbolique|liens symboliques]]\\   * essentiellement et finalement aux [[lien_physique_et_symbolique|liens symboliques]]\\
-  * à des notions //relativement// basiques : [[partitions|partition]], [[montage|montage]], [[mount_fstab|fstab]]\\+  * à des notions //relativement// basiques : [[:partitions|partition]], [[:montage]], ''[[:fstab|/etc/fstab]]''\\
   * à rien qui serait //exclusif// à ×buntu, c'est transposable dans d'autres OS Linux.\\   * à rien qui serait //exclusif// à ×buntu, c'est transposable dans d'autres OS Linux.\\
 **À qui s'adresse-t-elle** ?\\ **À qui s'adresse-t-elle** ?\\
Ligne 24: Ligne 31:
  
 …**il n'y a ni bonnes ou mauvaises méthodes, il y en a seulement de plus adaptées que d'autres en fonction du contexte des utilisateurs.** …**il n'y a ni bonnes ou mauvaises méthodes, il y en a seulement de plus adaptées que d'autres en fonction du contexte des utilisateurs.**
 +
 ===== La situation par défaut ===== ===== La situation par défaut =====
 +
 ==== Le dossier /home à la racine du système ==== ==== Le dossier /home à la racine du système ====
 +
 Dans l'[[arborescence|arborescence]] des dossiers d'un système Linux, ''/home'' sert à héberger les répertoires personnels des utilisateurs « humains » créés dans ce système. //Généralement// ceux qui disposent d'une session graphique dans le système.\\ Dans l'[[arborescence|arborescence]] des dossiers d'un système Linux, ''/home'' sert à héberger les répertoires personnels des utilisateurs « humains » créés dans ce système. //Généralement// ceux qui disposent d'une session graphique dans le système.\\
 //Toutes// les données concernant //tous// les utilisateurs « humains » sont rangées dans ce dossier ''/home'', cet emplacement relève d'une norme attendue par l'écrasante majorité des logiciels que vous utiliserez sur ce système. //Toutes// les données concernant //tous// les utilisateurs « humains » sont rangées dans ce dossier ''/home'', cet emplacement relève d'une norme attendue par l'écrasante majorité des logiciels que vous utiliserez sur ce système.
 +
 ==== $HOME ou le répertoire personnel /home/$USER ==== ==== $HOME ou le répertoire personnel /home/$USER ====
 +
 <note>**$HOME** est une variable qui désigne le répertoire personnel de l'utilisateur courant, soit le dossier ''/home/$USER''.\\ <note>**$HOME** est une variable qui désigne le répertoire personnel de l'utilisateur courant, soit le dossier ''/home/$USER''.\\
 **$USER** est la variable qui désigne l'utilisateur courant.\\ **$USER** est la variable qui désigne l'utilisateur courant.\\
Ligne 76: Ligne 88:
 vous simplifiera la maintenance à long terme.** vous simplifiera la maintenance à long terme.**
  
 +===== Une méthode plus granulaire et robuste à long terme ====
  
- +Ici l'idée est de traiter séparément les 2 familles de données concernant les utilisateurs : 
- +  * **ne laisser dans $HOME //que//** - ou essentiellement, majoritairement - les **données cachées, spécifiques** ( configurations, paramètres… )
-===== Une méthode plus granulaire et robuste à long terme ==== +
-Ici l'idée est de traiter séparément les 2 familles de données concernant les utilisateurs :\\ +
-  * **ne laisser dans $HOME //que//** - ou essentiellement, majoritairement - les **données cachées, spécifiques** ( configurations, paramètres… )\\+
   * placer dans **une partition dédiée**, distincte du système les **données visibles, agnostiques** ( documents ou médias ).   * placer dans **une partition dédiée**, distincte du système les **données visibles, agnostiques** ( documents ou médias ).
  
 Quelques intérêts immédiats : Quelques intérêts immédiats :
-  - les données cachées bénéficient de la rapidité du support de stockage du système ( ssd, nvme ),\\+  - les données cachées bénéficient de la rapidité du support de stockage du système ( ssd, nvme ),
   - ces données spécifiques sont hébergées à l'intérieur du système auquel elles correspondent,   - ces données spécifiques sont hébergées à l'intérieur du système auquel elles correspondent,
-  - l'autre emplacement qui contient les données visibles ( non spécifiques à un OS et ses logiciels ) est facilement et rapidement exploitable depuis tout OS ( Linux ).\\+  - l'autre emplacement qui contient les données visibles ( non spécifiques à un OS et ses logiciels ) est facilement et rapidement exploitable depuis tout OS ( Linux ).
   - **Toutes ces données continuent d'être accessibles depuis le répertoire personnel, les habitudes de navigation de l'utilisateur ne sont pas changées.**   - **Toutes ces données continuent d'être accessibles depuis le répertoire personnel, les habitudes de navigation de l'utilisateur ne sont pas changées.**
  
-**Cette méthode organise les données utilisateurs à travers 2 critères** :\\ +**Cette méthode organise les données utilisateurs à travers 2 critères** : 
-  - la « fonction » des données d'un point de vue logiciel,\\ +  - la « fonction » des données d'un point de vue logiciel, 
-  - la « nature » des supports de stockage,\\ +  - la « nature » des supports de stockage, 
-**optimisant à la fois** leur gestion **physique** ( taille, performance, adaptation des stockages ) et leur gestion **logique** ( conforter les données spécifiques dans leur système, protéger les données agnostiques, associer un utilisateur à ses données qu'importe la diversité et concurrence des contextes… )\\+**optimisant à la fois** leur gestion **physique** ( taille, performance, adaptation des stockages ) et leur gestion **logique** ( conforter les données spécifiques dans leur système, protéger les données agnostiques, associer un utilisateur à ses données qu'importe la diversité et concurrence des contextes… )
  
 D'où les qualificatifs :\\ D'où les qualificatifs :\\
   * **granulaire** on détermine plus précisément, sélectivement et prudemment ce qui est « partagé » ( entre systèmes, utilisateurs ou supports ), en fonction des intérêts et attentes de l'un ou l'autre,\\   * **granulaire** on détermine plus précisément, sélectivement et prudemment ce qui est « partagé » ( entre systèmes, utilisateurs ou supports ), en fonction des intérêts et attentes de l'un ou l'autre,\\
-  * **robuste** la partition dédiée aux données visibles des utilisateurs devient un emplacement quasiment « immuable » : tout autour peut changer, elle, reste en place //ad vitam aeternam// sous cette forme, quoi qu'il arrive « autour ».\\ +  * **robuste** la partition dédiée aux données visibles des utilisateurs devient un emplacement quasiment « immuable » : tout autour peut changer, elle, reste en place //ad vitam aeternam// sous cette forme, quoi qu'il arrive « autour ».
  
 +==== Séparer les données visibles (agnostiques) des données cachées (spécifiques) ====
  
-==== Séparer les données visibles ( agnostiques ) des données cachées ( spécifiques ) ==== 
 Rappelons **les prérequis** : Rappelons **les prérequis** :
   * on a la **racine « entière »** d'un système sur une partition ( le dossier ''/home'' inclus )   * on a la **racine « entière »** d'un système sur une partition ( le dossier ''/home'' inclus )
-  * on a **déjà** attaché une autre partition à ce système, montée dans ''/media/DATA'' //( opération réalisable dès l'installation du système\\ +  * on a **déjà** attaché une autre partition à ce système, montée dans ''/media/DATA'' //(opération réalisable dès l'installation du système\\ 
-ou //post//-installation via création du dossier ''/media/DATA'' puis ajout d'une ligne de montage au fichier ''/etc/fstab'' )//\\ +ou //post//-installation via création du dossier ''/media/DATA'' puis ajout d'une ligne de montage au fichier ''[[:fstab|/etc/fstab]]'')//\\ 
-  * pour l'instant ''/media/DATA'' ne contient pas de données ( par ex. c'est un support de stockage récemment ajouté à votre machine ).+  * pour l'instant ''/media/DATA'' ne contient pas de données (par ex. c'est un support de stockage récemment ajouté à votre machine).
  
 Il s'agit **dans un premier temps** d'organiser une « structure » de dossiers adéquate dans ''/media/DATA'' et, scoop, c'est la même structure qu'un **$HOME**,\\ Il s'agit **dans un premier temps** d'organiser une « structure » de dossiers adéquate dans ''/media/DATA'' et, scoop, c'est la même structure qu'un **$HOME**,\\
Ligne 185: Ligne 194:
 Cette organisation des dossiers sur une partition n'est jamais qu'une application basique des droits et permissions Linux,\\ Cette organisation des dossiers sur une partition n'est jamais qu'une application basique des droits et permissions Linux,\\
 même organisation qu'on trouve dans un dossier ''/home''. même organisation qu'on trouve dans un dossier ''/home''.
 +</note>
 +<note warning>Plutôt que de créer //une// corbeille //par// utilisateur, on //pourrait// n'en créer qu'une seule utilisable par quiconque accédant à cette partition :\\
 +**c'est donc une pratique à évaluer en fonction de vos besoins de confidentialité entre utilisateurs**.\\
 +Il s'agira alors de créer un dossier ''.Trash'' tout court avec des droits d'écriture pour tous mais la restriction de l'effacement au seul propriétaire d'un élément :\\
 +<code>cd /media/DATA
 +sudo mkdir .Trash
 +sudo chmod 1777 .Trash</code>
 +C'est un dossier accessible à n'importe qui en écriture ( comme par ex. ''/tmp'' ) : **c'est un risque à évaluer en fonction de votre contexte de sécurité**\\
 +sachant que l'accès au point de montage parent peut se restreindre à un groupe de votre choix en particulier.\\
 +\\
 +→ //je dirais// que c'est une méthode de corbeille à réserver à des partitions situées « hors système » : clé usb, disques externes, amovibles~nomades.
 </note> </note>
 ==== Création des liens symboliques en lieu et place des dossiers usuels ==== ==== Création des liens symboliques en lieu et place des dossiers usuels ====
Ligne 195: Ligne 215:
   * **Créer des liens symboliques** dans **$HOME** pour remplacer les éléments qu'on vient de déplacer :   * **Créer des liens symboliques** dans **$HOME** pour remplacer les éléments qu'on vient de déplacer :
 <code>ln   -s   /media/DATA/$USER-$UID/{Bureau,Documents,Images,Modèles,Musique,Public,Téléchargements,Vidéos}   /home/$USER/</code> <code>ln   -s   /media/DATA/$USER-$UID/{Bureau,Documents,Images,Modèles,Musique,Public,Téléchargements,Vidéos}   /home/$USER/</code>
 +Pense-bête : [[https://forum.ubuntu-fr.org/viewtopic.php?pid=22620441#p22620441|autre exemple]].\\
 +
 Ces 2 opérations sont tout à fait réalisables « en graphique » depuis votre explorateur de fichiers habituel : Ces 2 opérations sont tout à fait réalisables « en graphique » depuis votre explorateur de fichiers habituel :
   * **déplacer** : c'est au clic droit couper / coller ou au clavier [ Ctrl ] + [ X ] puis [ Ctrl ] + [ V ] dans l'emplacement de destination\\ ou à la souris glisser-déposer les éléments entre 2 fenêtres de votre explorateur de fichiers, l'une ouverte sur ''/home/$USER'', l'autre sur ''/media/DATA/$USER-$UID''   * **déplacer** : c'est au clic droit couper / coller ou au clavier [ Ctrl ] + [ X ] puis [ Ctrl ] + [ V ] dans l'emplacement de destination\\ ou à la souris glisser-déposer les éléments entre 2 fenêtres de votre explorateur de fichiers, l'une ouverte sur ''/home/$USER'', l'autre sur ''/media/DATA/$USER-$UID''
Ligne 208: Ligne 230:
 d'un explorateur de fichiers à l'autre il pourra y avoir des nuances dans les procédures.\\ d'un explorateur de fichiers à l'autre il pourra y avoir des nuances dans les procédures.\\
 Consultez les documentations et préférences de votre explorateur de fichiers ( Nautilus, Dolphin, Nemo, Caja, Thunar… )\\ Consultez les documentations et préférences de votre explorateur de fichiers ( Nautilus, Dolphin, Nemo, Caja, Thunar… )\\
-pour vous assurer des bons gestes et raccourcis.+pour vous assurer des bons gestes et raccourcis.\\ 
 +\\ 
 +Voir [[https://forum.ubuntu-fr.org/viewtopic.php?id=2074175|cette discussion]] **pour (ré)activer l'option « créer un lien » dans Nautilus**.
 </note> </note>
 === Précaution concernant le dossier « Bureau » === === Précaution concernant le dossier « Bureau » ===
Ligne 356: Ligne 380:
  
 Côté Linux il s'agira toujours de monter cette « partition data » à un endroit opportun, **montage qui devra utiliser des options adaptées** afin que le système Linux « ajoute » des droits et permissions à ces données.\\ Côté Linux il s'agira toujours de monter cette « partition data » à un endroit opportun, **montage qui devra utiliser des options adaptées** afin que le système Linux « ajoute » des droits et permissions à ces données.\\
-Évidemment ces options varient selon qu'il s'agit de ntfs ou (ex)fat ( certaines sont abordées dans la doc' [[mount_fstab|fstab]])\\+Évidemment ces options varient selon qu'il s'agit de NTFS ou (ex)FAT (certaines sont abordées sur la page ''[[:fstab|/etc/fstab]]'').\\
 Sans option de montage adaptée, Linux attribue les systèmes de fichiers « étrangers » à //root:root// avec droits //rwxrwxrwx// ce qui est loin d'être pratique au quotidien… Sans option de montage adaptée, Linux attribue les systèmes de fichiers « étrangers » à //root:root// avec droits //rwxrwxrwx// ce qui est loin d'être pratique au quotidien…
  
Ligne 362: Ligne 386:
 \\ \\
 Suivant l'exemple de cette page, pour //Lairneur//, les options d'une telle ligne de montage ( pour un système de fichiers //ntfs// ) dans //fstab// ressembleraient à Suivant l'exemple de cette page, pour //Lairneur//, les options d'une telle ligne de montage ( pour un système de fichiers //ntfs// ) dans //fstab// ressembleraient à
-<code>UUID=<uuid_d'une_partition_ntfs>   /point/de/montage_ntfs   ntfs   uid=1001,gid=1001,dir_mode=755,file_mode=644,utf8,windows_names   0   0</code>+<code>UUID=<uuid_d'une_partition_ntfs>   /point/de/montage_ntfs   ntfs   uid=1001,gid=1001,umask=022,dmask=022,fmask=133   0   0</code>
 Pour //Noubie//, les //uid// et //gid// seraient 1000.\\ Pour //Noubie//, les //uid// et //gid// seraient 1000.\\
 Chaque utilisateur ( sous Linux ) **doit** alors disposer de sa propre partition //ntfs//, et chaque partition de son propre point de montage, puisque tout cela est monté dès le démarrage système.\\ Chaque utilisateur ( sous Linux ) **doit** alors disposer de sa propre partition //ntfs//, et chaque partition de son propre point de montage, puisque tout cela est monté dès le démarrage système.\\