Comment déplacer son /home

Bonjour,

Actuellement mon /home se trouve sur la même partition (le même disque physique) que mon /.

J’ai sur le même PC un raid miroir et j’aimerais mettre mon /home dessus.

Comment procéder pour faire une telle opération?

Salut,

[quote]sur la même partition (le même disque physique)
[/quote]

Cette partie de phrase demande à être explicitée.

Mon PC est composé ainsi :

1 SSD 60Go séparé en deux partition (sda1 et sda2)

1 HD 3To (sdc1)
1 HD 3To (sdb1)

Actuellement le / se trouve sur sda1 et le /home sur sda2.

sdc1 et sdb1 sont monté en raid, ce raid se nomme md0.

md0 contient déjà certaines choses (fichiers,dossier) et c’est sur ce md0 que je voudrais déplacer mon /home. Si possible sans toucher ce qu’il contient déjà.

Re,

Et donc tu as un /home séparé sur une partition qui lui est propre :slightly_smiling:

Deux points à prendre en compte :

1 - Le système de fichiers sur le RAID.
Si compatible comme jfs/xfs/reiserfs/ext2-3-4…, il remplira pleinement son office de /home.
Si incompatible comme hfs+ ou ntfs, il ne reste qu’à créer des liens, impossible de l’utiliser en tant que $HOME.

2 - La taille
Une partition qui dispose de suffisamment d’espace pour contenir la quantité de données mobilisée par l’actuel /home.

Pour éclaircir ces deux points, tu montes les partitions du RAID et tu nous copies le retour de
$ df -hT
et de

du -h /home.

Edit : ne nous recopie pas l’intégralité de du -h /home, le total nous suffira.

voila le retour des deux commandes :

# df -hT Sys. fich. Type Taille Uti. Disp. Uti% Monté sur /dev/sda1 ext4 19G 942M 17G 6% / tmpfs tmpfs 3,8G 0 3,8G 0% /lib/init/rw udev tmpfs 3,8G 184K 3,8G 1% /dev tmpfs tmpfs 3,8G 0 3,8G 0% /dev/shm /dev/sda2 ext4 37G 176M 35G 1% /home tmpfs tmpfs 3,8G 0 3,8G 0% /tmp tmpfs tmpfs 3,8G 0 3,8G 0% /var/lock tmpfs tmpfs 3,8G 36K 3,8G 1% /var/run /dev/md0 ext4 2,7T 139G 2,6T 6% /media/raid

# du -h /home 8,0K /home/arisoy/.vim 16K /home/arisoy/.sabnzbd/admin 24K /home/arisoy/.sabnzbd 8,0K /home/arisoy/.ssh 104K /home/arisoy 16K /home/lost+found 124K /home

Un /home léger, un système de fichiers compatible ext4, de l’espace libre sur le RAID, tout baigne.
Il existe plusieurs façons de déplacer /home, on peut procéder à coups de liens ou de redéfinition de $HOME… Je te suggère de le faire au moyen d’un knoppix (ou un autre live-cd) ou d’une installation linux tierce sur cette même machine.
Pourquoi un live-cd ou un linux tiers et pas le système debian démarré ? Parce que /home ne sera pas mobilisé par une session d’utilisateur qui empêcherait la redéfinition de $HOME ou le montage/démontage. On peut le faire sur le système démarré, un peu plus délicat à mettre en œuvre (tty et login en root).

Va pour knoppix/linux tiers.

Tu crées un point de montage pour la racine debian et tu la montes.

mkdir /debian

mount /dev/sda1 /debian

Idem pour RAID

mkdir /raid

mount /dev/md0 /raid

Tu copies le contenu de /home sur la partition du RAID.

cp -rp /debian/home /raid

Tu renommes /home de debian en /home1.

mv /debian/home /debian/home1

Tu recrées le point de montage vide /home sur la racine debian.

mkdir /debian/home

Tu édites /etc/fstab de /debian en inscrivant l’uuid de la partition du RAID sur la ligne /home sur le modèle

UUID=XXXXX /home ext4 defaults 0 2

où tu remplaces XXXXX par l’uuid authentique obtenue grâce à
$ ls -l /dev/disk/by-uuid

Lorsque tu monteras /dev/md0 sur debian, il contiendra les $HOME et les anciens fichiers sous /home.
Tu redémarres sur debian, tu t’assures que le nouvel /home remplit son office et que tu n’as pas perdu de fichiers. Enfin, tu effaces l’ancien /home1.

Je préfererais la méthode sans linux tiers. En effet la manip est à faire sur un serveur dépourvu de lecteur CD. De plus j’ai l’habitude de la ligne de commande. La seule chose que je ne sais pas, c’est la procédure à suivre pour déplacer le /home.

Je vais essayer d’adapter ce que tu m’a dis, tu me diras juste si c’est bon (avant que je fasse des bétises) :

  1. Je me logue en SSH sur mon serveur

  2. Je passe root

  3. Je copie le dossier /home sur mon raid : cp -rvp /home /media/raid

  4. Je renomme le /home actuel en /home1 : mv /home /home1
    (pas sur que cette commande passera)

  5. Je recré un /home provisoire : mkdir /home
    (a quoi ça sert de faire cela)

  6. J’édite le fstab en mettant l’UUID du raid que j’obtiens en tapant : ls -l /dev/disk/by-uuid

  7. Je reboot

Si tu peux juste confirmer ce que je dis et répondre a mes deux questions dans les parenthèses stp.

Salut,

[quote=“Arisoy”]4) Je renomme le /home actuel en /home1 : mv /home /home1
(pas sur que cette commande passera)[/quote]Si, pas de soucis.

[quote=“Arisoy”]5) Je recré un /home provisoire : mkdir /home
(a quoi ça sert de faire cela)[/quote]Parce qu’il n’y a plus de répertoire /home (mv /home /home1)

