Help us improve the AWS re:Post Knowledge Center by sharing your feedback in a brief survey. Your input can influence how we create and update our content to better support your AWS journey.
如何使用 LVM 在 EBS 磁碟區的分割區上建立邏輯磁碟區?
我想使用 Logical Volume Manager (LVM) 在 Amazon Elastic Block Store (Amazon EBS) 磁碟區的分割區上建立 LV。
解決方法
如果您已經建立並掛載 LV,請繼續前往**擴充 LV ** 章節。
在磁碟區的分割區上建立 PV
LV 的基礎實體儲存裝置是區塊型儲存設備,例如磁碟區的分割區或整個磁碟區。
**注意:**Nitro 型執行個體會將磁碟區公開為 NVMe 裝置。區塊型儲存設備名稱遵循 /dev/nvme1n1、/dev/nvme2n1、/dev/nvme3n1 的命名模式,依此類推。如果您使用 Nitro 型執行個體,請使用適當的裝置名稱取代下列步驟中的裝置名稱。如需詳細資訊,請參閱 Amazon EC2 執行個體磁碟區的裝置名稱。
若要在磁碟區的分割區建立實體磁碟區,請完成下列步驟:
-
執行下列命令以安裝 LVM:
sudo yum install lvm2 -y**注意:**針對 Debian 或 Ubuntu 型系統執行下列命令,以便安裝 growpart 公用程式:
sudo apt-get install -y lvm2 -
使用 gdisk 命令建立分割區。針對為命令提示輸入 n。針對變數的十六進位代碼或 GUID 輸入 8e00。
下列範例會在 /dev/xvdh上建立 /dev/xvdh1 分割區:sudo gdisk /dev/xvdh Command (? for help): n Partition number (1-1218, default 1): 1 First sector (34-20971486, default = 2048) or {+-}size{KMGTP}: Last sector (2048-20971486, default = 20971486) or {+-}size{KMGTP}: Current type is 'Linux filesystem' Hex code or GUID (L to show codes, Enter = 8300): 8e00範例輸出結果:
Changed type of partition to 'Linux LVM' OK; writing new GUID partition table (GPT) to /dev/xvdh. The operation has completed successfully. -
執行 lsblk 命令來確認已建立分割區:
lsblk範例輸出結果:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT xvda 202:0 0 8G 0 disk └─xvda1 202:1 0 8G 0 part / xvdh 202:80 0 10G 0 disk └─xvdh1 202:81 0 10G 0 part -
執行 pvcreate 命令從分割區建立實體磁碟區 (PV)。下列範例會從 /dev/xvdh1 建立 PV:
sudo pvcreate /dev/xvdh1範例輸出結果:
Physical volume "/dev/xvdh1" successfully created.
建立磁碟區群組,並將 PV 新增至磁碟區群組
請完成下列步驟:
-
執行 vgcreate 命令以建立結合新 PV 的磁碟區群組。下列範例使用一個 PV 來建立 examplegroup1 磁碟區群組:
sudo vgcreate examplegroup1 /dev/xvdh1範例輸出結果:
group "examplegroup1" successfully created -
執行 vgs 或 vgdisplay 命令來檢視磁碟區群組詳細資料:
sudo vgs範例輸出結果:
VG #PV #LV #SN Attr VSize VFree examplegroup1 1 0 0 wz--n- <10.00g <10.00g
建立 LV 和掛載目錄
請完成下列步驟:
-
執行 lvcreate 命令,從磁碟區群組建立 LV。下列範例會從 examplegroup1 磁碟區群組建立一個名為 lvexample1 的 9 GB LV:
sudo lvcreate -n lvexample1 -L 9G examplegroup1輸出範例:
volume "lvexample1" created -
執行 lvs 或 lvdisplay 命令以檢閱 LV 詳細資料:
sudo lvs範例輸出結果:
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert lvexample1 examplegroup1 -wi-a----- 9.00g -
執行 mkdir 命令來建立掛載目錄。下列範例會建立 /mnt1 目錄:
sudo mkdir /mnt1
建立並掛載檔案系統
請完成下列步驟:
-
執行 mkfs -t 命令以建立檔案系統:
sudo mkfs -t xfs /dev/examplegroup1/lvexample1**注意:**將 xfs 替換為您的檔案系統類型。例如,使用 ext2、ext3 或 ext4。
-
執行 lsblk -f 命令以驗證檔案系統是否已建立:
lsblk -f範例輸出結果:
NAME FSTYPE LABEL UUID MOUNTPOINT xvda ├─xvda1 └─xvda2 xfs 66e5e079-770e-4359-a9da-5205c3d8d5af / xvdh └─xvdh1 LVM2_member 0UnOic-e2ng-XxH5-z0UW-7aTh-RxQK-KMrDqo └─examplegroup1-lvexample1 xfs 5db36052-81d5-4762-8502-6986ff3964e7**注意:**檔案系統類型會顯示在 FSTYPE 之下。
-
執行 mount 命令以將文件系統掛載到掛載目錄上:
sudo mount /dev/examplegroup1/lvexample1 /mnt1 -
編輯 /etc/fstab 檔案中的掛載選項,讓新的掛載在重新開機後仍然存在:
/dev/examplegroup1/lvexample1 /mnt1 xfs defaults,nofail 0 0**注意:**將 xfs 替換為您的檔案系統類型。
擴充 LV
若要擴充 LV,請增加現有 EBS 磁碟區的大小,或將 EBS 磁碟區新增至磁碟區群組。
增加現有 EBS 磁碟區的大小
注意:增加現有磁碟區的大小時,在磁碟區進入正在最佳化狀態後,大小變更通常會在數秒內生效。如果磁碟區處於正在最佳化狀態,則磁碟區的效能會介於來源與目標組態規格之間。視您的磁碟區類型而定,效能變更可能需要幾分鐘到幾小時才能生效。如需詳細資訊,請參閱監控 Amazon EBS 磁碟區修改進度。
若要增加現有 EBS 磁碟區的大小,請完成下列步驟:
-
安裝 growpart 公用程式:
sudo yum install cloud-utils-growpart -y**注意:**若要在 Debian 或 Ubuntu 型系統上安裝 growpart 公用程式,請執行下列命令:
sudo apt install -y cloud-guest-utils -
執行 growpart 命令以擴充該分割區。在下列範例中,** /dev/xvdh1** 分割區已受到擴充:
sudo growpart /dev/xvdh1範例輸出結果:
CHANGED: disk=/dev/xvdh partition=1: start=2048 old: size=20971519,end=16777182 new: size=41940958,end=41943006 -
執行 pvresize 命令以調整 PV 的大小:
sudo pvresize /dev/xvdh1範例輸出結果:
Physical volume "/dev/xvdh1" changed 1 physical volume(s) resized or updated / 0 physical volume(s) not resized -
執行 pvs 或 pvdisplay 命令以查看 PV 詳細資料:
sudo pvs範例輸出結果:
PV VG Fmt Attr PSize PFree /dev/xvdh1 examplegroup1 lvm2 a-- <20.00g <13.00g -
執行 vgs 或 vgdisplay 命令來檢視磁碟區群組詳細資料:
sudo vgs範例輸出結果:
VG #PV #LV #SN Attr VSize VFree examplegroup1 1 1 0 wz--n- <20.00g <13.00g -
執行 lvextend 命令來擴充 LV:
sudo lvextend -L 19G /dev/examplegroup1/lvexample1 -
執行 lvs 或 lvdisplay 命令以檢閱 LV 詳細資料:
sudo lvs範例輸出結果:
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert lvexample1 examplegroup1 -wi-a----- 19.00g -
請執行下列其中一個命令以擴充檔案系統。
Ext2、Ext3 和 Ext4 檔案系統:sudo resize2fs /dev/examplegroup1/lvexample1XFS 檔案系統:
sudo xfs_growfs /dev/examplegroup1/lvexample1
將 EBS 磁碟區新增至磁碟區群組
請完成下列步驟:
-
建立另一個 10 GB 的 EBS 磁碟區,然後將該磁碟區附加至執行個體。
-
在 /dev/xvdi 裝置上建立分割區。
-
執行 pvcreate 命令以建立一個 PV。在下列範例中,磁碟區的區塊型儲存設備名稱為 /dev/xvdi1:
sudo pvcreate /dev/xvdi1範例輸出結果:
Physical volume "/dev/xvdi1" successfully created. -
使用 vgextend 命令來擴充磁碟區群組並新增磁碟區。下列範例會擴充 examplegroup1 磁碟區群組,以包含 /dev/xvdi1 磁碟區:
sudo vgextend examplegroup1 /dev/xvdi1範例輸出結果:
Volume group "examplegroup2" successfully extended -
請執行 vgs 或 vgdisplay 命令以確認擴充結果:
sudo vgs下列範例輸出顯示 examplegroup1 磁碟區群組中現在有兩個 PV:
#PV #LV #SN Attr VSize VFree examplegroup1 2 1 0 wz--n- 29.99g 20.99g -
執行 lvextend 命令來擴充 LV:
sudo lvextend -L 29G /dev/examplegroup1/lvexample1 -
請執行下列其中一個命令以擴充檔案系統。
Ext2、Ext3 和 Ext4 檔案系統:sudo resize2fs /dev/examplegroup1/lvexample1XFS 檔案系統:
sudo xfs_growfs /dev/examplegroup1/lvexample1
相關內容
- 已提問 3 年前
- 已提問 1 年前
AWS 官方已更新 3 年前
