GESTION DISQUE

De TwisterWiki

Ajout d'un disque à chaud

  • La commande suivante va permettre de lancer un scan sur tous les channels SATA et donc de reconnaitre un nouveau disque
echo "- - -" >/sys/class/scsi_host/hostX/scan

Supprimer un disque à chaud

  • ATTENTION Il faut être certain du disque que l'on retire
echo "1" >/sys/class/scsi_host/hostX/device/target0:0:0/0:0:0:0/delete

Relire la table des partitions

partprobe qui fait parti du paquet parted sous debian

trouver le UUID d'une partition

ls -l /dev/disk/by-uuid/
vol_id -u /dev/hdc1
tune2fs -l /dev/hdc1 | grep UUID

Mulitpath

  • connaitre le wwid d'un volume
multipath -l

Dec 26 16:05:20 | multipath.conf line 33, invalid keyword: path_checker
db2instance (360001440000000102048d9256bfc8b28) dm-0 EMC,Invista
size=15G features='1 queue_if_no_path' hwhandler='0' wp=rw
`-+- policy='round-robin 0' prio=1 status=active
  |- 1:0:0:2 sdc 8:32  active ready running
  |- 3:0:0:2 sdi 8:128 active ready running
  |- 1:0:1:2 sdf 8:80  active ready running
  `- 3:0:1:2 sdl 8:176 active ready running
db2indextext (360001440000000102048d9256bfc8b1e) dm-1 EMC,Invista
size=20G features='1 queue_if_no_path' hwhandler='0' wp=rw
`-+- policy='round-robin 0' prio=1 status=active
  |- 1:0:0:0 sda 8:0   active ready running
  |- 3:0:0:0 sdg 8:96  active ready running
  |- 1:0:1:0 sdd 8:48  active ready running
  `- 3:0:1:0 sdj 8:144 active ready running
db2data (360001440000000102048d9256bfc8b23) dm-2 EMC,Invista
size=600G features='1 queue_if_no_path' hwhandler='0' wp=rw
`-+- policy='round-robin 0' prio=1 status=active
  |- 1:0:0:1 sdb 8:16  active ready running
  |- 3:0:0:1 sdh 8:112 active ready running
  |- 1:0:1:1 sde 8:64  active ready running
  `- 3:0:1:1 sdk 8:160 active ready running

Augmenter la taille d'un disque

  • parted /dev/sda resizepart 2
  • resize2fs /dev/sda2

LVM

LVM c'est quoi ?

  • le LVM est une gestion des disques par des volumes logiques et modifiable à chaud

il y a trois termes à connaître

PV : Les disques durs, partitions de disques durs, volumes RAID ou unités logiques provenant d'un SAN forment des « volumes physiques » (physical volumes ou PV). 
VG : On concatène les volumes physiques dans des « groupes de volumes » (volume groups ou VG). Ces VG sont équivalents à des pseudo-disques-durs.
LV : Des « volumes logiques » (logical volumes ou LV) sont alors découpés dans les groupes de volumes, puis formatés et montés dans des systèmes de fichiers ou utilisés en tant que raw devices.
Les LV sont équivalents à des pseudo-partitions. 
  • schema explicatif

les commandes utiles

  • vgscan : scan les partitions LVM
root@debian:~# vgscan
 Reading all physical volumes.  This may take a while...
 Found volume group "VG_home" using metadata type lvm2
 Found volume group "VG_root" using metadata type lvm2
  • vgchange -ay <monvolumeLVM> : permet d'activer la partition LVM voulue
  • lvs : affiche le nom logique de la partition LVM
root@debian:~# lvs
 LV   VG      Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
 home VG_home -wi-ao---- <2,96g                                                    
 root VG_root -wi-ao---- 11,17g
  • vgdisplay: affiche des informations sur les VG
