#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 2
En 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