#1 Le 21/08/2006, à 20:45
- tuxseb
[résolu]déplacer /home
Bonsoir,
Fraîchement revenu dans le monde Linux depuis 2 jours je rencontre un problème. Je précise que j'ai recherché sur le forum sans trouver de solution à mon problème.
A l'install d'Ubuntu, j'avais précisé que je voulais partitioner ma partition Ubuntu en 3. une pour le système, une pour le /home et une pour le swap.
Mais il m'a mis le /home à la racine du système, pas de bol. J'ai donc une partition inutilisée. Je voudrais qu'Ubuntu utilise cette partition comme /home. J'ai essayé de la monter avec l'utilitaire "disques" mais ça ne fonctionne pas . Comment faire ? merci d'avance ![]()
Dernière modification par tuxseb (Le 25/08/2006, à 18:43)
Hors ligne
#2 Le 21/08/2006, à 20:56
- Balkoth

Re : [résolu]déplacer /home
Bonsoir,
il me semble que ta partition est bien utilisée pourtant.
Tapes df dans un terminal pour en être sûr :
si tu /home listé dans la colonne de droite, ta partition est bien reconnue et utilisée par ubuntu.
Explication rapide :
contrairement à Windows, Linux te permet de monter une partition n'importe où dans l'arborescence de fichier.
Il est normal que la partition /home soit montée à la racine.
Hors ligne
#3 Le 21/08/2006, à 21:00
- tuxseb
Re : [résolu]déplacer /home
Balkoth merci de ton aide, voici ce que me donne la commande df
seb@seb-laptop:~$ df
Sys. de fich. 1K-blocs Occupé Disponible Capacité Monté sur
/dev/hda3 12381436 5574248 6178244 48% /
varrun 501020 80 500940 1% /var/run
varlock 501020 4 501016 1% /var/lock
udev 501020 112 500908 1% /dev
devshm 501020 0 501020 0% /dev/shm
lrm 501020 18324 482696 4% /lib/modules/2.6.15-26-k7/volatile
/dev/hda1 14651248 8568784 6082464 59% /mnt/windows
Hors ligne
#4 Le 21/08/2006, à 21:02
- tuxseb
Re : [résolu]déplacer /home
dans l'utilitaire "disques", hda2 est inactive.
Hors ligne
#5 Le 21/08/2006, à 21:06
- Balkoth

Re : [résolu]déplacer /home
Alors ce n'est pas ce que je pensais ![]()
En fait tu n'as pas de partition /home séparée.
Reste à savoir si tu as bien une partition séparée inutilisée ?
sudo fdisk -l pour lister les partitions présentes.
edit : ah oui ta partition hda2 n'est pas montée.
Pour la monter sur /home, il faut éditer le fichier /etc/fstab.
Si tu pouvais poster son contenu ? (more /etc/fstab)
Dernière modification par Balkoth (Le 21/08/2006, à 21:08)
Hors ligne
#6 Le 21/08/2006, à 21:10
- tuxseb
Re : [résolu]déplacer /home
seb@seb-laptop:~$ more /etc/fstab
# /etc/fstab: static file system information.
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
# Partitions Windows - NTFS
/dev/hda1 /mnt/windows ntfs ro,user,auto,gid=100,nls=utf8,umask=002
0 0
/dev/hda3 / ext3 defaults,errors=remount-ro 0 1
/dev/hda5 none swap sw 0 0
/dev/hdc /media/cdrom0 udf,iso9660 user,noauto 0 0
Hors ligne
#7 Le 21/08/2006, à 21:22
- Balkoth

Re : [résolu]déplacer /home
Bon, tout d'abord il faut monter ta partition.
Créer un dossier temporaire pour la monter :
sudo mkdir /home2
La monter dans ce dossier :
sudo mount /dev/hda2 /home2
Vérifier que la partition est vide, on ne sait jamais...
ls -al /home2 ne doit rien afficher
Copier tous tes fichiers dans cette partition :
sudo cp -r /home /home2
Ensuite, éditer le fichier /etc/fstab
gksudo gedit /etc/fstab
Et rajouter la ligne
/dev/hda2 /home ext3 defaults 0 2à la fin (remplacer ext3 par ext2 suivant le format que tu as choisis)
Sauvegarder, rebooter, normalement ça devrait fonctionner.
Ensuite tu peux supprimer le répertoire vide /home2
sudo rmdir /home2
edit: j'avais mis hda au lieu de hda2 ![]()
Dernière modification par Balkoth (Le 21/08/2006, à 21:26)
Hors ligne
#8 Le 21/08/2006, à 21:24
- tuxseb
Re : [résolu]déplacer /home
OK merci . Je vais essayer et te tiens au courant.
Hors ligne
#9 Le 21/08/2006, à 22:01
- bapoumba

