« GESTION DISQUE » : différence entre les versions

De TwisterWiki
 
(15 versions intermédiaires par le même utilisateur non affichées)
Ligne 49 : Ligne 49 :
* resize2fs /dev/sda2
* 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.
Scan pour ajout de disque à chaud :


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.
for i in /sys/class/scsi_host/host*/scan ; do echo '- - -' > $i ; done
Les LV sont équivalents à des pseudo-partitions.
Augmentation de la taille d'une partition :


[[image: LVM-Diagram.png]]
for i in /sys/class/scsi_device/*/device/rescan; do echo 1 > $i;done


=== les commandes utiles ===
* vgscan : scan les partitions LVM
root@debian:~# vgscan
  Reading all physical volumes.  This may take a while...
  Found volume group "lv_home" using metadata type lvm2
  Found volume group "lv_root" using metadata type lvm2


* vgchange -ay <monvolumeLVM> :  permet d'activer la partition LVM voulue


* lvs : affiche le nom logique de la partition LVM
/sbin/parted ---pretend-input-tty /dev/${DEV}<<EOF
root@debian:~# lvs
unit
  LV  VG      Attr      LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
%
  home lv_home -wi-ao---- <2,96g                                                   
resizepart
  root lv_root -wi-ao---- 11,17g
${PART}
100
Quit
EOF


=== 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
/sbin/parted ---pretend-input-tty /dev/${DEV}<<EOF
lvextend /dev/mapper/monVolumeGroup-monLogicalVolume /dev/sda5
unit
%
resizepart
${PART}
100
Quit
EOF


* agrandissement du file system
resize2fs /dev/mapper/monVolumeGroup-monLogicalVolume




=== Exemple d'ajout d'espace ===
* nous avons un disque de 16Go avec 2 LVM et une swap
** /dev/sda1 : swap
** /dev/mapper/lv_root-root : 11,2 GiB (/dev/sda2)
** /dev/mapper/lv_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/lv_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/lv_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/lv_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/lv_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 ====
/sbin/parted ---pretend-input-tty /dev/${DEV} unit % resizepart ${PART} Yes 100%
* 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  lv_root lvm2 a--  11,17g    0
  /dev/sda5  lv_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 lv_home /dev/sdb1
  Volume group "lv_home" successfully extended
 
* on agrandit la taille de /home
root@debian:~# lvresize --size +8G /dev/mapper/lv_home-home
  Insufficient free space: 2048 extents needed, but only 2047 available
root@debian:~# lvresize  --extents +2047 /dev/mapper/lv_home-home
  Size of logical volume lv_home/home changed from <2,96 GiB (757 extents) to 10,95 GiB (2804 extents).
  Logical volume lv_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 lv_home -wi-ao---- 10,95g                                                   
  root lv_root -wi-ao---- 11,17g

Dernière version du 22 novembre 2022 à 16:26

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


Scan pour ajout de disque à chaud :

for i in /sys/class/scsi_host/host*/scan ; do echo '- - -' > $i ; done Augmentation de la taille d'une partition :

for i in /sys/class/scsi_device/*/device/rescan; do echo 1 > $i;done


/sbin/parted ---pretend-input-tty /dev/${DEV}<<EOF unit % resizepart ${PART} 100 Quit EOF


/sbin/parted ---pretend-input-tty /dev/${DEV}<<EOF unit % resizepart ${PART} 100 Quit EOF



/sbin/parted ---pretend-input-tty /dev/${DEV} unit % resizepart ${PART} Yes 100%