Filesystems
在 RedHat Linux 上調整 LVM 大小後縮小分區
我在物理硬體上有一台物理 Redhat RHEL 6.10 機器,我試圖為 vmware 虛擬化。我們使用 dd 進行備份以進行虛擬化。現在的問題是,這個虛擬機仍然佔用了完整的 146GB-SAS-Disk 的數據空間(原始),但實際數據只佔用了 27GB 的磁碟空間。
我使用命令 resize2fs 和 lvreduce 調整了分區 /dev/mapper/vg_sb00681-lv_root 和 /dev/mapper/vg_sb00681-lv_home 的邏輯卷(如下所述:https ://www.linuxtechi.com/reduce-size-lvm- partition/ ) 的 root-Parition 到 20GB 和 home-Partition 到 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 將物理範圍移動到物理卷的末尾。它為我提供了物理卷之間的可用磁碟空間,我無法將可用空間打包到最後。我不知道接下來的步驟是什麼,以及是否可以減少 VM 上的分區以節省磁碟空間。
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
有人對我有任何想法或提示嗎?
您需要
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。