root@debian:~# vgdisplay
 --- Volume group ---
 VG Name               VG_home
 System ID             
 Format                lvm2
 Metadata Areas        2
 Metadata Sequence No  5
 VG Access             read/write
 VG Status             resizable
 MAX LV                0
 Cur LV                1
 Open LV               1
 Max PV                0
 Cur PV                2
 Act PV                2
 VG Size               10,95 GiB
 PE Size               4,00 MiB
 Total PE              2804
 Alloc PE / Size       2804 / 10,95 GiB
 Free  PE / Size       0 / 0   
 VG UUID               1CWo34-pSCo-xm7c-3oDe-Bm1g-ssZv-lc6l3l
  
 --- Volume group ---
 VG Name               VG_root
 System ID             
 Format                lvm2
 Metadata Areas        1
 Metadata Sequence No  2
 VG Access             read/write
 VG Status             resizable
 MAX LV                0
 Cur LV                1
 Open LV               1
 Max PV                0
 Cur PV                1
 Act PV                1
 VG Size               11,17 GiB
 PE Size               4,00 MiB
 Total PE              2860
 Alloc PE / Size       2860 / 11,17 GiB
 Free  PE / Size       0 / 0   
 VG UUID               0mBEyB-ulvn-uAlV-PLgX-Ukj0-Nyou-P75k1j
  • lvdisplay : affiche des informations sur les LV
root@debian:~# lvdisplay 
 --- Logical volume ---
 LV Path                /dev/lv_home/home
 LV Name                home
 VG Name                lv_home
 LV UUID                ksr3xP-1TMw-HmYl-i9bn-sbaV-D4xj-JEgQut
 LV Write Access        read/write
 LV Creation host, time debian, 2020-06-25 11:56:28 +0200
 LV Status              available
 # open                 1
 LV Size                10,95 GiB
 Current LE             2804
 Segments               2
 Allocation             inherit
 Read ahead sectors     auto
 - currently set to     256
 Block device           254:1
  
 --- Logical volume ---
 LV Path                /dev/lv_root/root
 LV Name                root
 VG Name                lv_root
 LV UUID                ebhyTn-QKjr-RZoc-AJob-o7FM-CidW-UMNtsw
 LV Write Access        read/write
 LV Creation host, time debian, 2020-06-25 11:56:42 +0200
 LV Status              available
 # open                 1
 LV Size                11,17 GiB
 Current LE             2860
 Segments               1
 Allocation             inherit
 Read ahead sectors     auto
 - currently set to     256
 Block device           254:0

ajouter de l'espace

  • comment ajouter de l'espace à un volume LVM

il faut en premier lieu augmenter la taille du disque

  • exemple on ajoute une partition /dev/sda5
pvcreate /dev/sda5
  • on agrandit le VG
vgextend monVolumeGroup /dev/sda5
  • ajouter l'espace au volumeLogique
 lvresize --size +500G /dev/mapper/monVolumeGroup-monLogicalVolume
  • extension du VolumeLogique sur la prtition ajoutée
lvextend /dev/mapper/monVolumeGroup-monLogicalVolume /dev/sda5
  • agrandissement du file system
resize2fs /dev/mapper/monVolumeGroup-monLogicalVolume


Exemple d'ajout d'espace

  • nous avons un disque de 16Go avec 2 VG (VG_root et VG_home) et une swap
    • /dev/sda1 : swap
    • /dev/mapper/VG_root-root : 11,2 GiB (/dev/sda2)
    • /dev/mapper/VG_home-home : 3 GiB (/dev/sda5)
root@debian:~# fdisk -l
Disque /dev/sda : 16 GiB, 17179869184 octets, 33554432 secteurs
Modèle de disque : VBOX HARDDISK   
Unités : secteur de 1 × 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets
Type d'étiquette de disque : dos
Identifiant de disque : 0xd741f2c0

Périphérique Amorçage    Début      Fin Secteurs Taille Id Type
/dev/sda1    *            2048  3905535  3903488   1,9G 82 partition d'échange Linux / Solaris
/dev/sda2              3905536 27342847 23437312  11,2G 8e LVM Linux
/dev/sda3             27344894 33552383  6207490     3G  5 Étendue
/dev/sda5             27344896 33552383  6207488     3G 8e LVM Linux

Disque /dev/mapper/VG_root-root : 11,2 GiB, 11995709440 octets, 23429120 secteurs
Unités : secteur de 1 × 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets
 
