df는 드라이브를 77GB로 표시하지만 fdisks는 파티션을 160GB로 표시합니다.

df는 드라이브를 77GB로 표시하지만 fdisks는 파티션을 160GB로 표시합니다.

최근에 VPS의 HDD 공간을 80 > 160GB에서 업그레이드했지만 fdisks를 보는 것 외에는 변경 사항이 표시되지 않습니다.

root@localhost:~# df -h
Filesystem             Size  Used Avail Use% Mounted on
udev                   3.9G     0  3.9G   0% /dev
tmpfs                  794M  1.2M  793M   1% /run
/dev/mapper/vg00-lv01   77G   31G   43G  43% /
tmpfs                  3.9G   16K  3.9G   1% /dev/shm
tmpfs                  5.0M     0  5.0M   0% /run/lock
tmpfs                  3.9G     0  3.9G   0% /sys/fs/cgroup
/dev/sda1              456M  145M  278M  35% /boot
tmpfs                  794M     0  794M   0% /run/user/0

root@localhost:~# fdisk /dev/sda

Welcome to fdisk (util-linux 2.34).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.


Command (m for help): p
Disk /dev/sda: 160 GiB, 171798691840 bytes, 335544320 sectors
Disk model: Virtual disk    
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x520f1760

Device     Boot  Start       End   Sectors   Size Id Type
/dev/sda1  *      2048    999423    997376   487M 83 Linux
/dev/sda2       999424 335544286 334544863 159.5G 8e Linux LVM

resize2fs를 사용하려고 시도했지만 다음과 같은 결과를 얻었습니다.

root@localhost:~# resize2fs /dev/mapper/vg00-lv01 
resize2fs 1.45.5 (07-Jan-2020)
The filesystem is already 20345856 (4k) blocks long.  Nothing to do!

이 작업을 수행하려면 새 파티션을 만들어야 할 것 같나요?

나를 더욱 혼란스럽게 만드는 것은 vgdisplay에 여유 공간이 표시되지 않는다는 것입니다.

root@localhost:~# vgdisplay vg00
  --- Volume group ---
  VG Name               vg00
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  5
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               <79.52 GiB
  PE Size               4.00 MiB
  Total PE              20357
  Alloc PE / Size       20357 / <79.52 GiB
  Free  PE / Size       0 / 0   
  VG UUID               ZRC0sL-qOeU-Uyfp-Qbo4-m06c-CwEt-xpFTsO

답변1

운영 체제용으로 디스크를 확장할 때 lvm용으로 확장하려면 몇 가지 작업을 수행해야 합니다.

  1. 시스템을 재부팅하지 않으려면 디스크에서 새 크기를 다시 검색해야 합니다(예: /dev/sda).

    에코 1 > /sys/block/sda/device/rescan

새로운 디스크 공간(160G)이 표시됩니다.

  1. 다음으로 pv에 속한 파티션을 확장해야 합니다.

    분할 /dev/sda 2 크기 조정 부분 100%

  2. 그런 다음 PV의 크기를 조정합니다.

    pvresize /dev/sda2

lv 및 fs의 크기를 조정하십시오.

lvextend -l+100%FREE -r /dev/mapper/vg00-lv01

참고: lvextend에 대해 "-r"을 표시하십시오.

-r|--resizefs
         Resize underlying filesystem together with the LV using fsadm(8).

그러나 파일 시스템 유형에 따라 기본 파일 시스템의 크기를 직접 조정할 수 있습니다.

xfs: xfs_growfs /
ext: resize2fs /

답변2

사용 가능한 새 공간을 볼 수 있는지 확인하려면 가상 머신 내부를 확인해야 합니다.

fdisk -l /dev/sda  #or whatever your main device is

따라서 원래 80G보다 더 많은 공간이 있는지 확인할 수 있으며 때로는 VM을 중지하고 다시 시작해야 합니다. 대부분의 경우 다시 시작하면 커널이 공간 변경을 감지하는 데 충분할 수 있지만 시도할 수 없는 경우 다음 솔루션 중 :

sfdisk -R /dev/sda
partx -a /dev/sda
kpartx -a /dev/sda
hdparm -z /dev/sda
blockdev --rereadpt /dev/sda
partprobe  /dev/sda

이제부터 장치에 여유 공간이 있을 수 있으며 이를 활용하는 방법에는 두 가지가 있습니다. (1) 원래 파티션을 확장하거나 (2) 새 파티션을 추가하는 것입니다.

확장 파티션(1)

pvs #this will give you the used partitions here 2 for the example 
parted /dev/sda resizepart 2      159GB
       ^disk    ^cmd       ^part# ^pos.last.sector

가장 큰 크기를 사용할 수 있도록 마지막 숫자는 원하는 종료 위치여야 합니다.

두 번째 파티션(2)을 추가하려면 fdisk sfdisk gdisk또는 이와 유사한 것을 사용하고 끝에 파티션을 추가하고 GPT 파티션 테이블 형식을 사용하는 경우 8e 또는 8E00으로 표시합니다. 그런 다음 두 번째 파티션을 LVM에 추가합니다.

pvcreate /dev/sda3
vgextend  vg00 /dev/sda3 

이제부터 볼륨 그룹에 일부 여유 공간이 보고되거나 볼륨을 확장 vgsvgdisplay 수 있습니다.

관련 정보