Help Partition Linux LVM (Centos)

Bonsoir je suis clairement confronté à un manque de connaissance sur les partitions LVM linux.

Mon problème :
-J’ai commandé un serveur dédié chez 1&1 (100 Go d’espace disque)
-J’ai choisi CentOS 5 (64 bits) comme os
-J’ai installé tous ce dont j’avais besoin (Codendi pour les connaisseurs)

Puis pour checker mon espace disque j’ai lancé df -h :


Filesystem            Size  Used Avail Use% Mounted on
/dev/xvda1            3.7G  457M  3.3G  13% /
/dev/mapper/vg00-usr  4.0G  1.1G  3.0G  26% /usr
/dev/mapper/vg00-var  4.0G  232M  3.8G   6% /var
/dev/mapper/vg00-home
                      4.0G  4.3M  4.0G   1% /home
none                  512M   37M  476M   8% /tmp

On a en gros 16Go… Donc je me suis dit qu’on se moquait de moi lol, et juste pour vérifier j’ai lancé un fdisk -l :

Disk /dev/xvda: 100.0 GB, 100000595968 bytes
255 heads, 63 sectors/track, 12157 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

    Device Boot      Start         End      Blocks   Id  System
/dev/xvda1               1         487     3911796   83  Linux
/dev/xvda2             488         731     1959930   82  Linux swap / Solaris
/dev/xvda3             732       12157    91779345   8e  Linux LVM

Et on voit bien les 100Go… Par contre Linux LVM, à priori de ce que j’ai compris ici c’est que l’on peut attribuer dynamiquement de l’espace disque, par contre pour cela il faut démonter les partitions, démonter la racine / :o

Ma question est comment attribuer les Go non utilisé à un nouveau point de montage, ou à une partition déjà existante ?

Je tiens à préciser que je ne peux pas me permettre de perdre ce qu’il y a sur mon serveur.:frowning:

Edité le 18/12/2010 à 10:14

il y a 2 cas:

  • la création d’une nouvelle partition ;
  • l’extension d’une partition existante .

1- La création de partition :
tu dois utiliser lvcreate ( voir le man ) et créer une nouvelle partition dans vg00. Tu vas obtenir un device du genre /dev/mapper/vg00-trucmuche
Tu peux ensuite manipuler cela comme une autre partition : la formater ( mkfs.ext4 /dev/mapper/vg00-trucmuche ) , la monter ( mount /dev/mapper/vg00-trucmuche qqpart )
2- l’extension de partition: a priori, il faut démonter la partition car tu vas modifier le systeme de fichiers. La, il faut utiliser lvextend et resize2fs pour augmenter la taille de la partition , et ensuite, dire au FS d’occuper toute la place disponible.

Merci de ta réponse :slight_smile: Mais j’aimerais augmenter la taille de /, usr, var et home.

Voici ce que j’obtiens avec mount :

/dev/xvda1 on / type ext3 (rw)
none on /proc type proc (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
/dev/mapper/vg00-usr on /usr type xfs (rw)
/dev/mapper/vg00-var on /var type xfs (rw,usrquota)
/dev/mapper/vg00-home on /home type xfs (rw,usrquota)
none on /tmp type tmpfs (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)

Le problème s’est que usr, var et home sont indémontable (sans parler de la racine /), donc il n’y a aucune solution pou augmenter la taille de ses partitions ? Puis-je remonter les montages usr, var, home ailleurs ?
un script au démarrage ?

J’ai regardé fstab par curiosité :

/dev/xvda1      /               ext3    defaults        1 1
/dev/xvda2      none            swap    sw
/dev/vg00/usr   /usr            xfs     defaults        0 2
/dev/vg00/var   /var            xfs     defaults,usrquota       0 2
/dev/vg00/home  /home           xfs     defaults,usrquota       0 2
devpts          /dev/pts        devpts  gid=5,mode=620  0 0
none            /proc           proc    defaults        0 0
none            /tmp    tmpfs   defaults        0 0

N’y a t’il une modification possible à faire ici ? Puisque au démarrage les partitions usr, home, var sont montés à partir de vg00… qui est relié à /dev/xvda3 la partition lvm, on doit pouvoir changer la taille quelque part non ?


Bon enfaite j'ai tenté sans démonté une partition, et voila ce que cela m'a donné :)

lvextend -L+1024M /dev/vg00/var 
Extending logical volume var to 5.00 GB
Logical volume var successfully resized

Puis pour que la partition prenne toute la place disponible, il faut utiliser resize2fs (pour ext3, ext2), mais dans mon cas se sont des partitions xfs, il faut alors utilisé xfs_growfs :


xfs_growfs /dev/vg00/var
meta-data=/dev/vg00/var          isize=256    agcount=4, agsize=262144 blks
         =                       sectsz=512   attr=2
data     =                       bsize=4096   blocks=1048576, imaxpct=25
         =                       sunit=0      swidth=0 blks, unwritten=1
naming   =version 2              bsize=4096  
log      =internal               bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=0
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 1048576 to 2590720

vraiment pratique enfaite du coup, mais j’avais pas osé jusqu’à maintenant…Me reste le problème de la racine mais la je penses rien pouvoir faire car ce n’est pas une partition LVM mais Linux…
Edité le 18/12/2010 à 13:32

Tant mieux si ca a fonctionné comme ça, j’avais pas vu que tu utilisais autre chose qu’extx.
Pour /, en dehors de lvm , ca semble mort …
Mais avec /usr sur une partition dédiée, je ne vois pas l’interet d’augmenter / … Au pire, avec des liens symboliques , tu dois pouvoir rediriger des dossiers que tu voudrais créer dans / . et pour tmp, il existe tmpfs .

Effectivement pas vraiment besoin d’augmenter / si on peut augmenter le reste :slight_smile:

Bon et bien plus vraiment de problème enfaite :slight_smile:

Bonjour,
Merci benkil pour ce tuto, ca me change la vie ! j’ai donc réussi à passer ma /var de 4Go à 60Go, parfait :slight_smile:
C’est dingue de se dire que chez 1&1 on achète 100Go d’espace disque et par défaut ils vous allouent 3.9Go par partition… mais bon ^^

Une petite info complémentaire pour les utilisateurs de Plesk 10 :
Si vous avez le module “santé du serveur” d’installé, il ne prend pas correctement en compte les changements qui viennent d’être effectués. Pour y remédier il suffit de lancer (en root) la commande :

/usr/local/psa/bin/sw-engine-pleskrun /usr/local/psa/admin/plib/scripts/setup-health-monitor.php

source
[Photo supprimée]

Voilà, j’espère que ça vous aidera !
Edité le 26/12/2010 à 15:03