Disque /dev/mapper/VG_home-home : 3 GiB, 3175088128 octets, 6201344 secteurs
Unités : secteur de 1 × 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets

  • Nous avons ajouter un second disque de 8Go pour étendre /home (sdb)
root@debian:~# fdisk -l
Disque /dev/sda : 16 GiB, 17179869184 octets, 33554432 secteurs
Modèle de disque : VBOX HARDDISK   
Unités : secteur de 1 × 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets
Type d'étiquette de disque : dos
Identifiant de disque : 0xd741f2c0

Périphérique Amorçage    Début      Fin Secteurs Taille Id Type
/dev/sda1    *            2048  3905535  3903488   1,9G 82 partition d'échange Linux / Solaris
/dev/sda2              3905536 27342847 23437312  11,2G 8e LVM Linux
/dev/sda3             27344894 33552383  6207490     3G  5 Étendue
/dev/sda5             27344896 33552383  6207488     3G 8e LVM Linux

Disque /dev/sdb : 8 GiB, 8589934592 octets, 16777216 secteurs
Modèle de disque : VBOX HARDDISK   
Unités : secteur de 1 × 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets

Disque /dev/mapper/VG_root-root : 11,2 GiB, 11995709440 octets, 23429120 secteurs
Unités : secteur de 1 × 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets

Disque /dev/mapper/VG_home-home : 3 GiB, 3175088128 octets, 6201344 secteurs
Unités : secteur de 1 × 512 = 512 octets
Taille de secteur (logique / physique) : 512 octets / 512 octets
taille d'E/S (minimale / optimale) : 512 octets / 512 octets

Création de la partition sdb1

  • on créer une partition primaire classique avec l'outils fdisk ou cfdisk
  • on crée un volume physique lvm avec la commande pvcreate
root@debian:~# pvcreate /dev/sdb1
 Physical volume "/dev/sdb1" successfully created.

root@debian:~# pvs
 PV         VG      Fmt  Attr PSize  PFree 
 /dev/sda2  VG_root lvm2 a--  11,17g     0 
 /dev/sda5  VG_home lvm2 a--  <2,96g     0 
 /dev/sdb1          lvm2 ---  <8,00g <8,00g
  • on ajoute la partition /dev/sdb1 au volume group lv_home
root@debian:~# vgextend VG_home /dev/sdb1
 Volume group "VG_home" successfully extended
  • on agrandit la taille de /home
root@debian:~# lvresize --size +8G /dev/mapper/VG_home-home
 Insufficient free space: 2048 extents needed, but only 2047 available

root@debian:~# lvresize  --extents +2047 /dev/mapper/VG_home-home
 Size of logical volume VG_home/home changed from <2,96 GiB (757 extents) to 10,95 GiB (2804 extents).
 Logical volume VG_home/home successfully resized.
  • on voit que le volume groupe à été augmenté de 8Go
root@debian:~# lvs
 LV   VG      Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
 home VG_home -wi-ao---- 10,95g                                                    
 root VG_root -wi-ao---- 11,17g
  • dernière étape on augmente la taille du file_system sur le LV
root@debian:~# resize2fs /dev/mapper/VG_home-home
resize2fs 1.44.5 (15-Dec-2018)
Filesystem at /dev/mapper/VG_home-home is mounted on /home; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 2
The filesystem on /dev/mapper/VG_home-home is now 2871296 (4k) blocks long.

root@debian:~# df -h
Sys. de fichiers         Taille Utilisé Dispo Uti% Monté sur
udev                       983M       0  983M   0% /dev
tmpfs                      200M    3,0M  197M   2% /run
/dev/mapper/VG_root-root    11G    1,5G  9,0G  14% /
tmpfs                      998M       0  998M   0% /dev/shm
tmpfs                      5,0M       0  5,0M   0% /run/lock
tmpfs                      998M       0  998M   0% /sys/fs/cgroup
/dev/mapper/VG_home-home    11G     15M   11G   1% /home
tmpfs                      200M       0  200M   0% /run/user/0