Linux

增加根分區

  • January 31, 2019

有誰知道我可以擴展 /dev/sda4 的大小並將其分配給 vg_root-lv_var 而無需重新啟動的方法?

lsblk輸出:

NAME                         MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
fd0                            2:0    1    4K  0 disk
sda                            8:0    0   50G  0 disk
├─sda1                         8:1    0  500M  0 part /boot
├─sda2                         8:2    0    4G  0 part [SWAP]
├─sda3                         8:3    0 35.5G  0 part
│ ├─vg_root-lv_root          253:0    0    9G  0 lvm  /
│ ├─vg_root-lv_usr           253:1    0    4G  0 lvm  /usr
│ ├─vg_root-lv_localservices 253:2    0 15.5G  0 lvm  /localservices
│ ├─vg_root-lv_home          253:3    0    4G  0 lvm  /home
│ ├─vg_root-lv_tmp           253:4    0    4G  0 lvm  /tmp
│ └─vg_root-lv_var           253:5    0    4G  0 lvm  /var
└─sda4                         8:4    0    5G  0 part
 └─vg_root-lv_root          253:0    0    9G  0 lvm  /
sr0                           11:0    1 1024M  0 rom

pvscan輸出:

 PV /dev/sda3   VG vg_root         lvm2 [35.51 GiB / 0    free]
 PV /dev/sda4   VG vg_root         lvm2 [5.00 GiB / 0    free]
 Total: 2 [40.50 GiB] / in use: 2 [40.50 GiB] / in no VG: 0 [0   ]

以下適用於我在 EL7 上。

首先你必須有一個/dev/sda動態增長塊設備的方法,比如在VMware或者AWS等中增加磁碟的dmesg大小,當你這樣做的時候會報告增加的塊設備的大小。您可能需要使用類似echo 1 >/sys/class/scsi_device/0:0:0:0/device/rescan.

  1. 首先,使用fdisk,刪除原始/dev/sda4分區然後重新創建它,從與原始完全相同的扇區開始,但擴展到磁碟的新端,該端必須大於或等於原始分區。確保您也設置了相同的分區類型。當您保存並退出時,您會收到有關需要重新啟動的警告,但請繼續。
  2. 執行partx -u /dev/sda4它應該更新有關分區的核心。
  3. 執行pvresize /dev/sda4以獲取額外的空間。您的捲組現在應該報告它有可用空間。
  4. 現在執行lvresize -l +100%FREE /dev/mapper/vg_root-lv_var調整/var邏輯卷大小以使用所有新空間。如果您只想使用一些新空間,請調整此命令。
  5. 最後,使用類似xfs_growfs /varresize2fs /dev/mapper/vg_root-lv_var. 這取決於您使用的文件系統,有些工具需要底層塊設備,有些工具需要文件系統掛載點。
  6. 你現在應該有更多的空間/var

引用自:https://serverfault.com/questions/951714