PowerPath : Extension d’un système de fichiers Linux même s’il n’y a pas de table de partition sur une LUN PowerPath

Résumé: PowerPath : Comment développer un système de fichiers Linux même s’il n’y a pas de table de partition sur une LUN PowerPath.

Cet article concerne Cet article ne concerne pas Cet article n’est associé à aucun produit spécifique. Toutes les versions du produit ne sont pas identifiées dans cet article.

Symptômes

Le client a essayé d’étendre deux LUN SAN du système de fichiers Linux LVM natifs mappés dans Linux LVM natif, mais il a échoué.

Un VNX5500 qui dessert plusieurs LUN sur des serveurs PowerPath 5.3 SP 1 (build 111) vers des serveurs RHEL5 et RHEL6, exécutant Linux 2.6.18-128.el5

Le client avait déjà augmenté la capacité utilisateur pour ces deux LUN sur le VNX.
La capacité précédente était de 82 Go et 60 Go et a été étendue à 136 Go et 90 Go, respectivement.

Procédure suivie par le client :

  1. lvdisplay -v /dev/[volgroup]/[logicalvolume] - pour identifier l’appareil physique
  2. fdisk -l /dev/[device] - pour vérifier la table de partition
  3. df -h /[mountpoint] - pour vérifier la capacité existante
  4. grep mpt /sys/class/scsi_host/host?/proc_name - pour identifier le bus SCSI à relancer
  5. echo "- - -" > /sys/class/scsi_host/hostX/scan - pour relancer l’analyse de l’appareil 'hostX'
  6. pvs /dev/[device] - pour vérifier la taille du volume physique
  7. pvresize /dev/[device] - pour augmenter le volume physique jusqu’à la nouvelle taille de LUN
  8. pvs /dev/[device] - pour vérifier la nouvelle taille du volume physique
  9. vgscan - pour reconstruire les caches des groupes de volumes
  10. vgs [volgroup] - Pour vérifier les informations sur les groupes de volumes
  11. lvextend -l +100%FREE /dev/[volgroup]/[logicalvolume] - d’étendre le volume logique pour remplir le disque
  12. resize2fs /dev/[volgroup]/[logicalvolume] - pour redimensionner le système de fichiers sur le volume logique
  13. df -h /[mountpoint] - pour vérifier la nouvelle capacité

Les LUN montées PowerPath ne semblent pas disposer d’une table de partition valide :

fdisk -l /dev/emcpowercb

Disk /dev/emcpowercb: 91.2 GB, 91268055040 bytes
255 heads, 63 sectors/track, 11096 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

Disk /dev/emcpowercb doesn't contain a valid partition table

Les 512 premiers octets de /dev/emcpowercb sont les suivants :

 hexdump -Cn512 /dev/emcpowercb
00000000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
*
00000200

Pourtant, les LUN sont montées et accessibles au système (par exemple) :

 df -h /DCCDBUNIX/data01
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg2dccdbnx2pd01-lvdccdbnxd01
84G 67G 13G 84% /DCCDBUNIX/data01

L’exemple ci-dessus concerne la LUN mappée PowerPath suivante :

 vgdisplay -v vg2dccdbnx2pd01
Using volume group(s) on command line
Finding volume group "vg2dccdbnx2pd01"
--- Volume group ---
VG Name vg2dccdbnx2pd01

--- Logical volume ---
LV Name /dev/vg2dccdbnx2pd01/lvdccdbnxd01
VG Name vg2dccdbnx2pd01
LV Size 85.00 GB
Block device 253:9

--- Physical volumes ---
PV Name /dev/emcpowercb
Total PE / Free PE 21759 / 0

 

Cause

Vous essayez d’étendre le système de fichiers Linux même s’il n’existe aucune table de partition sur la LUN PowerPath ?

 

Résolution

Selon Red Hat, l’utilisation de la commande pour afficher le volume physique est correcte.

pvs -o+pv_used /dev/[pseudo_device]

Ensuite, lors de l’ajout d’un disque à un système et de l’extension du groupe de volumes dans une bande sur le disque ajouté.

Pour afficher l’espace disque brut inutilisé lors de l’extension de la LUN d’origine.

pvs -av /dev/[pseudo_device]

En plus de l’analyse de l’appareil à partir de l’hôte, les commandes blockdev pour tous les appareils natifs de PowerPath ont fonctionné comme prévu.

blockdev --rereadpt /dev/sds
blockdev --rereadpt /dev/sdbr
blockdev --rereadpt /dev/sddq

