Différences
Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédente | ||
utilisateurs:ubuntu18a:partition_de_donnees [Le 23/01/2019, 22:45] – créée ubuntu18a | utilisateurs:ubuntu18a:partition_de_donnees [Le 28/09/2019, 14:30] (Version actuelle) – [Créer les répertoires pour les utilisateurs de ubuntu] correction étourderie Theon | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | Début de création d'une page de documentation | ||
+ | <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> | ||
+ | |||
+ | <note tip> | ||
+ | |||
+ | __________________ | ||
+ | |||
+ | {{tag> | ||
+ | -------- | ||
+ | ====== Création d'une partition de données personnelles sous Ubuntu ====== | ||
+ | |||
+ | Souvent les ordinateurs portables sont équipés d'un SSD de petite taille et d'un disque dur de taille conséquente. Une des difficultés que l'on rencontre est l' | ||
+ | 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. | ||
+ | |||
+ | |||
+ | 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 / | ||
+ | </ | ||
+ | |||
+ | ==== 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 /dev/$DISK | ||
+ | tail -2 / | ||
+ | </ | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | =====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 "/ | ||
+ | then | ||
+ | echo " | ||
+ | else | ||
+ | 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' | ||
+ | |||
+ | ==== Installation de liens chez l' | ||
+ | La technique décrite précédemment est parfaite. Elle traite huit dossiers classiques. | ||
+ | |||
+ | | ||
+ | Elle ne traite pas d' | ||
+ | |||
+ | Dans l' | ||
+ | |||
+ | La résolution du problème passe par la création de [[https:// | ||
+ | Cette technique est aussi valable pour les huit répertoires traités plus haut. Elle semble simple. Cependant les liens logiques peuvent dysfonctionner pour certaines applications. | ||
+ | Les applications thunderbird et mozilla sont susceptibles d' | ||
+ | |||
+ | **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/ | ||
+ | then | ||
+ | echo "Le traitement | ||
+ | | ||
+ | echo " " && echo " Début de déplacement des données existantes de $i" && | ||
+ | mv -iu / | ||
+ | sudo ln -s $MOUNTPOINT/ | ||
+ | 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/ | ||
+ | then | ||
+ | echo "Le traitement | ||
+ | else | ||
+ | echo " " && echo " Début de déplacement des données existantes de $i" && | ||
+ | sudo mv -iu / | ||
+ | sudo chown $UTILISATEUR: | ||
+ | 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 ==== | ||
+ | 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 /etc/fstab | ||
+ | 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 " | ||
+ | else | ||
+ | echo " | ||
+ | fi | ||
+ | else | ||
+ | echo " | ||
+ | fi | ||
+ | fi | ||
+ | done | ||
+ | done | ||
+ | ## listons la référence. | ||
+ | cat /etc/fstab | ||
+ | </ | ||
+ | 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. | ||
+ | |||
+ | |||
+ | |||
+ | |||