[partitionnement] étendre /home sur 2 disques dur [résolu]

Questions et astuces concernant l'installation et la configuration d'archlinux
Répondre
Spook
Hankyu
Messages : 16
Inscription : ven. 11 sept. 2009, 19:34

[partitionnement] étendre /home sur 2 disques dur [résolu]

Message par Spook »

Bonjour à tous!

J'ai un souci avec mon partitionnement:

J'ai physiquement 2 disques dur identiques mais j'ai installé Arch uniquement sur le premier dd, avec l'intention de me servir du 2eme pour installer windows en double boot... Ce que je n'ai jamais fait. :wink:

Or dans mes manipulations lors de l'étape de partitionnement j'ai du m'emmêler les pinceaux, car je me retrouve avec apparemment un / sur mon 2eme disque alors que mon install principale se trouve sur mon 1er. En plus j'ai l'impression que ce / supplémentaire est monté automatiquement à chaque démarrage. Mais comme il appartient à root, je ne peux pas écrire dessus en user (normal).

... tout le monde me suit? Je continue...

Je pense que mon 2ème dd contient des fichiers qui sont inutiles, et en plus je commence à être un peu juste dans mon /home.

Ce que j'essaie de faire (si c'est possible) est de pouvoir agrandir mon /home après m'être assuré de l'inutilité des données sur le 2eme disque dur.

Voici ce que me donne un fdisk -l

Code : Tout sélectionner

[root@myhost spook]# fdisk -l                                                                                                                                                                                       

Disque /dev/sda: 250.1 Go, 250059350016 octets
255 têtes, 63 secteurs/piste, 30401 cylindres, total 488397168 secteurs
Unités = secteurs de 1 * 512 = 512 octets
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Identifiant de disque : 0x76556ab9

Périphérique Amorce  Début        Fin      Blocs     Id  Système
/dev/sda1   *           1      208844      104422   83  Linux
/dev/sda2          208845     8610839     4200997+  82  Linux swap / Solaris
/dev/sda3         8610840    49576589    20482875   83  Linux
/dev/sda4        49576590   488392064   219407737+  83  Linux

Disque /dev/sdb: 250.1 Go, 250059350016 octets
255 têtes, 63 secteurs/piste, 30401 cylindres, total 488397168 secteurs
Unités = secteurs de 1 * 512 = 512 octets
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Identifiant de disque : 0xb89308df

Périphérique Amorce  Début        Fin      Blocs     Id  Système
/dev/sdb1              63   488375999   244187968+   7  HPFS/NTFS

D'après mes recherches, parted ne peut pas faire chevaucher une partition sur 2 disques. Je me trompe? Pourtant il me semble que ça n'est pas impossible avec le FAT.


Merci beaucoup de votre aide!
Dernière modification par Spook le mer. 11 août 2010, 17:48, modifié 1 fois.
Refuznik
Chu Ko Nu
Messages : 449
Inscription : dim. 22 nov. 2009, 17:06

Re: [partitionnement] étendre /home sur 2 disques dur [en cours]

Message par Refuznik »

Salut,

Je crois que t'es un peu emmêlés les pinceaux mais pas sur ce que tu crois :)
Tu as correctement partitionné tes disques sda et sdb.
Et tu as mis sdb en ntfs pour je suppose installé ton window (donc je te rassure ton / ne sert à rien ici) et ton second dd est vide actuellement.

Tu ne peux pas agrandir une partition sur deux disques et encore moins avec du fat et du ntfs. La seule façon de faire aurait était d'installer à la base tes partitions en LVM capable de gerer ça.

Perso. voilà comment je procéderais : je passerais directement le contenu du /home/nomd'utilisateur sur le nouveau dd à ton de voir si 250 Go te convient. J'efface l'ancien /home et j'agrandis / sur le 1er dd.

Attention perso. je procéderais via un livecd.

Je formate le second dd en ext3 ou ext4, je le nomme /home.
Je monte l'ancien /home et / sous un nom bidon genre test et copie (pas de couper) l'intégralité de l'ancien /home dans le nouveau.

