proxmox 하이퍼바이저 내에 VM으로 CentOS7을 운용중이며 CentOS7 의 파티션은 LVM으로 구성되어 있고 "/" 파티션을 사이즈업 하려고 한다.
현재 구성
현재 "/" 파티션에 71G 가 할당되어 있다.
# df -hT
Filesystem Type Size Used Avail Use% Mounted on
devtmpfs devtmpfs 7.8G 0 7.8G 0% /dev
tmpfs tmpfs 7.8G 0 7.8G 0% /dev/shm
tmpfs tmpfs 7.8G 8.5M 7.8G 1% /run
tmpfs tmpfs 7.8G 0 7.8G 0% /sys/fs/cgroup
/dev/mapper/V0-root xfs 71G 1.5G 70G 3% /
/dev/sda1 xfs 2.0G 152M 1.9G 8% /boot
tmpfs tmpfs 1.6G 0 1.6G 0% /run/user/0
파티션구조는 /dev/sda 디스크 아래 sda2번에 "/" 파티션이 LVM 으로 구성되어 있다.
# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 75G 0 disk
├─sda1 8:1 0 2G 0 part /boot
└─sda2 8:2 0 73G 0 part
├─V0-root 253:0 0 71G 0 lvm /
└─V0-swap 253:1 0 2G 0 lvm [SWAP]
sr0 11:0 1 988M 0 rom
Proxmox Disk Size UP
Proxmox 에서 50G 만큼 디스크 사이즈업 해준다.
해당 VM - Hardware - Hard Disk - Disk Action - Resize
sda 사이즈가 75G -> 125G 만큼 증가했다.
# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 125G 0 disk
├─sda1 8:1 0 2G 0 part /boot
└─sda2 8:2 0 73G 0 part
├─V0-root 253:0 0 71G 0 lvm /
└─V0-swap 253:1 0 2G 0 lvm [SWAP]
sr0 11:0 1 988M 0 rom
설정 작업
작업에 앞서 전체적인 순서는 아래와 같다.
1. fdisk를 사용하여 추가한 50G에 대한 파티셔닝
2. 재부팅
3. 추가한 50G 파치션에 대한 LVM Physical Volume 생성
4. 추가한 50G PV에 대한 Volume Group 포함
5. 추가한 50G PV를 Logical Volume에 확장
6. 파티션 resize
파티셔닝
fdisk를 이용하여 추가한 50G에 대한 파티셔닝 작업을 한다.
- /dev/sda3으로 신규 파티션 생성 하며 LVM 타입 선택
# fdisk /dev/sda
...
######## 파티션 생성 ########
Command (m for help): n
Partition type:
p primary (2 primary, 0 extended, 2 free)
e extended
Select (default p): p
Partition number (3,4, default 3):
First sector (157286400-262143999, default 157286400):
Using default value 157286400
Last sector, +sectors or +size{K,M,G} (157286400-262143999, default 262143999):
Using default value 262143999
Partition 3 of type Linux and of size 50 GiB is set
######## 파티션 포맷 ########
Command (m for help): t
Partition number (1-3, default 3):
Hex code (type L to list all codes): 8e
Changed type of partition 'Linux' to 'Linux LVM'
######## 파티션 확인 ########
Command (m for help): p
...
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 4196351 2097152 83 Linux
/dev/sda2 4196352 157286399 76545024 8e Linux LVM
/dev/sda3 157286400 262143999 52428800 8e Linux LVM
######## 파티션 저장 ########
Command (m for help): w
The partition table has been altered!
...
재부팅
재부팅 후 파티션 확인
- sda3 으로 50G 할당
# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 125G 0 disk
├─sda1 8:1 0 2G 0 part /boot
├─sda2 8:2 0 73G 0 part
│ ├─V0-root 253:0 0 71G 0 lvm /
│ └─V0-swap 253:1 0 2G 0 lvm [SWAP]
└─sda3 8:3 0 50G 0 part
sr0 11:0 1 988M 0 rom
Physical Volume 생성
# pvcreate /dev/sda3
Physical volume "/dev/sda3" successfully created.
PV 확인
- /dev/sda3 이름으로 새로운 PV 가 추가 되었으며 VG에는 아직 포함되어있지 않음.
# pvdisplay
--- Physical volume ---
PV Name /dev/sda2
VG Name V0
PV Size <73.00 GiB / not usable 3.00 MiB
Allocatable yes (but full)
PE Size 4.00 MiB
Total PE 18687
Free PE 0
Allocated PE 18687
PV UUID MaTDAb-lcsV-2KgQ-lXZM-ZY3R-xOWR-OQ8jEn
"/dev/sda3" is a new physical volume of "50.00 GiB"
--- NEW Physical volume ---
PV Name /dev/sda3
VG Name
PV Size 50.00 GiB
Allocatable NO
PE Size 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID y4R8Iu-6tRS-USof-Jxfd-7O9c-15vt-Wn3U8K
Volume Group 추가
- 기존 "/" 파티션 VG 이름은 V0 이며 추가된 sda3를 V0에 포함시켜준다.
# vgextend V0 /dev/sda3
Volume group "V0" successfully extended
PV 를 다시 확인해보면 VG name에 V0가 표기되어 있음을 확인할 수 있다.
# pvdisplay
...
--- Physical volume ---
PV Name /dev/sda3
VG Name V0
PV Size 50.00 GiB / not usable 4.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 12799
Free PE 12799
Allocated PE 0
PV UUID y4R8Iu-6tRS-USof-Jxfd-7O9c-15vt-Wn3U8K
Logical Volume 확장
VG에 추가된 sda3 PV 를 기존 "/" Logocal Volume에 확장시켜 준다.
- lvextend -L+<증가사이즈>GB <"/" 파일시스템 이름> <"sda3" 파일시스템 이름>
# lvextend -L+49GB /dev/mapper/V0-root /dev/sda3
Size of logical volume V0/root changed from <71.00 GiB (18175 extents) to <120.00 GiB (30719 extents).
Logical volume V0/root successfully resized.
파티션 resize
"/" 파티션 포맷이 xfs 여서 xfs_growfs를 사용하여 resize 해준다.
- xfs_growfs < 파일시스템 이름>
- xfs가 아니라면 resize2fs를 사용한다.
# xfs_growfs /dev/mapper/V0-root
meta-data=/dev/mapper/V0-root isize=512 agcount=4, agsize=4652800 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0 spinodes=0
data = bsize=4096 blocks=18611200, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal bsize=4096 blocks=9087, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 18611200 to 31456256
df 확인
- 120G 로 증가 확인
# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 7.8G 0 7.8G 0% /dev
tmpfs 7.8G 0 7.8G 0% /dev/shm
tmpfs 7.8G 8.5M 7.8G 1% /run
tmpfs 7.8G 0 7.8G 0% /sys/fs/cgroup
/dev/mapper/V0-root 120G 1.5G 119G 2% /
/dev/sda1 2.0G 152M 1.9G 8% /boot
tmpfs 1.6G 0 1.6G 0% /run/user/0
lsblk 확인
# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 125G 0 disk
├─sda1 8:1 0 2G 0 part /boot
├─sda2 8:2 0 73G 0 part
│ ├─V0-root 253:0 0 120G 0 lvm /
│ └─V0-swap 253:1 0 2G 0 lvm [SWAP]
└─sda3 8:3 0 50G 0 part
└─V0-root 253:0 0 120G 0 lvm /
sr0 11:0 1 988M 0 rom
'OS > Linux' 카테고리의 다른 글
IOPS(Input/Output Operations Per Second) 계산 방법 (1) | 2024.01.26 |
---|---|
jq filter를 이용한 json 출력하기 (1) | 2024.01.05 |
linux(CentOS7) python 개발 환경 vim 설정 (1) | 2023.10.25 |
[Linux] 디스크 파티션 크기 확장(standard) (0) | 2023.09.04 |
[CentOS6] yum repo 변경 (0) | 2023.03.17 |