前几天学会了给lvm动态扩容,有次遇到缩容操作,也照方抓药,却惨遭失败。还好是开发机,默默重装。
问题在哪里呢?搜索了一些资料,在国外的一些社区提到:扩容时,先 lvextend 再 resize2fs ,缩减时先 resize2fs 再 lvreduce。
具体操作了一下,按这里的步骤,可以让lvm2+ext2正确缩减:
http://www.microhowto.info/howto/reduce_the_size_of_an_ext2_ext3_or_ext4_filesystem.html
具体步骤呢,以我的开发机为例,这里有一个 /dev/dumpling/storage 设备,挂在 /storage 上,它现在的容量是 8G,我希望它缩减到 4G。
首先卸载设备:
umount /storage
然后执行 fsck:
fsck -f /dev/dumpling/storage
再 resize2fs:
resize2fs /dev/dumpling/storage 4G
再 lvresize:
lvresize --size 4G /dev/dumpling/storage