Transfert d'un dossier vers un autre situé lui dans un volume logique

Ceci est une question en complément d’autres déjà posées.
Admettons que je dispose sur un disque /dev/sda un VG appelé debian-vg.
Dans ce VG il y a un LV appelé /home.
Dans /home il y a un utilisateur user1.

Je dispose également d’un autre disque /dev/sdb qui n’est pas dans le PV.
Sur ce disque il y a une partition /dev/sdb1 qui contient /home/toto.

Je voudrais déplacer tout ce qui est dans toto dans /home/user1

Je suis perdu avec les mount …

A priori, si j’ai bien compris la question, il suffit de faire :

cp -a /home/toto/unfichiertestacopier.txt /home/user1/

Sinon, le résultat de la commande :

mount

pourrait être utile pour comprendre exactement le problème.

Un mount ne fait qu’attacher un périphérique physique à un dossier, rien de plus.

Non (ou oui ?) car c’est le système situé sur /dev/sda qui est booté.
Si je fais fdisk -l je vois /dev/sdb et ses partitions. C’est tout.

mkdir /mnt/sdb1 && mount /dev/sdb1 /mnt/sdb1 && cp -R /mnt/sdb1/home/toto /home/ && umount /dev/sdb1 && rmdir /mnt/sdb1

Dans la ligne de commandes ci-dessus, chacune des opérations ne sera exécutée que si (&&) la précédente a pu s’exécuter sans erreur.

=======
Ci-dessous, un descriptif des opérations.

mkdir /mnt/sdb1     => Créer le répertoire qui va servir de point de mountage
mount /dev/sdb1 /mnt/sdb1                         => Mounter le système de fichiers de la partition accessible par /dev/sdb1
cp -R --preserve=all /mnt/sdb1/home/toto /home/   => Créer une copie du répertoire personnel de toto dans /home
umount /dev/sdb1    => Dé-mounter le système de fichier source
rmdir /mnt/sdb1     => Supprimer le point de mountage

=======
EDIT ajout de –preserve=all

A la commande mount /dev/sdb1 j’ai le message:
impossible de trouver /dev/sdb1 dans /etc/fstab

Effectivement, une erreur de ma part : un copié/collé mal fait => il manque le point de mountage.
Je corrige mon précédent message

Comme le répertoire /mnt/sdb1 a sans doute déjà été créé, il faudra faire :

mount /dev/sdb1 /mnt/sdb1 && cp -R --preserve=all /mnt/sdb1/home/toto /home/ && umount /dev/sdb1 && rmdir /mnt/sdb1

=======
NOTE : Il faudra sans doute mettre à jour le répertoire personnel du compte toto dans fichier /etc/passwd avec la ligne de commandes suivante :

usermod -d /home/toto toto

=======
EDIT ajout de –preserve=all

Bravo !
J’ai fait commande par commande. Et les fichiers/dossiers cachés ?
Il me faudra changer root:root en user1:user1

N’efface surtout pas pas les fichiers source tant que tout n’est pas vérifié.

=======

[quote=“bertaudmarc, post:7, topic:68912”]
Et les fichiers/dossiers cachés ?
[/quote]Ils devraient avoir été copiés avec toute l’arborescence de /mnt/sdb1/home/toto/

=======

[quote=“bertaudmarc, post:7, topic:68912”]
Il me faudra changer root:root en user1:user1
[/quote]je ne sais pas qui est user1, mais je suppose que tu parles du compte toto

Effectivement, il aurait fallu utiliser l’option –preserve=all de la commande cp

Tu peux effacer les fichiers copiés avec :

rm -Rf /home/toto

et refaire la copie avec :

cp -R --preserve=all /mnt/sdb1/home/toto /home/

Merci. Il me faudrait de bons tutoriaux pour réviser les fondamentaux !

Quand la copie est terminée, il ne te restera plus qu’à commenter la ligne (du fichier /etc/fstab ) qui correspond à ton système de fichiers /home/toto

Puis tu redémarre la machine, et tu vérifie que ton système fonctionne correctement,
et après avoir essayé un petit moment tout ce que tu peux lancer, si tu considère que tout va bien,
alors seulement tu pourra supprimer les fichiers sources (ou reformater la partition source)