將 LVM 卷組從一個物理磁碟移動到另一個物理磁碟
我是一個深入淺出的 PHP 開發人員,必須處理以下系統管理員問題。
我們有一個執行 Xen (xen-hypervisor-4.4-amd64 4.4.0-0ubuntu5.1) 的 Ubuntu (Ubuntu 14.04.1 LTS) 伺服器。
它有兩個物理磁碟(250GB 和 2TB),每個都包含一個 LVM 文件系統(/dev/sdb 是舊的 250GB,/dev/sda 是新的 2TB)。
root@xen:~# pvscan PV /dev/sdb3 VG tiffany-vg lvm2 [232.17 GiB / 85.48 GiB free] PV /dev/sda5 VG xen-vg lvm2 [1.82 TiB / 1.77 TiB free] Total: 2 [2.05 TiB] / in use: 2 [2.05 TiB] / in no VG: 0 [0 ]
我需要將組“tiffany-vg”移動到新的/更大的磁碟 (/dev/sda),目的是從伺服器中刪除舊的 250GB 物理磁碟。目標磁碟已包含另一個名為“xen-vg”的 LVM 組,該組必須保持獨立。
我想將“tiffany-vg”移動到 /dev/sda 上的“xen-vg”旁邊,我真的不需要失去任何數據!我真的不想造成任何數據失去?
我可能用錯了一些術語,我相信你明白我想說什麼。
更新:
“目標”磁碟(/dev/sda)目前看起來像這樣……
root@xen:~# parted /dev/sda #...snip Number Start End Size Type File system Flags 1 1049kB 256MB 255MB primary ext2 boot 2 257MB 2000GB 2000GB extended 5 257MB 2000GB 2000GB logical lvm
一個卷組可以有多個物理磁碟(或者在你的情況下是分區)。
首先,您需要在較大的磁碟上留出空間 (
/dev/sda
)。您在文章中沒有提到這一點,但根據您的問題,我假設您可以騰出空間,然後添加一個我們稱之為的新分區:
/dev/sdaX
更新後的擴展:
您可以
/dev/sda
通過簡單地合併卷組來騰出空間,但您不想這樣做 - 正如您在原始文章中所述。你需要做的實際上比這更簡單。跟著這些步驟:
步驟-5:減少物理卷
/dev/sda5
為新分區騰出空間:pvresize /dev/sda5 -L 1500G
步驟-4:使用
parted
將大小減小/dev/sda5
到1600G(是的,比我們使用的大一點pvresize
!)步驟-3:使用新的可用空間(大約400G)
parted
創建一個新分區。/dev/sda6
步驟-2:檢查核心是否可以自動檢測分區變化。查看是否
/proc/partition
匹配新狀態(因此/dev/sda6
可見)。如果沒有,則需要重新啟動。(可能會。)步驟-1:您可以
/dev/sda5
再次變得盡可能大:pvresize /dev/sda5
步驟 0:格式化
/dev/sda6
為物理卷:pvcreate /dev/sda6
從這一點來說,
/dev/sda6
是我們的/dev/sdaX
。延長結束
首先:你應該給
/dev/sdaX
卷組tiffany-vg
:vgextend tiffany-vg /dev/sdaX
第二:您應該在卷組 tiffany-vg 的(已經)兩個物理卷之間移動所有數據:
pvmove tiffany-vg /dev/sdb3 /dev/sdaX
第三:您應該
/dev/sdb3
從 tiffany-vg 卷組中刪除:vgreduce tiffany-vg /dev/sdb3
注意:上面的第二步會有點關鍵,請保持好奇。如果是根分區,最好從應急光碟中進行。祝你好運!
如果您只是合併了卷組
第1步:您可以簡單地將其合併
xen-vg
到您的tiffany-vg
:vgmerge tiffany-vg xen-vg
第 2 步:將所有數據
/dev/sdb3
移至/dev/sda5
:pvmove tiffany-vg /dev/sdb3 /dev/sda5
/dev/sdb3
第 3 步:從新的大型捲組中刪除:vgreduce tiffany-vg /dev/sdb3
但請注意:您的舊
xen-vg
卷組在這裡結束了他的生命,並且它的所有捲都移到了下面/dev/tiffany-vg
。您需要在系統配置中更改對它們的每個引用(您不太可能需要更改任何內容/etc/fstab
)。結尾