7. Diviser un groupe de volumes

Supposons que nous devons rajouter le nouveau groupe d'utilisateurs « design » au système. Un moyen de le gérer est d'ajouter un groupe de volumes au système pour y mettre leurs données. Ici, nous n'avons pas de nouveau disque mais beaucoup d'espace libre sur les disques existants qui peut être réalloué.

7.1. Déterminer l'espace libre

# pvscan 
pvscan -- reading all physical volumes (this may take a while...)
pvscan -- ACTIVE   PV "/dev/sda"  of VG "dev"   [1.95 GB / 0 free]
pvscan -- ACTIVE   PV "/dev/sdb"  of VG "sales" [1.95 GB / 1.27 GB free]
pvscan -- ACTIVE   PV "/dev/sdc"  of VG "ops"   [1.95 GB / 564 MB free]
pvscan -- ACTIVE   PV "/dev/sdd"  of VG "dev"   [1.95 GB / 0 free]
pvscan -- ACTIVE   PV "/dev/sde"  of VG "ops"   [1.95 GB / 1.9 GB free]
pvscan -- ACTIVE   PV "/dev/sdf"  of VG "dev"   [1.95 GB / 1.33 GB free]
pvscan -- ACTIVE   PV "/dev/sdg1" of VG "ops"   [996 MB / 432 MB free]
pvscan -- ACTIVE   PV "/dev/sdg2" of VG "dev"   [996 MB / 632 MB free]
pvscan -- total: 8 [13.67 GB] / in use: 8 [13.67 GB] / in no VG: 0 [0]

Nous décidons de réallouer /dev/sdg1 et /dev/sdg2 à « design ». Il faut commencer par déplacer tous les extents physiques dans des espaces libres d'autres volumes (dans notre cas /dev/sdf pour le VG dev et /dev/sde pour ops).

7.2. Déplacer les données des disques à réutiliser

De l'espace est toujours utilisé sur les volumes choisis, il faut donc déplacer les données autre part.

Déplacez tous les extents physiques utilisés de /dev/sdg1 vers /dev/sde et de /dev/sdg2 vers /dev/sdf.

# pvmove /dev/sdg1 /dev/sde
pvmove -- moving physical extents in active volume group "ops"
pvmove -- WARNING: moving of active logical volumes may cause data loss!
pvmove -- do you want to continue? [y/n] y
pvmove -- doing automatic backup of volume group "ops"
pvmove -- 141 extents of physical volume "/dev/sdg1" successfully moved

# pvmove /dev/sdg2 /dev/sdf
pvmove -- moving physical extents in active volume group "dev"
pvmove -- WARNING: moving of active logical volumes may cause data loss!
pvmove -- do you want to continue? [y/n] y
pvmove -- doing automatic backup of volume group "dev"
pvmove -- 91 extents of physical volume "/dev/sdg2" successfully moved

7.3. Créer un nouveau groupe de volumes

Maintenant, séparez /dev/sdg2 de dev et ajoutez-le à un nouveau groupe appelé « design ». Il est possible de faire cela avec vgreduce et vgcreate, mais vgsplit combine les deux commandes.

# vgsplit dev design /dev/sdg2
vgsplit -- doing automatic backup of volume group "dev"
vgsplit -- doing automatic backup of volume group "design"
vgsplit -- volume group "dev" successfully split into "dev" and "design"

7.4. Enlever le volume restant

Ensuite, enlevez /dev/sdg1 de ops et ajoutez-le dans design.

# vgreduce ops /dev/sdg1
vgreduce -- doing automatic backup of volume group "ops"
vgreduce -- volume group "ops" successfully reduced by physical volume:
vgreduce -- /dev/sdg1

# vgextend design /dev/sdg1
vgextend -- INFO: maximum logical volume size is 255.99 Gigabyte
vgextend -- doing automatic backup of volume group "design"
vgextend -- volume group "design" successfully extended

7.5. Créer le nouveau volume logique

Maintenant, créez un volume logique. Au lieu d'allouer tout l'espace disponible, gardez un peu d'espace de réserve au cas où vous en auriez besoin ailleurs.

# lvcreate -L750M -n users design
lvcreate -- rounding up size to physical extent boundary "752 MB"
lvcreate -- doing automatic backup of "design"
lvcreate -- logical volume "/dev/design/users" successfully created

7.6. Créez un système de fichiers sur le volume

# mke2fs /dev/design/users
mke2fs 1.18, 11-Nov-1999 for EXT2 FS 0.5b, 95/08/09
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
96384 inodes, 192512 blocks
9625 blocks (5.00<!-- ) reserved for the super user
First data block=0
6 block groups
32768 blocks per group, 32768 fragments per group
16064 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840

Writing inode tables: done
Writing superblocks and filesystem accounting information: done

7.7. Montez le nouveau volume

# mkdir -p /mnt/design/users
# mount /dev/design/users /mnt/design/users/

C'est aussi une bonne d'idée d'ajouter une entrée dans /etc/fstab pour ce système de fichiers :

/dev/design/user /mnt/design/users   ext2    defaults        1 2

Hosting by: Hurra Communications GmbH
Generated: 2007-01-26 18:01:27