Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| utilisateurs:ubuntu18a:partition_de_donnees [Le 28/02/2022, 04:56] – [Installation de liens dans l'O.S. de base] Coeur Noir | utilisateurs:ubuntu18a:partition_de_donnees [Le 03/03/2022, 17:05] (Version actuelle) – ancienne révision (Le 03/03/2022, 17:03) restaurée Bruno | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | Début de création d'une page de documentation | + | <note warning>Ancienne |
| - | <note important> | + | |
| - | Mon astuce: Dans une application de l' | + | |
| - | Par exemple | + | |
| - | **https:// | + | |
| - | Cela ouvre une grille de saisie. | + | |
| - | + | ||
| - | A priori, il faut alors cliquer sur l' | + | |
| - | cela semble marcher... | + | |
| - | </ | + | |
| - | <note warning>J' | + | |
| - | + | ||
| - | <note tip> | + | |
| - | + | ||
| - | __________________ | + | |
| - | + | ||
| - | {{tag> | + | |
| - | -------- | + | |
| - | ====== Création d'une partition de données personnelles sous Ubuntu ====== | + | |
| - | + | ||
| - | Souvent les ordinateurs portables sont équipés | + | |
| - | Il semble plus simple de laisser faire une installation totalement standard sur le SSD puis de fabriquer le plus rapidement possible une partition dédiée aux données personnelles sur le disque dur. | + | |
| - | + | ||
| - | Cela est aussi valable lorsqu ' on possede plusieurs disques dur , et confere plusieurs avantages selon les cas , dont les principaux sont : | + | |
| - | * faciliter l ' utilisation standard ainsi que la navigation dans l' arborescence des fichiers de chaque | + | |
| - | * limiter les ecritures sur le SSD peut aussi etre une utilisation derivée pour les fichiers temporaires par exemple , mais n ' entre pas dans le cadre de cette page . | + | |
| - | * la Mise a jour ( et la reinstallation ) d ' un OS n ' affecte pas les données personnelles puisqu ' elle sont situées dans une ou d ' autres partitions . | + | |
| - | * le cloisonnement simplifie la maintenance et evite la perte de données en cas de perte de l ' OS . | + | |
| - | * le manque de place dans une des partitions de données | + | |
| - | + | ||
| - | + | ||
| - | Ce tutoriel décrit la marche à suivre pour mettre ses données personnelles sur le disque dur. | + | |
| - | + | ||
| - | Pour simplifier notre approche, nous décrirons le processus pour un seul utilisateur. S'il y a plusieurs utilisateurs sur le système, il suffit | + | |
| - | + | ||
| - | =====Création des partitions===== | + | |
| - | + | ||
| - | Il faut donc créer une partition **sur le disque dur**, que nous appellerons **Commun1**, | + | |
| - | + | ||
| - | + | ||
| - | =====Monter la partition automatiquement au démarrage d' | + | |
| - | La partition doit être montée automatiquement au démarrage. Le fichier **/ | + | |
| - | ==== Soit montage à partir du label de la partition. ==== | + | |
| - | Il est possible de monter une partition des disques internes en utilisant le label comme référence. Il y a une unicité garantie puisque ubuntu refuse de mettre en route lorsque | + | |
| - | < | + | |
| - | ## Cette séquence fabrique le point de montage, met à jour le fichier /etc/fstab et monte la partition. | + | |
| - | ## Il est nécessaire de définir les deux paramètres suivants: | + | |
| - | LABEL=Commun1 | + | |
| - | MOUNTPOINT=/ | + | |
| - | + | ||
| - | sudo mkdir $MOUNTPOINT | + | |
| - | echo " | + | |
| - | sudo mount -L $LABEL | + | |
| - | tail -2 / | + | |
| - | </ | + | |
| - | + | ||
| - | <note warning> | + | |
| - | \\ | + | |
| - | Au mieux elles accèdent à ''/ | + | |
| - | aux interfaces '' | + | |
| - | \\ | + | |
| - | Puisqu' | + | |
| - | envisagez de préférence vos points de montage dans ''/ | + | |
| - | \\ | + | |
| - | **Astuce** : Pour éviter de potentiels conflits avec des noms d' | + | |
| - | </ | + | |
| - | + | ||
| - | ==== Soit montage à partir du nom de la partition. ==== | + | |
| - | Il n'est pas possible de monter une partition des disques internes en utilisant le nom comme référence. Bien qu'il soit unique, le numéro final est fluctuant et peut changer lors de renumérotation ( **sgdisk -s**) . Il est donc nécessaire d' | + | |
| - | < | + | |
| - | ## Cette séquence fabrique le point de montage, met à jour le fichier /etc/fstab et monte la partition. | + | |
| - | ## Il est nécessaire de définir les deux paramètres suivants: | + | |
| - | DISK=sdXN | + | |
| - | MOUNTPOINT=$(echo /$DISK | tr ' | + | |
| - | + | ||
| - | sudo mkdir $MOUNTPOINT | + | |
| - | echo " | + | |
| - | sudo mount -v / | + | |
| - | tail -2 /etc/fstab | + | |
| - | </ | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | =====Créer les répertoires pour les utilisateurs de ubuntu ===== | + | |
| - | + | ||
| - | Lorsqu' | + | |
| - | Or, tous les utilisateurs ne sont pas obligatoirement administrateur. | + | |
| - | La séquence de création d'un utilisateur est décrite en ligne de commande : | + | |
| - | < | + | |
| - | ## Création des répertoires des utilisateurs. | + | |
| - | ## | + | |
| - | ## Création de l' | + | |
| - | LABEL=Commun1 | + | |
| - | MOUNTPOINT=/ | + | |
| - | ## Les deux commandes sont regroupées pour se prémunir d'une erreur de frappe dans le mot de passe | + | |
| - | sudo mkdir $MOUNTPOINT/ | + | |
| - | ## | + | |
| - | ## Création des autres utilisateurs: | + | |
| - | ## Commande à faire à chaque fois qu'un nouvel utilisateur est créé. | + | |
| - | sudo mkdir $MOUNTPOINT/ | + | |
| - | </ | + | |
| - | + | ||
| - | + | ||
| - | =====Raccourci vers les dossiers du Dossier Personnel===== | + | |
| - | + | ||
| - | Trois méthodes sont connues. | + | |
| - | La première est à favoriser. Elle ne nécessite pas un reboot à chaque création d'un nouvel utilisateur. | + | |
| - | La seconde est basée sur des liens symboliques, | + | |
| - | La troisième est au niveau supérieur. Mais chaque ajout d' | + | |
| - | + | ||
| - | ==== Installation de liens par l' | + | |
| - | **Chaque utilisateur est capable de réaliser le transfert de ses propres données.**. Aucune commande en mode administratif n'est nécessaire. Voici les commandes à faire | + | |
| - | + | ||
| - | < | + | |
| - | ## | + | |
| - | ## Avoir créé | + | |
| - | ## Avoir créé le point d' | + | |
| - | ## Avoir fermé ses applications afin que les fichiers puissent être déplacés. | + | |
| - | ## | + | |
| - | LABEL=Commun1 | + | |
| - | MOUNTPOINT=/ | + | |
| - | ## | + | |
| - | ## Cette séquence transfère automatiquement les données de l' | + | |
| - | ## | + | |
| - | for i in Bureau | + | |
| - | do | + | |
| - | echo " " && echo " Début de déplacement des données existantes de $i" && | + | |
| - | mv -iuv / | + | |
| - | done | + | |
| - | ## liste pour vérifier | + | |
| - | | + | |
| - | | + | |
| - | </ | + | |
| - | Ces commandes ne traitent pas les erreurs du style manque de place disque, répertoires ou fichiers déjà existants. | + | |
| - | + | ||
| - | Il faut traiter ces situations manuellement. | + | |
| - | + | ||
| - | Il faut s' | + | |
| - | + | ||
| - | En pratique, il n'y a pas d' | + | |
| - | + | ||
| - | Lorsque les huit répertoires | + | |
| - | + | ||
| - | Cela se fera encore en ligne de commandes. | + | |
| - | + | ||
| - | < | + | |
| - | if [ -f "/ | + | |
| - | | + | |
| - | echo " | + | |
| - | | + | |
| - | cp -v / | + | |
| - | fi | + | |
| - | ##sed '/ | + | |
| - | xdg-user-dirs-update --set DESKTOP | + | |
| - | xdg-user-dirs-update --set DOCUMENTS | + | |
| - | xdg-user-dirs-update --set PICTURES | + | |
| - | xdg-user-dirs-update --set TEMPLATES | + | |
| - | xdg-user-dirs-update --set MUSIC | + | |
| - | xdg-user-dirs-update --set PUBLICSHARE $MOUNTPOINT/ | + | |
| - | xdg-user-dirs-update --set DOWNLOAD | + | |
| - | xdg-user-dirs-update --set VIDEOS | + | |
| - | xdg-user-dirs-gtk-update | + | |
| - | cat / | + | |
| - | + | ||
| - | Il ne reste plus qu'à changer d' | + | |
| - | <note warning> | + | |
| - | qui n' | + | |
| - | le contenu de '' | + | |
| - | \\ | + | |
| - | Au pire de tels logiciels re-créeront des dossiers dans ''/ | + | |
| - | ( or c'est justement là qu'on ne veut plus « stocker » directement des données ! )\\ | + | |
| - | ou au mieux demanderont à l' | + | |
| - | \\ | + | |
| - | **Rappel** aussi : le fichier '' | + | |
| - | Il est mis à jour à chaque ouverture de session. Si pour quelconque raison la partition '' | + | |
| - | Et comme ''/ | + | |
| - | tant que '' | + | |
| - | ou tant que '' | + | |
| - | \\ | + | |
| - | Bref, cette façon de faire me paraît fragile et potentiellement déconcertante.</ | + | |
| - | + | ||
| - | ==== Installation de liens chez l' | + | |
| - | < | + | |
| - | + | ||
| - | Elle ne traite pas d' | + | |
| - | + | ||
| - | < | + | |
| - | + | ||
| - | < | + | |
| - | Les applications thunderbird et mozilla sont susceptibles d' | + | |
| - | <note warning> | + | |
| - | Les droits et permissions se transfèrent entre liens et cibles, un lien « prend » les propriétés de sa cible.\\ | + | |
| - | \\ | + | |
| - | La technique des liens symboliques me paraît plus robuste car :\\ | + | |
| - | ⋅ elle laisse les éléments usuels dans ''/ | + | |
| - | ⋅ elle ne nécessite pas forcément de ré-écrire '' | + | |
| - | + | ||
| - | **Chaque utilisateur pourra déplacer ses propres données.** | + | |
| - | + | ||
| - | Ce déplacement se fera en ligne de commandes. A titre d' | + | |
| - | < | + | |
| - | LABEL=Commun1 | + | |
| - | MOUNTPOINT=/ | + | |
| - | ## Recopie des données de l' | + | |
| - | for i | + | |
| - | do | + | |
| - | # | + | |
| - | ls -ls / | + | |
| - | if grep -q "> $MOUNTPOINT/ | + | |
| - | | + | |
| - | echo "Le traitement | + | |
| - | | + | |
| - | echo " " && echo " Début de déplacement des données existantes de $i" && | + | |
| - | mv -iu / | + | |
| - | ## | + | |
| - | ## Oh misère ! | + | |
| - | ## sudo ln -s $MOUNTPOINT/ | + | |
| - | ## | + | |
| - | ## Là en fait à chaque fois tu crées un lien nommé $USER dans /home, le prochain ( de cible $i ) écrasant le précédent ! | + | |
| - | ## Or c'est DANS /home/$USER que tu veux créer plusieurs liens, là tu dois impérativement « descendre » dans le dossier : | + | |
| - | ## | + | |
| - | ln -s $MOUNTPOINT/ | + | |
| - | ## | + | |
| - | ## le dernier / est capital ici. Et pas besoin de sudo vu que c'est $USER qui écrit dans / | + | |
| - | ## | + | |
| - | fi | + | |
| - | done | + | |
| - | ## liste pour vérifier | + | |
| - | ls -als /home/$USER | grep lrwx | + | |
| - | ls -als $MOUNTPOINT/ | + | |
| - | </ | + | |
| - | Les risques d' | + | |
| - | + | ||
| - | **Un utilisateur pourra demander à un administrateur de déplacer | + | |
| - | + | ||
| - | Ce déplacement se fera en ligne de commandes. A titre d' | + | |
| - | < | + | |
| - | LABEL=Commun1 | + | |
| - | MOUNTPOINT=/ | + | |
| - | UTILISATEUR=NomDeL' | + | |
| - | ## Recopie des données de l' | + | |
| - | for i in | + | |
| - | do | + | |
| - | #Vérifions la présence d'un lien symbolique identique à celui qu'on veut créer | + | |
| - | ls -ls / | + | |
| - | if grep -q "> $MOUNTPOINT/ | + | |
| - | | + | |
| - | echo "Le traitement | + | |
| - | else | + | |
| - | echo " " && echo " Début de déplacement des données existantes de $i" && | + | |
| - | sudo mv -iu / | + | |
| - | sudo chown $UTILISATEUR: | + | |
| - | ## | + | |
| - | ## même blague qu'au dessus | + | |
| - | ## sudo ln -s $MOUNTPOINT/ | + | |
| - | ## | + | |
| - | sudo ln -s $MOUNTPOINT/ | + | |
| - | fi | + | |
| - | done | + | |
| - | ## liste pour vérifier | + | |
| - | ls -als / | + | |
| - | ls -als $MOUNTPOINT/ | + | |
| - | </ | + | |
| - | Les risques d' | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | ==== Installation de liens dans l'O.S. de base ==== | + | |
| - | <note warning> | + | |
| - | Vu le titre je m' | + | |
| - | Éclaircissement ou exemple bienvenus. | + | |
| - | </ | + | |
| - | Ce traitement ne peut se faire qu'en mode administration. L' | + | |
| - | + | ||
| - | Voici les commandes à faire: | + | |
| - | + | ||
| - | < | + | |
| - | ## | + | |
| - | ## Avoir créé | + | |
| - | ## Avoir créé le point d' | + | |
| - | ## Avoir fermé ses applications afin que les fichiers puissent être déplacés. | + | |
| - | ## | + | |
| - | # Chemin du Disque de Données, qu'on a fait en point de montage dans / | + | |
| - | PARTNAME=Commun1 | + | |
| - | MOUNTPOINT=/ | + | |
| - | # | + | |
| - | # Liste des Utilisateurs à qui créer les Liens. Remplacer les nom_de_XX_utilisateur par les bons noms d' | + | |
| - | # Faire autant de lignes que d' | + | |
| - | UTILISATEUR[0]=' | + | |
| - | UTILISATEUR[1]=' | + | |
| - | UTILISATEUR[2]=' | + | |
| - | UTILISATEUR[3]=' | + | |
| - | # | + | |
| - | # Liste des Liens à Créer | + | |
| - | tabFolder[0]=' | + | |
| - | tabFolder[1]=' | + | |
| - | tabFolder[2]=' | + | |
| - | tabFolder[3]=' | + | |
| - | tabFolder[4]=' | + | |
| - | tabFolder[5]=' | + | |
| - | tabFolder[6]=' | + | |
| - | tabFolder[7]=' | + | |
| - | tabFolder[8]=' | + | |
| - | tabFolder[9]=' | + | |
| - | + | ||
| - | # Boucle pour passer dans chaque UTILISATEUR. | + | |
| - | for i in ${!UTILISATEUR[@]} | + | |
| - | do | + | |
| - | # se mettre dans le dossier personnel de l' | + | |
| - | echo " | + | |
| - | # boucle pour faire tous les liens de cet utilisateur. | + | |
| - | for j in ${!tabFolder[@]} | + | |
| - | do | + | |
| - | #Vérifions la présence d'un lien symbolique identique à celui qu'on veut créer. | + | |
| - | if grep -q " | + | |
| - | then echo "Le traitement | + | |
| - | else | + | |
| - | echo " " && echo " | + | |
| - | sudo mkdir -v $MOUNTPOINT/ | + | |
| - | if [ -d " | + | |
| - | then | + | |
| - | sudo mv -iuv / | + | |
| - | sudo mkdir -v / | + | |
| - | if [ -d "/ | + | |
| - | | + | |
| - | sudo chown ${UTILISATEUR[i]}: | + | |
| - | echo " | + | |
| - | | + | |
| - | echo " | + | |
| - | fi | + | |
| - | else | + | |
| - | echo " | + | |
| - | fi | + | |
| - | fi | + | |
| - | done | + | |
| - | done | + | |
| - | ## listons la référence. | + | |
| - | cat / | + | |
| - | </ | + | |
| - | Ces commandes tentent de faire certains contrôles afin de permettre de relancer après correction. | + | |
| - | + | ||
| - | **Il est nécessaire de rebooter afin de prendre en compte cette liaison au niveau O.S.** | + | |
| - | Cela va permettre de faire fonctionner immédiatement la corbeille. Cependant, plein de points de montage seront affichés. | + | |
| - | + | ||
| - | <note warning> | + | |
| - | Pour agir sur le dossier Bureau d'un $USER, il ne faut pas que sa session **graphique** soit lancée.\\ | + | |
| - | Agir donc depuis une **console**, | + | |
| - | Dans les 2 cas en veillant à ce que la session graphique de l' | + | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