Re : [résolu]déplacer /home
Pour avoir eu un problème similaire (mais pas identique) j'ai partiellement suivi le tuto :
http://doc.ubuntu-fr.org/installation/deplacer_home
En tout cas, passage en mode init 1 pour renommer l'ancien /home de la partition racine et changer le fstab.
| Ubuntu Forums |
J'aime les fraises.
Hors ligne
#10 Le 21/08/2006, à 22:06
- tuxseb
Re : [résolu]déplacer /home
Balkoth, j'ai eu une grosse frayeur en rebootant mon pc. Ubuntu me disait que le répertoire /home/seb n'existait pas. Pourtant j'ai suivi ton tuto à la lettre (plus le hda2). Je ne sais pas par quel miracle mais ça remarche
. Mais la partition est de nouveau inactive, c'est bizzare non ???
Hors ligne
#11 Le 21/08/2006, à 22:11
- tuxseb
Re : [résolu]déplacer /home
merci bapoumba. Je vais essayer.
Hors ligne
#12 Le 21/08/2006, à 22:13
- Balkoth

Re : [résolu]déplacer /home
Ah oui j'avais pas vu ce tuto, qui permet donc de ne pas redémarrer.
@tuxseb:
Désolé, je me suis trompé pour le cp -r /home /home2, qui a copié le répertoire /home dans /home2, et non pas les fichiers comme la commande correcte, cp /home/* /home2, le fait.
Enfin, te reste à suivre le tuto du wiki maintenant.
Pour nettoyer mes bêtises : sudo rm -r /home2
Hors ligne
#13 Le 21/08/2006, à 22:37
- tuxseb
Re : [résolu]déplacer /home
Ah oui j'avais pas vu ce tuto, qui permet donc de ne pas redémarrer.
@tuxseb:
Désolé, je me suis trompé pour le cp -r /home /home2, qui a copié le répertoire /home dans /home2, et non pas les fichiers comme la commande correcte, cp /home/* /home2, le fait.
Enfin, te reste à suivre le tuto du wiki maintenant.
Pour nettoyer mes bêtises : sudo rm -r /home2
J'ai essayé ta nouvelle commande et ça ne fonctionne pas. Je revois tout ça demain.
En tout cas merci à vous deux.
Hors ligne
#14 Le 21/08/2006, à 23:32
- Pololilo

Re : [résolu]déplacer /home
J'ai recement fait la même manip, et ma petite procédure est :
-> Connexion en root / soit en mode sans echec pour Ubuntu
-> Renommer /home en /exhome
mv /home /exhome
-> Monter hda2 en /home
mount /dev/hda2 -t ext3 /home
-> Copier le contenu de /exhome à /home
cp -r /exhome/* /home
-> appliquer les droits de l'user sur son repertoire
chown -R pol:pol /home/pol
chmod -R 750 /home
-> Modifier le fstab
vi /etc/fstab
ajout de la ligne /dev/hda2 /home ext3 defaults 0 2En esperant que cela puisse t'aider.
@++
PoL
Gnu/Linux Addict
Hors ligne
#15 Le 22/08/2006, à 06:35
- cep
Re : [résolu]déplacer /home
Exemple pour déplacer /home sur /dev/hda2
Clore sa session et ouvrir une console par ctrl + alt + F2 par exemple puis se loguer et :
sudo telinit 1 #on devient "mono_user" avec les droits root, sudo inutile
mkdir /mnt/new_home # pour créer le point de montage
mount /dev/hda2 /mnt/new_home # pour monter la partition qui recevra le futur /home
cp -a /home/. /mnt/new_home/ # copie /home/ sur la nouvelle partition ( noter le . point après / et non le * et l'utilisation de cp -a )
mv /home/ /home_old # renomme /home et servira de sauvegarde en cas de problème
mkdir /home # crée le nouveau répertoire /home qui sera le point de montage nouveau
umount /mnt/new_home # démonte /dev/hda2 pour pouvoir le remonter après modification de fstab
modifier fstab :
nano -w /etc/fstab # ou tout autre éditeur
et y ajouter :
/dev/hda2 /home ext3 defaults 0 2 # adapter hda2
mount /home # monte la nouvelle partition
Puis : telinit 2
ctrl + alt + F7 et on se logue.
On vérifie que tout est ok et on supprimera plus tard /home_old
ÉDITÉ pour ajouter les commentaires des commandes ![]()
Dernière modification par cep (Le 22/08/2006, à 11:11)
Hors ligne
#16 Le 22/08/2006, à 10:49
- bapoumba

Hors ligne
#17 Le 22/08/2006, à 11:02
- cep
Re : [résolu]déplacer /home
De rien bapoumba ![]()
Je me rends compte que j'aurais pu commenter les commandes
Je modifierai le poste.
Bonne journée.
cep
Hors ligne
#18 Le 22/08/2006, à 11:07
- bapoumba

Re : [résolu]déplacer /home
Je me rends compte que j'aurais pu commenter les commandes
![]()
Je modifierai le poste.
Ah ![]()
Moi qui l'avais gardé au chaud pour faire quelques recherches sur ces commandes, justement, et leur pourquoi ![]()
| Ubuntu Forums |
J'aime les fraises.
Hors ligne
#19 Le 22/08/2006, à 11:12
- cep
Hors ligne
#20 Le 22/08/2006, à 11:21
- bapoumba

Re : [résolu]déplacer /home
![]()
Ce que je voulais rechercher comme explications : le pourquoi du mode init 1 et les options du cp ![]()
| Ubuntu Forums |
J'aime les fraises.
Hors ligne
#21 Le 22/08/2006, à 11:33
- cep
Re : [résolu]déplacer /home
Les seules non commentées car trop long
Promis, j'essaye de le faire dans l'après-midi.
Hors ligne
#22 Le 22/08/2006, à 11:57
- bapoumba

Re : [résolu]déplacer /home
Les seules non commentées car trop long
Ce n'est pas pour t'embêter, ni pour te demander de faire ça à ma place, ce sont les deux seules commandes dont je ne vois pas tous les tenants et aboutissants ![]()
D'ailleurs, pour le passage en telinit 1, je m'étais aussi posée la question lorsque tu (et d'autres) m'avais aidée à retrouver mon /home après le passage à dapper, mais je bossais alors, n'avais pas le temps puis j'ai oublié... ![]()
Et puis, chercher ça me plait aussi, c'est formateur.
Dernière modification par bapoumba (Le 22/08/2006, à 12:02)
| Ubuntu Forums |
J'aime les fraises.
Hors ligne
#23 Le 22/08/2006, à 12:12
- Balkoth

Re : [résolu]déplacer /home
Bon, alors si j'ai bien compris :
cp -a /home/. /mnt/new_home/
Le . au lieu du * sert à copier aussi les fichiers cachés.
Le -a sert à copier récursivement le répertoire, en conservant toutes les informations de droits/propriétaire des fichiers et en ne suivant pas les liens symboliques mais au contraire en copiant le lien lui même.
Si quelqu'un peut mettre à jour le wiki d'ailleurs ?
Dans les instructions que j'ai proposées, j'ai oublié de nettoyer le répertoire /home existant.
Mais pour le telinit, je ne vois pas trop à quoi ça sert, donc je suis aussi intéressé par une explication ![]()
C'est pour éviter d'avoir un shell utilisateur ouvert, pour ne pas avoir de conflit quand le dossier /home est temporairement inexistant ?
Hors ligne
#24 Le 22/08/2006, à 13:07
- cep
Re : [résolu]déplacer /home
. . . Et puis, chercher ça me plait aussi, c'est formateur.
Oui, alors seulement une très brève description des commandes telinit et cp tirées de man cp et man init.
telinit a pour but de lancer la machine avec le niveau d'init précisé dans la commande ; telinit 1 lancera donc l'init 1 (runlevel) qui est le mode "single user", par opposition au mode multi-users.
On peut l'assimiler au mode dans lequel on est en démarrant la machine en "recovery mode". Dans ce mode on à les droits administrateur et il n'est pas nécessaire de faire précéder les commandes de sudo.
Pour lister les liens des scripts concernés en init 1 :
ls -l /etc/rc1.d/
ls -l /etc/rcS.d/ aussi par curiosité.
cp -a est d'après le man cp l'équivalent de -dpR
-d = identique à --no-dereference --preserve=link --no-dereference ne pas suivre les liens symboliques
-p = identique à --preserve= mode,ownership,timestamps, et si possible les attributs additionels : links, all
-R = -r, --recursive copier récursivement les répertoires
cp -a est utilisé pour faire une copie à l'identique (sauvegarde par exemple) et peut être assimilé à rsync -a /source/ /destination/ auquel on peut ajouter l'option -H. Attention cependant à leur emploi si on utilise les ACL.
cp -a ne doit pas être utilisé sur du vfat ou ntfs.
Enfin, spéciale dédicace pour beug s'il passe par là, qui a écrit dans un autre poste :
"non mais avec cep c'est chiant, on comprend jamais rien a ces post,"
:
petit exemple de cp -a avec les liens ( la commande ls -i montre les inodes utilisées, et s'il y a des inodes différentes c'est qu'il y a deux fichiers) :
:~$ touch lundi ; ln lundi mardi ; cp -a mardi temp/mardibis
:~$ ls -i lundi mardi temp/mardibis
112526 lundi 112526 mardi 144785 temp/mardibis
:~$ ln mardi temp/marditer
:~$ ls -i lundi mardi temp/mardi*
112526 lundi 112526 mardi 144785 temp/mardibis 112526 temp/marditer
Hors ligne
#25 Le 22/08/2006, à 13:11
- cep
Re : [résolu]déplacer /home
Mais pour le telinit, je ne vois pas trop à quoi ça sert, donc je suis aussi intéressé par une explication
C'est pour éviter d'avoir un shell utilisateur ouvert, pour ne pas avoir de conflit quand le dossier /home est temporairement inexistant ?
Dans ce mode /home ne sera pas utilisé ni modifié par un user.
C'est aussi la solution pour renommer /home/ ou démonter une partition /home sans qu'il soit répondu qu'elle est busy.
Hors ligne