web-dev-qa-db-ja.com

LVM物理ボリューム上の論理ボリュームのエクステントを変更する方法

暗号化された物理ボリュームのサイズを変更して、デュアルブートシステムを作成するための空き容量を確保しようとしています。

これまでのところ、PVの復号化に成功し、ファイルシステムとLVのサイズを変更しましたが、PVのサイズを変更しようとすると、LVのセクターエクステントに関連する問題が発生します。

root@ubuntu:/home/ubuntu# pvresize --setphysicalvolumesize 174G /dev/mapper/cryptdisk
/dev/mapper/cryptdisk: cannot resize to 44543 extents as later ones are allocated.
0 physical volume(s) resized / 1 physical volume(s) not resized

物理ボリュームには、ルート(最初)とスワップ(2番目)の2つの論理ボリュームがあります。ルートボリュームのサイズを変更(縮小)して空き領域を作成しましたが、空き領域の範囲はルートボリュームとスワップボリュームの間にあります。スワップボリュームのエクステントは物理ボリュームの最後にあるため、pvresizeを使用して物理ボリュームを縮小することはできません。

スワップボリュームのエクステントを変更して、空き領域がその後ろに配置されるようにするにはどうすればよいですか?

私はpvmoveを見てきましたが、それが必要なものではないと思います。この場合、lvmoveのようなものが必要です(ただし、存在しません)。

root@ubuntu:/home/ubuntu# pvdisplay --maps /dev/mapper/cryptdisk
--- Physical volume ---
PV Name               /dev/mapper/cryptdisk
VG Name               elementary-vg
PV Size               222.59 GiB / not usable 0   
Allocatable           yes 
PE Size               4.00 MiB
Total PE              56983
Free PE               12546
Allocated PE          44437
PV UUID               DkBRl8-3gAq-Ewzv-7kjB-AHZI-dhqC-69gaZo

--- Physical Segments ---
Physical extent 0 to 40354:
  Logical volume    /dev/elementary-vg/root
  Logical extents   0 to 40354
Physical extent 40355 to 52898:
  FREE
Physical extent 52899 to 56980:
  Logical volume    /dev/elementary-vg/swap_1
  Logical extents   0 to 4081
Physical extent 56981 to 56982:
  FREE

kvpm overview

2
Nukolas

pvmoveは適切なツールです:

pvmove /dev/mapper/cryptdisk:52899:56980 /dev/mapper/cryptdisk:40355

エクステントを移動します。

ただし、スワップについて話しているので、LVを削除して再作成します...

2
Stephen Kitt