Changer de partition /home

4 replies [Last post]
nmrk.n
Offline
Joined: 11/01/2013

Bonjour,

Comment changer de partition /home ?

L'installation automatique "à côté des autres systèmes" a créé une partition /home XFS et je voudrais utiliser ma partition /home commune Ext4.

nmrk.n

Bruno Letat
Offline
Joined: 05/02/2013

Bonjour nmrk.n

C'est une opération un petit peu délicate car on touche aux partitions. Donc il faut être prudent .
il va falloir modifier le fichier /etc/fstab et indiquer dans ce fichier le montage de ton /home commun en Ext4 mais avant il faut repérer l'UUID de ce home par l'instruction :

sudo blkid + partition où est montée le home en Ext4

par exemple ça peut être sudo blkid /dev/sda1
tu notes bien le UUID car il va falloir le réécrire plus tard.

Si tu ne connais pas la partition, tu as aussi la solution de retrouver l'UUID par ls /dev/disk/by-uuid
Ca te donnera les UUID de l'ensemble des partitions existantes, montées ou pas (c'est peut-être plus simple pour repérer ton /home en ext4).

Tout de suite, tu fais une sauvegarde de ton fichier fstab pour plus de sécurité sudo cp /etc/fstab /etc/fstab-09-01-2014 par exemple.

Ensuite seulement tu ouvres le fichier /etc/fstab avec ton éditeur préféré en mode administrateur et tu repères la ligne du /home actuel.
Tu remplaces le UUID actuel par le UUID que tu as noté précédemment et tu remplaces le XFS par ext4 et ça te donnera un truc du type
UUID=a10002b0-a5-124-123456f /home ext4 defaults 0 2

Tu sauvegardes le fichier et tu rebootes. Tu devrais retrouver ton /home en ext4 par défaut.
En cas de pépin, tu ouvres une session en mode console (CTRL+ALT+F1) et tu remets ton ancien fichier comme à l'origine en faisant
sudo rm /etc/fstab (on efface les modifications)
sudo cp /etc/fstab-09-01-2014 /etc/fstab (on recopie comme à l'origine).

A bientôt,
Bruno

Magic Banana

I am a member!

Offline
Joined: 07/24/2010

Il n'est pas nécessaire d'indiquer le système de fichier (première colonne dans /etc/fstab) via son UUID. On peut très bien la spécifier via /dev/sdaX où X est le numéro de la partition.

En revanche, là où tu peux avoir des soucis, c'est avec les permissions. Les utilisateurs ont-ils bien les même ids (le numéro, le nom n'importe pas) dans ton /home actuel et dans celui que tu veux ? Si l'autre a été créé avec Fedora (ou apparenté), ce n'est certainement pas le cas car (à moins que cela est récemment changé) ces distributions font commencer les identifiants des utilisateurs à 500 alors que Debian (et ses dérivées comme Ubuntu et Trisquel) commencent à 1000.

Si, à l'heure actuelle, tu es bien marqué comme propriétaire du dossier portant ton nom dans le répertoire que tu veux comme nouveau /home, alors la réponse est oui (pour cet utilisateur).

Sinon, il va te falloir accorder les ids (de nouveau : je parle d'un numéro, le "uid", pas du nom d'utilisateur). De préférence avant de changer le point de montage de /home. Je ne suis pas tout à fait certain que taper dans /etc/passwd est une bonne idée... mais peut-être que si (si l'utilisateur n'est propriétaire d'aucun fichier en dehors de son répertoire personnel).

Il y a potentiellement le même problème avec les ids des groupes (les "gid"s).

nmrk.n
Offline
Joined: 11/01/2013

Bonjour,

J'ai déjà fait l'opération avec Mageia mais je n'ai pas l'habitude avec
Trisquel. Je vais donc tenter de préciser la question.

- Il faut modifier grub, j'ai l'habitude avec grub1 que je choisis de
préférence à grub2 et que j'installe sur la partition racine (pas sur le
MBR) mais je n'ai pas vu comment faire ces choix avec Trisquel ?

- Il faut modifier fstab, je récupère les UUID des partitions dans le
CCM (Centre de Configuration Mageia) graphique par copier-coller mais je
peux le faire en ligne de commande.

- Il me faut éventuellement changer le propriétaire de certains fichiers
et les déplacer.

Habituellement je crée chaque utilisateur "jumeau" avec un identifiant
différent indiquant "sa" distribution (pour qu'ils aient des répertoires
/home différents pour ne pas mélanger les fichiers de configuration)
mais des UID et GID identiques à cause des droits, par exemple il faut
que j'arrive à :

"Jumeaux" toto :
totomageia2 => /home/totomageia2 UID=GID=2000 (rép fichiers de conf)
totomageia3 => /home/totomageia3 UID=GID=2000 (rép fichiers de conf)
tototrisquel6 => /home/tototrisquel6 UID=GID=2000 (rép fichiers de
conf)

Je crée /home/toto qui contient Documents, Images, Musique etc. de toto

"Jumeaux" titi :
titimageia2 => /home/titimageia2 UID=GID=2001 (rép fichiers de conf)
titimageia3 => /home/titimageia3 UID=GID=2001 (rép fichiers de conf)
tititrisquel6 => /home/tititrisquel6 UID=GID=2001 (rép fichiers de
conf)

Je crée /home/titi qui contient Documents, Images, Musique etc. de titi

Vu que les UID-GID créés par défaut dépendent des distributions je ne
les utilise pas ou seulement temporairement pour créer un utilisateur
"install" que je supprime ultérieurement.
J'ai l'habitude de choisir les UID-GID des utilisateurs que je crée que
ce soit pendant l'installation ou après mais je n'ai pas vu comment
faire ces choix avec Trisquel ?

En résumé :

- il faut que je fasse de ma partition /home habituelle la partition
/home de Trisquel.

- il faut que je crée dans Trisquel un utilisateur sur mesure pour
remplacer l'utilisateur créé pendant l'installation.

merci.

Note :

Peut-être vaut-il mieux que je recommence l'installation avec
"personnalisée" plutôt que "à côté" qui ne voit pas les partitions vides
et ne tient compte que des espaces vides ?

Magic Banana

I am a member!

Offline
Joined: 07/24/2010

Je ne vois pas ce qu'il y aurait à toucher au niveau du chargeur de démarrage (qui a juste besoin de savoir où est l'image du noyau et la partition racine).

Les "Paramètres avancés" dans "Utilisateurs et groupes" (dans les "Paramètres système") permettent de modifier l'uid d'un utilisateur (sauf de celui ou ceux qui sont actuellement connectés). Bien sûr, les droits d'administration sont nécessaires.

Choisir, à l'installation de Trisquel, la partition où sera montée /home (mais sans la formater !) est relativement simple : il te suffit de cliquer sur les cases qui vont bien à l'écran de partionnement manuel. Bien sûr, il te faut aussi définir une partition racine qui, elle, sera formatée. Pour arriver à cet écran de partitionnement manuel, il ne te faut, au début, pas choisir une installation automatique (que ce soit sur le disque entier ou aux côtés des système déjà installés). C'est cette troisième voie que tu appelles "personnalisée".

Tu n'as alors rien à toucher dans /etc/fstab. Maintenant si tu y touches (pour éviter la réinstallation), sache que tu n'es pas obligé de connaître les UUID des disques. Tu peux parfaitement avoir cette ligne dans /etc/fstab (adapte le numéro de la partition et le type du système de fichiers) :
/dev/sda5 /home xfs defaults 0 2