La commande ci-dessous, qui renvoyait les caractères génériques à /sys/class/scsi_host/hostX/scan, de sorte que l’utilisation de l’hôte pour relancer l’analyse de l’adaptateur HBA dans son intégralité afin d’actualiser la LUN, NE FONCTIONNAIT PAS.

echo "1" >/sys/block/sds/device/rescan
echo "1" >/sys/block/sdbr/device/rescan
echo "1" >/sys/block/sddq/device/rescan

Ensuite, l’extension de la LUN dans Unisphere comme dernière étape doit être en root pour que cela fonctionne.

# powermt display dev=emcpowerai
Pseudo name=emcpowerai
VNX ID=APMXXXXXXXXXXX [xxxxx]
Logical device ID=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx [xxxxx_dccdbnx2i02_RV]
state=alive; policy=CLAROpt; queued-IOs=0
Owner: default=SP A, current=SP A Array failover mode: 4
==============================================================================
--------------- Host --------------- - Stor - -- I/O Path -- -- Stats ---
### HW Path I/O Paths Interf. Mode State Q-IOs Errors
==============================================================================
3 lpfc sds SP A5 active alive 0 0
3 lpfc sdbr SP B5 active alive 0 0
4 lpfc sddq SP A4 active alive 0 0


 pvs -o+pv_used,dev_size |grep /dev/emcpowerai
/dev/emcpowerai vg2dccdbnx2qi01 lvm2 a-- 60.00G 0 60.00G 60.00G

 umount /DCCDBUNIX/index01

 blockdev --rereadpt /dev/sds
 blockdev --rereadpt /dev/sdbr
 blockdev --rereadpt /dev/sddq

 pvs -o+pv_used,dev_size |grep /dev/emcpowerai
/dev/emcpowerai vg2dccdbnx2qi01 lvm2 a-- 60.00G 0 60.00G 92.00G

 pvresize /dev/emcpowerai
Physical volume "/dev/emcpowerai" changed
1 physical volume(s) resized / 0 physical volume(s) not resized

 pvs -o+pv_used,dev_size |grep /dev/emcpowerai
/dev/emcpowerai vg2dccdbnx2qi01 lvm2 a-- 92.00G 32.00G 60.00G 92.00G

 pvscan |grep '/dev/emcpowerai'
PV /dev/emcpowerai VG vg2dccdbnx2qi01 lvm2 [92.00 GB / 32.00 GB free]

 vgscan |grep 'vg2dccdbnx2qi01'
Found volume group "vg2dccdbnx2qi01" using metadata type lvm2

 vgs |grep vg2dccdbnx2qi01
vg2dccdbnx2qi01 1 1 0 wz--n- 92.00G 32.00G

 lvextend -l +100%FREE /dev/vg2dccdbnx2qi01/lvdccdbnxi01

 lvextend -l +100%FREE /dev/vg2dccdbnx2qi01/lvdccdbnxi01
Extending logical volume lvdccdbnxi01 to 92.00 GB
Logical volume lvdccdbnxi01 successfully resized

 resize2fs /dev/vg2dccdbnx2qi01/lvdccdbnxi01
resize2fs 1.39 (29-May-2006)
Please run 'e2fsck -f /dev/vg2dccdbnx2qi01/lvdccdbnxi01' first.

e2fsck -f /dev/vg2dccdbnx2qi01/lvdccdbnxi01
e2fsck 1.39 (29-May-2006)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/vg2dccdbnx2qi01/lvdccdbnxi01: 43/7864320 files (16.3% non-contiguous), 12034277/15727616 blocks

 resize2fs /dev/vg2dccdbnx2qi01/lvdccdbnxi01
resize2fs 1.39 (29-May-2006)
Resizing the filesystem on /dev/vg2dccdbnx2qi01/lvdccdbnxi01 to 24116224 (4k) blocks.
The filesystem on /dev/vg2dccdbnx2qi01/lvdccdbnxi01 is now 24116224 blocks long.

 mount /DCCDBUNIX/index01

 df -h
/dev/mapper/vg2dccdbnx2qi01-lvdccdbnxi01
91G 45G 41G 53% /DCCDBUNIX/index01

Une autre option consiste à redémarrer, ce qui fonctionne également, car cela crée une nouvelle analyse complète.

 

Produits concernés

PowerPath for Linux

Produits

PowerPath for Linux
Propriétés de l’article
Numéro d’article: 000064342
Type d’article: Solution
Dernière modification: 20 oct. 2025
Version:  5
Trouvez des réponses à vos questions auprès d’autres utilisateurs Dell
Services de support
Vérifiez si votre appareil est couvert par les services de support.