LV を小さくする計画の場合は、最初にファイルシステムのサイズを変更してから、lvreduce コマンドを使用して LV のサイズを小さくする必要があります。これは、最初に LV を縮小すると、システムが新しい LV サイズを超えてファイルシステムにアクセスできなくなるためです。
LV のサイズを縮小するには、5 つの重要な手順があり、順番に実行する必要があります。そうしないと、手順が失敗し、ファイルシステムが損傷する可能性があります。
1. umount コマンドでマウント ポイントまたは論理ボリュームをアンマウントします。
# umount /mount/point
2. fsck にファイルシステムのチェックを強制します。
# fsck -f /dev/mapper/VG0-lv0
3. resize2fs を使用してファイルシステムを縮小します。
# resize2fs /dev/mapper/VG0-lv0 24M
4. lvreduce を使用して、論理ボリュームのサイズを縮小します。
# lvreduce -L -40M /dev/mapper/VG0-lv0
5. mount コマンドでファイルシステムをマウントします。
# mount /dev/mapper/VG0-lv0 /mount/point
# df -hP /mount/point
lvreduce コマンドの例
1. 論理ボリュームを減らすには:
# lvreduce -l [-]LogicalExtentsNumber[%{VG|LV|FREE|ORIGIN}]
2. udev 同期を無効にするには:
# lvreduce --noudevsync
3. 論理ボリュームのサイズを論理エクステント単位で縮小または設定するには:
# lvreduce -l [-]LogicalExtentsNumber[%{VG|LV|FREE|ORIGIN}] # lvreduce --extents [-]LogicalExtentsNumber[%{VG|LV|FREE|ORIGIN}]
4. 論理ボリュームのサイズをメガバイト単位で縮小または設定するには:
# lvreduce -L [-]LogicalVolumeSize[bBsSkKmMgGtTpPeE] # lvreduce --size [-]LogicalVolumeSize[bBsSkKmMgGtTpPeE]
5. ファイルシステムで必要な場合に、ファイルシステムのサイズを変更する前に fsck を実行しない:
# lvreduce -n # lvreduce --nofsck
6. fsadm を使用して、基礎となるファイルシステムと論理ボリュームのサイズを変更するには:
# lvreduce -r # lvreduce --resizefs