들어가며
- LVM 논리볼륨관리자를 통해 추가된 hard disk 를 원하는 공간에 추가 및 확장할 수 있습니다.
- 특정 경로에 추가한 스토리지를 할당하는 방법을 알 수 있습니다.
- 기존 경로의 스토리지를 확장하는 방법을 알 수 있습니다.
- pv, vg, lv 에 대한 이해도가 필요하다면 다음을 클릭하여 이해도를 높일 수 있습니다.
내용
모든 확장가이드는 Hard Disk 가 추가된 상태에서 작성된 글 입니다.
사전 작업
- 추가된 하드 디스크 확인
# 추가된 하드디스크 확인 ll /dev/sdb* brw-rw---- 1 root disk 8, 16 Jul 26 01:27 /dev/sdb brw-rw---- 1 root disk 8, 18 Jul 26 01:55 /dev/sdb2
- LVM 생성
fdisk /dev/sdb
LVM 설정 화면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. Device does not contain a recognized partition table. Created a new DOS disklabel with disk identifier 0x6353c958. Command (m for help): n Partition type p primary (0 primary, 0 extended, 4 free) e extended (container for logical partitions) Select (default p): p Partition number (1-4, default 1): First sector (2048-209715199, default 2048): Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-209715199, default 209715199): Created a new partition 2 of type 'Linux' and of size 100 GiB. Command (m for help): t Selected partition 2 Hex code (type L to list all codes): L 0 Empty 24 NEC DOS 81 Minix / old Lin bf Solaris 1 FAT12 27 Hidden NTFS Win 82 Linux swap / So c1 DRDOS/sec (FAT- 2 XENIX root 39 Plan 9 83 Linux c4 DRDOS/sec (FAT- 3 XENIX usr 3c PartitionMagic 84 OS/2 hidden or c6 DRDOS/sec (FAT- 4 FAT16 <32M 40 Venix 80286 85 Linux extended c7 Syrinx 5 Extended 41 PPC PReP Boot 86 NTFS volume set da Non-FS data 6 FAT16 42 SFS 87 NTFS volume set db CP/M / CTOS / . 7 HPFS/NTFS/exFAT 4d QNX4.x 88 Linux plaintext de Dell Utility 8 AIX 4e QNX4.x 2nd part 8e Linux LVM df BootIt 9 AIX bootable 4f QNX4.x 3rd part 93 Amoeba e1 DOS access a OS/2 Boot Manag 50 OnTrack DM 94 Amoeba BBT e3 DOS R/O b W95 FAT32 51 OnTrack DM6 Aux 9f BSD/OS e4 SpeedStor c W95 FAT32 (LBA) 52 CP/M a0 IBM Thinkpad hi ea Rufus alignment e W95 FAT16 (LBA) 53 OnTrack DM6 Aux a5 FreeBSD eb BeOS fs f W95 Ext'd (LBA) 54 OnTrackDM6 a6 OpenBSD ee GPT 10 OPUS 55 EZ-Drive a7 NeXTSTEP ef EFI (FAT-12/16/ 11 Hidden FAT12 56 Golden Bow a8 Darwin UFS f0 Linux/PA-RISC b 12 Compaq diagnost 5c Priam Edisk a9 NetBSD f1 SpeedStor 14 Hidden FAT16 <3 61 SpeedStor ab Darwin boot f4 SpeedStor 16 Hidden FAT16 63 GNU HURD or Sys af HFS / HFS+ f2 DOS secondary 17 Hidden HPFS/NTF 64 Novell Netware b7 BSDI fs fb VMware VMFS 18 AST SmartSleep 65 Novell Netware b8 BSDI swap fc VMware VMKCORE 1b Hidden W95 FAT3 70 DiskSecure Mult bb Boot Wizard hid fd Linux raid auto 1c Hidden W95 FAT3 75 PC/IX bc Acronis FAT32 L fe LANstep 1e Hidden W95 FAT1 80 Old Minix be Solaris boot ff BBT Hex code (type L to list all codes): 8e Changed type of partition 'Linux' to 'Linux LVM'. ## LVM show : p Command (m for help): p Disk /dev/sdb: 100 GiB, 107374182400 bytes, 209715200 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: 0x6353c958 Device Boot Start End Sectors Size Id Type /dev/sdb2 2048 209715199 209713152 100G 8e Linux LVM ## save : w Command (m for help): w The partition table has been altered. Calling ioctl() to re-read partition table. Syncing disks.
특정 경로에 용량 할당하기
특정 경로가 추가되어 용량을 할당해야한다면 다음과 같이 진행합니다.
예시로 진행되는 경로는 /data 입니다.
Device Boot Start End Sectors Size Id Type /dev/sdb2 2048 209715199 209713152 100G 8e Linux LVM
- PV 생성
pvcreate /dev/sdb2 pvdisplay --- Physical volume --- PV Name /dev/sda3 VG Name ubuntu-vg PV Size <198.00 GiB / not usable 0 Allocatable yes (but full) PE Size 4.00 MiB Total PE 50687 Free PE 0 Allocated PE 50687 PV UUID -- --- Physical volume --- PV Name /dev/sdb2 VG Name ubuntu-vg PV Size <100.00 GiB / not usable 3.00 MiB Allocatable yes (but full) PE Size 4.00 MiB Total PE 25599 Free PE 0 Allocated PE 25599 PV UUID --
- VG 생성
vgcreate spsd /dev/sdb1 vgdisplay --- Volume group --- VG Name ubuntu-vg System ID Format lvm2 Metadata Areas 2 Metadata Sequence No 4 VG Access read/write VG Status resizable MAX LV 0 Cur LV 1 Open LV 1 Max PV 0 Cur PV 2 Act PV 2 VG Size 198.99 GiB PE Size 4.00 MiB Total PE 76286 Alloc PE / Size 76286 / 297.99 GiB Free PE / Size 0 / 0 VG UUID -- --- Volume group --- VG Name spsd System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 1 VG Access read/write VG Status resizable MAX LV 0 Cur LV 0 Open LV 0 Max PV 0 Cur PV 1 Act PV 1 VG Size <100.00 GiB PE Size 4.00 MiB Total PE 38399 Alloc PE / Size 38399 / <100.00 GiB Free PE / Size 0 / 0 VG UUID --
- LV 생성
lvcreate -L 99.9g -n spsd-lv spsd
- mkfs 설정
fdisk 로 생성한 파티션을 포멧할 때 사용합니다.
→ fdisk로 생성한 파티션은 공간만 확장되어있고, OS 는 포멧이 되지않은 상태입니다.
→ 즉, fdisk를 사용하여 생성한 파티션은 무조건 포멧해주어야 합니다.
mkfs.ext4 /dev/spsd/spsd-lv
- Mount LV
# mount /dev/<VG_name>/<LV_name> /data mount /dev/spsd/spsd-lv /data
기존 경로에 용량 할당하기
용량 이슈로 인해 동일한 경로에 증설이 필요하다면, VG 및 LV 를 확장하여 해결할 수 있습니다.
- PV 생성
pvcreate /dev/sdb2 pvdisplay --- Physical volume --- PV Name /dev/sda3 VG Name ubuntu-vg PV Size <198.00 GiB / not usable 0 Allocatable yes (but full) PE Size 4.00 MiB Total PE 50687 Free PE 0 Allocated PE 50687 PV UUID -- --- Physical volume --- PV Name /dev/sdb2 VG Name ubuntu-vg PV Size <100.00 GiB / not usable 3.00 MiB Allocatable yes (but full) PE Size 4.00 MiB Total PE 25599 Free PE 0 Allocated PE 25599 PV UUID --
- VG 확장
vgextend ubuntu-vg /dev/sdb2 Volume group "ubuntu-vg" successfully extended vgs VG #PV #LV #SN Attr VSize VFree ubuntu-vg 2 1 0 wz--n- 297.99g <100.00g
- LV 확장
lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv Size of logical volume ubuntu-vg/ubuntu-lv changed from <198.00 GiB (50687 extents) to 297.99 GiB (76286 extents). Logical volume ubuntu-vg/ubuntu-lv successfully resized.
- 파일 시스템 조정
resize2fs /dev/ubuntu-vg/ubuntu-lv
마치며
- 추가한 하드디스크의 정보를 fstab 에 등록하여 재부팅 시 자동적으로 적용할수 있게 합니다.
아티클이 유용했나요?
훌륭합니다!
피드백을 제공해 주셔서 감사합니다.
도움이 되지 못해 죄송합니다!
피드백을 제공해 주셔서 감사합니다.
피드백 전송
소중한 의견을 수렴하여 아티클을 개선하도록 노력하겠습니다.