
物理ハードウェアに物理Redhat RHEL 6.10システムがあり、それをvmwareに仮想化しようとしています。仮想化用のバックアップにはddを使用します。これで問題は、仮想マシンがまだ146 GBのSASディスクデータスペース(RAW)全体を占めていますが、実際のデータは27 GBのディスクスペースしか占有していないことです。
resize2fsおよびlvreduceコマンドを使用して、/dev/mapper/vg_sb00681-lv_rootおよび/dev/mapper/vg_sb00681-lv_homeパーティションの論理ボリュームのサイズを変更しました(以下の説明を参照)。https://www.linuxtechi.com/reduce-size-lvm-partition/)ルートパーティションは20GB、メインパーティションは5GBです。ご覧のとおり、パーティションが縮小されました。それでも問題ありません。
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_sb00681-lv_root 20G 9.8G 8.9G 53% /
tmpfs 931M 0 931M 0% /dev/shm
/dev/sda1 477M 105M 347M 24% /boot
/dev/mapper/vg_sb00681-lv_home 4.8G 1.5G 3.2G 32% home
GPartedを使用すると、LVMパーティションの空き領域を解放できなくなります。
パーティションを縮小/移動しようとするとGPartedが発生し、エラーが発生します。エラーメッセージ:
shrink file system
lvm pvresize -v --yes --setphysicalvolumesize 34433024K '/dev/sda2'
0 physical volume(s) resized or updated / 1 physical volume(s) not resized
Archiving volume group "vg_sb00681" metadata (seqno 32).
WARNING: /dev/sda2: Pretending size is 68866048 not 285650944 sectors.
Resizing volume "/dev/sda2" to 68866048 sectors.
Resizing physical volume /dev/sda2 from 34869 to 8406 extents.
/dev/sda2: cannot resize to 8406 extents as later ones are allocated.
そこで、物理拡張領域を物理ボリュームの最後に移動するためにpvmoveを使用してみました。物理ボリューム間に空きディスク容量を提供しますが、空き容量を最後まで埋めることはできません。次のステップが何であるか、ディスク容量を節約するために仮想マシンのパーティションを減らすことができるかどうかわかりません。
ubuntu@ubuntu:-$ sudo pvs -v --segments /dev/sda2
PV VG Fmt Attr PSize PFree Start SSize LV Stat Type PE Ranges
/dev/sda2 vg_sb00681 lvm2 a-- <136.21g 103.37g 0 2006 lv_swap 0 linear /dev/sda2:0-2005
/dev/sda2 vg_sb00681 lvm2 a-- <136.21g 103.37g 2006 16812 0 free
/dev/sda2 vg_sb00681 lvm2 a-- <136.21g 103.37g 18818 5120 lv_root 0 linear /dev/sda2:18818-23937
/dev/sda2 vg_sb00681 lvm2 a-- <136.21g 103.37g 23938 1280 lv_home 0 linear /dev/sda2:23938-25217
/dev/sda2 vg_sb00681 lvm2 a-- <136.21g 103.37g 25218 9651 0 free
誰かが私にどんなアイデアやアドバイスを与えることができますか?
答え1
pvmove
範囲を移動する必要があります。ソースとターゲットは同じディスク上にあるため、次の--alloc anywhere
オプションが必要です。
pvmove --alloc anywhere /dev/sda2:18818-23937 /dev/sda2:2006-7125 # lv_root
pvmove --alloc anywhere /dev/sda2:23938-25217 /dev/sda2:7126-8405 # lv_home
LVがマウントされていて使用中でもこれを実行できますが、システムディスクI / O負荷が高い場合はこれを実行しないでください。
これらのコマンドの後、最初の空き物理範囲は8406回でなければならず、その物理範囲からPVの終わりまでのすべての項目が空である必要があるため、PVを減らすことができます。