[quote=“Arisoy”]7) Je reboot[/quote]Inutile, un simple mount -a suffira.

C’est faisable, tu risques simplement d’avoir des petits problèmes avec un /home opéré à vif, à commencer par ssh+login+su.

On peut faire plus court: en sautant les points 4) et 5), plus tordu en n’effaçant pas les anciens /home/$USER…

Tu ne renommes pas /home -4)
Tu ne recrées pas /home puisqu’il existe-5)

et j’ajoute,tu n’effaces pas le contenu des anciens $HOME en /home qui sera là en double.
Le contenu de l’ancien /home sera couvert par le montage.

Tu obtiens ainsi un /home à double-fond qui remplira toujours son office même lorsque le montage de /home coincera. Avec un /home de taille si petite,on peut se le permettre, la place perdue importe peu.

Pour moi il suffit de dupliquer ton home modifier ton fstab et un petit reboot plus tard tout est ok.
Donc :

  1. Je me logue en SSH sur mon serveur =>OK

  2. Je passe root => Au minimum un utilisateur qui pourra lire l’intégralité du répertoire

  3. Je copie le dossier /home sur mon raid : cp -rvp /home /media/raid => “cp -a” Permet de préserver les droits/permissions/propriétaire

  4. Je renomme le /home actuel en /home1 : mv /home /home1 => Inutile pour moi
    (pas sur que cette commande passera)

  5. Je recré un /home provisoire : mkdir /home => Inutile pour moi
    (a quoi ça sert de faire cela)

  6. J’édite le fstab en mettant l’UUID du raid que j’obtiens en tapant : ls -l /dev/disk/by-uuid => OK, d’ailleurs je modifierai le point de montage de l’ancien home pour y avoir toujours accès au cas où

  7. Je reboot => Ou un mount -a comme dit lol. Mais un reboot n’est pas plus mal en effet.

Salut,

Petite explication pour un pauvre vieux :

Le raid devient donc dans sa totalité le nouveau home ?

[quote=« etxeberrizahar »]On peut faire plus court: en sautant les points 4) et 5), plus tordu en n’effaçant pas les anciens /home/$USER…

Tu ne renommes pas /home -4)
Tu ne recrées pas /home puisqu’il existe-5)[/quote]

  1. Que deviendra mon ancien sda2 (mon ancien /home)?
  2. Est il possible de réintégrer ce sda2 a sda1? (histoire de pas perdre la place réserver pour sda2)

[quote=« etxeberrizahar »]et j’ajoute,tu n’effaces pas le contenu des anciens $HOME en /home qui sera là en double.
Le contenu de l’ancien /home sera couvert par le montage.

Tu obtiens ainsi un /home à double-fond qui remplira toujours son office même lorsque le montage de /home coincera. Avec un /home de taille si petite,on peut se le permettre, la place perdue importe peu.[/quote]
3) Si mon /home est la en double, est ce que les données que je mettrait dedans seront toutes doublées? Je ne veux pas cela…

1&2) Ton sda2 (ancien home) ne seras pas perdu, il ne tient qu’a toi de lui définir une nouvelle place dans ton arborescence. Par exemple tu créé un répertoire /home_old et dans ton fstab tu modifie le point de montage de ta partition pour l’accrocher a ce nouvel emplacement.

  1. Je n’ai jamais essayer de monter 2 partition sur un même répertoire et encore moins avec les même fichiers … je me demande comment ça se comporte :think:

Salut,

Le deuxième montage masque le premier, sans dégâts.

/dev/sda2 n’étant plus attaché au point de montage /home, tu es libre d’en faire ce que tu veux, le laisser en sommeil, le monter ailleurs que /home, y installer debian Sid, l’effacer et agrandir /dev/sda1.

Ma recommandation à propos de /home à double fond comporte une grossière erreur. À cause de ton /home qui est DÉJÀ sur un point de montage, /home sur la racine est forcément vide et un montage foiré ne saurait
se rattraper par le contenu de /home à la racine. Ce conseil ne s’applique qu’à ceux qui ont un /home réellement attaché à la racine.

Ça prend deux minutes de bidouiller un double montage, d’expérimenter ça et de voir les effets produits, pas besoin d’attendre qu’on vous réponde
ordre/contre-ordre/annulation/confirmation d’annulation/annulation de confirmation … sur un forum.

Merci à tous, j’ai fais la manip et ça a fonctionné.

Seul petit problème que j’ai eu, je me suis retrouvé avec l’arborescence suivante /home/home/arisoy.

Donc j’avais un message qui disait que arisoy n’avait pas de répertoire personnel. J’ai recréé la bonne arborescence /home/arisoy et c’était bon.

Salut,

Ce fil mériterait une page dans notre Wiki!

“Comment déplacer son /home” (?)

etxeberrizahar incollable sur ce vaste sujet, … entre autre! … :wink:

Salut,

J’ai peur que ce mode d’emploi ne tourne au roman fleuve s’il doit envisager plusieurs situations. N’oublions pas que ce topic va s’adresser à ceux qui ne savent pas grand chose du système :slightly_smiling:

Salut,

[quote=“ggoodluck47”]Salut,

J’ai peur que ce mode d’emploi ne tourne au roman fleuve s’il doit envisager plusieurs situations. N’oublions pas que ce topic va s’adresser à ceux qui ne savent pas grand chose du système :slightly_smiling:[/quote]
Ce n’est pas faux, loin de là.

Dans le même temps il y a grand nombre de demande similaire (résolus) dans SD.

Une synthèse serait la bienvenue, tuto qui se complémentera au grès du temps et surtout des contributeurs.

D’où l’intérêt du Wiki … :wink: