Il problema
L'utente non è in grado di estendere il file system LVM che ha uno snapshot, errore "I volumi di origine dello snapshot possono essere ridimensionati solo se inattivi:provare lvchange -an “. L'utente ha creato uno snapshot su non root Volume LVM come mostrato di seguito.
# lvcreate --size 100M --snapshot --name testsnap /dev/testVG/testLV Logical volume "testsnap" created
# lvs -a -o+devices LV VG Attr LSize Origin Snap% Move Log Copy% Convert Devices LogVol00 VolGroup00 -wi-ao 7.91G /dev/vda2(0) LogVol01 VolGroup00 -wi-ao 1.97G /dev/vda2(253) testLV testVG owi-a- 1.00G /dev/vdb1(0) testsnap testVG swi-a- 100.00M testLV 0.01 /dev/vdb1(256)
# vgs -a VG #PV #LV #SN Attr VSize VFree VolGroup00 1 2 0 wz--n- 9.88G 0 testVG 2 2 1 wz--n- 3.99G 2.89G
Se l'utente tenta di estendere il filesystem con lo snapshot associato, genererebbe un errore come mostrato di seguito.
# lvextend -L +1G /dev/testVG/testLV Snapshot origin volumes can be resized only while inactive: try lvchange -an
La soluzione
Le LV con snapshot devono essere disattivate prima dell'estensione/ridimensionamento poiché il ridimensionamento online delle partizioni LVM con snapshot non è possibile. Segui i passaggi descritti di seguito:
1. Disattiva prima la partizione LVM e verifica la dimensione attuale del LV.
# lvchange -an /dev/testVG/testLV
# lvs -a -o+devices LV VG Attr LSize Origin Snap% Move Log Copy% Convert Devices LogVol00 VolGroup00 -wi-ao 7.91G /dev/vda2(0) LogVol01 VolGroup00 -wi-ao 1.97G /dev/vda2(253) testLV testVG owi--- 1.00G /dev/vdb1(0) testsnap testVG swi--- 100.00M testLV /dev/vdb1(256)
2. Ora esegui l'operazione di ridimensionamento e verifica nuovamente la dimensione LV.
# lvextend -L +1G /dev/testVG/testLV Extending logical volume testLV to 2.00 GB Logical volume testLV successfully resized
# lvs -a -o+devices LV VG Attr LSize Origin Snap% Move Log Copy% Convert Devices LogVol00 VolGroup00 -wi-ao 7.91G /dev/vda2(0) LogVol01 VolGroup00 -wi-ao 1.97G /dev/vda2(253) testLV testVG owi--- 2.00G /dev/vdb1(0) testLV testVG owi--- 2.00G /dev/vdb1(281) testLV testVG owi--- 2.00G /dev/vdc1(0) testsnap testVG swi--- 100.00M testLV /dev/vdb1(256)
3. Il passaggio successivo consiste nel ridimensionare lo snapshot LVM associato al LV.
# lvextend -L +100M /dev/testVG/testsnap Extending logical volume testsnap to 200.00 MB Logical volume testsnap successfully resized