Je modifie le fichier /etc/fstab si tes dd sont listé en dur (attention je pars d'un exemple bateau le tiens doit ressembler à ça en gros au pire tu regardes le tiens avant de faire la manip pour savoir à quoi il devra ressembler)
ex :
Ancien :
/dev/sda2/ / ext3 defaults 0 1
/dev/sda4 /home ext3 defaults 0 1
/dev/sda1 /boot ext3 defaults 0 1
/dev/sda3 swap swap defaults 0 0

Nouveau, (je commente toujours je n'efface pas la ligne) :
/dev/sda2/ / ext3 defaults 0 1
#/dev/sda4 /home ext3 defaults 0 1
/dev/sdb1 /home ext3 defaults 0 1
/dev/sda1 /boot ext3 defaults 0 1
/dev/sda3 swap swap defaults 0 0

Je redemarre et croise les doigts pour voir si ça fonctionne.
Si c'est pas bon pas de panique il te suffira de rebooter sur le livecd et remodifier en intervenant le # sur les deux lignes pour revenir à ton système normal.
Si c'est bon je passe au reste c'est à dire re live cd, tu efface l'ancien /home et tu redimensionnes / pour qu'il prenne toute la place.

Voilou en gros attention si tu n'es pas habitué à faire ce type de manipulation fais toi un test sans faire aucune action pour voir comme faire.
oktoberfest
Maître du Kyudo
Messages : 1855
Inscription : mer. 06 janv. 2010, 13:51
Localisation : Ried - Alsace - France

Re: [partitionnement] étendre /home sur 2 disques dur [en cours]

Message par oktoberfest »

Hello,

tu peux aussi faire l'opération sans redémarrer. En te connectant en root depuis un terminal, tu peux faire ce que t'as indiqué refuznik :

Code : Tout sélectionner

mkfs.ext3 /dev/sdb1
mkdir /new_home
mount /dev/sdb1 /new_home
cp -rp /home/* /new_home
umount /home
umount /new_home
mount /dev/sdb1 /home
Tu peux ensuite tester si tout fonctionne normalement. Il te restera à modifier ton /etc/fstab pour que /home soit monté sur /dev/sdb1 au prochain démarrage.

De toute façon /home n'est utilisé que par les utilisateurs, tu pourras toujours te connecter en root sur un terminal, même si le montage échoue.
La majorité des bugs se situe entre la chaise et le clavier...
Arrêtez de vous prendre la tête avec les partitions... passez au LVM
Refuznik
Chu Ko Nu
Messages : 449
Inscription : dim. 22 nov. 2009, 17:06

Re: [partitionnement] étendre /home sur 2 disques dur [en cours]

Message par Refuznik »

La méthode d'oktoberfest est tout aussi bonne voir plus rapide.
Par contre une fois que tout fonctionne, il vaut mieux utiliser le livecd pour agrandir ta partition /.
Spook
Hankyu
Messages : 16
Inscription : ven. 11 sept. 2009, 19:34

Re: [partitionnement] étendre /home sur 2 disques dur [en cours]

Message par Spook »

Merci pour la marche à suivre, j'arrive maintenant a comprendre ce que je dois faire, surtout le lien entre mount et fstab que je n'arrivais pas à saisir. (pas taper!! :oops: )

Du coup j'ai sauvegardé mon /home sur disque dur externe (au cas ou...).
J'ai remarqué que mon / se trouve à l'étroit, je vais en profiter pour l'agrandir après les manips pour /home.

Si jamais je me plante, j'ai fait un "pacman -Q" dans un fichier texte pour lister tous mes paquets installés. Pacman me permet-il d'installer les paquets listés (pacman -S liste.txt) par la suite?

@ oktoberfest: tu indiques la commande mkfs.ext3 mais je peux la remplacer par mkfs.ext4? J'imagine que oui en fait...
Spook
Hankyu
Messages : 16
Inscription : ven. 11 sept. 2009, 19:34

Re: [partitionnement] étendre /home sur 2 disques dur [en cours]

Message par Spook »

Je viens de faire les manips mais il y a un truc louche avec Fdisk: Après un mkfs.ext4 il m'indique que sdb1 est toujours en ntfs. Or d'après parted je suis bien en ext4.

Code : Tout sélectionner

[root@myhost spook]# fdisk -l

Disque /dev/sda: 250.1 Go, 250059350016 octets
255 têtes, 63 secteurs/piste, 30401 cylindres, total 488397168 secteurs
Unités = secteurs de 1 * 512 = 512 octets
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Identifiant de disque : 0x76556ab9

Périphérique Amorce  Début        Fin      Blocs     Id  Système
/dev/sda1   *           1      208844      104422   83  Linux
/dev/sda2          208845     8610839     4200997+  82  Linux swap / Solaris
/dev/sda3         8610840    49576589    20482875   83  Linux
/dev/sda4        49576590   488392064   219407737+  83  Linux

Disque /dev/sdb: 250.1 Go, 250059350016 octets
255 têtes, 63 secteurs/piste, 30401 cylindres, total 488397168 secteurs
Unités = secteurs de 1 * 512 = 512 octets
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Identifiant de disque : 0xb89308df

Périphérique Amorce  Début        Fin      Blocs     Id  Système
/dev/sdb1              63   488375999   244187968+   7  HPFS/NTFS
[root@myhost spook]# parted /dev/sdb1 print
Modèle: Inconnu (unknown)
Disque /dev/sdb1 : 250GB
Taille des secteurs (logiques/physiques): 512B/512B
Table de partitions : loop

Numéro  Début  Fin    Taille  Système de fichiers  Fanions
 1      0,00B  250GB  250GB   ext4

[root@myhost spook]# df
Sys. de fichiers      1K-blocs   Utilisé    Dispo. Uti% Monté sur                                                                                                                                                    
udev                     10240       192     10048   2% /dev
/dev/disk/by-uuid/5a1ac916-7c48-4e77-9eb5-6ab6eebeef05
                      20161204  18978792    158272 100% /
none                   1028564         0   1028564   0% /dev/shm
/dev/sda1               101105     10019     85865  11% /boot
/dev/sdb1            240348396 177655572  50483428  78% /home
Qui croire maintenant?
oktoberfest
Maître du Kyudo
Messages : 1855
Inscription : mer. 06 janv. 2010, 13:51
Localisation : Ried - Alsace - France

Re: [partitionnement] étendre /home sur 2 disques dur [en cours]

Message par oktoberfest »

Les deux ont raison... :)
- parted t'indique le file system de ta partition (qui est bien ext4 puisque tu l'as formaté en ext4)
- fdisk affiche le contenu d'un champ du mbr. Ce champ ne sert pas à grand chose (certaines applications vont en tenir compte et d'autres pas) et est modifiable.

Utilise cfdisk (cfdisk /dev/sdb) et tu pourras modifier le type de la partition afin qu'il colle à la réalité.
Je n'utilise pas parted mais j'imagine que tu peux aussi modifier ce champ avec parted.
La majorité des bugs se situe entre la chaise et le clavier...
Arrêtez de vous prendre la tête avec les partitions... passez au LVM
Spook
Hankyu
Messages : 16
Inscription : ven. 11 sept. 2009, 19:34

Re: [partitionnement] étendre /home sur 2 disques dur [en cours]

Message par Spook »

Ok, maintenant j'ai appliqué toutes les manip!

Je me retrouve donc maintenant avec mon /home sur le 2eme disque dur, et j'ai agrandi / a 40Go... ça devrait suffire maintenant!

Il est vrai que je n'ai pas pu étendre la partition sur 2 disque, mais avec fstab je me dis que peut attribuer un dossier de mon home sur l'espace libre du premier dd. Est-ce possible?
oktoberfest
Maître du Kyudo
Messages : 1855
Inscription : mer. 06 janv. 2010, 13:51
Localisation : Ried - Alsace - France

Re: [partitionnement] étendre /home sur 2 disques dur [en cours]

Message par oktoberfest »

Bien sur.

Par exemple tu créés un répertoire /home/extension et tu ajoutes la ligne suivante dans le /etc/fstab :
/dev/sdaX /home/extension ext3 defaults 0 1

Remplace sdaX par le numéro de la partition à utiliser. Assure-toi aussi que cette ligne est après la ligne qui définit /home. Ainsi le système montera d'abord /home et ensuite /home/extension.

Tu peux ensuite valider la modification en montant à la main avec :

Code : Tout sélectionner

mount /home/extension
Au prochain reboot la partition sera montée automatiquement.

L'autre solution c'est d'utiliser le LVM. C'est tellement pratique qu'une fois essayé on ne revient plus en arrière ! Plus de galère de nombre et de taille de partitions.
La majorité des bugs se situe entre la chaise et le clavier...
Arrêtez de vous prendre la tête avec les partitions... passez au LVM
Spook
Hankyu
Messages : 16
Inscription : ven. 11 sept. 2009, 19:34

Re: [partitionnement] étendre /home sur 2 disques dur [en cours]

Message par Spook »

Merci pour tes réponses Oktoberfest!

Je vais regarder le LVM et tacher d'y passer d'ici peu.

Je passe en résolu maintenant!
Répondre