개발/작업 기록용

[작업] 홈 서버를 설치하던 중 SSD 135GB가 Free가 되었다.

mabb 2025. 3. 2. 17:23
반응형

[요약]
1. 기본 설정으로 OS를 설치하면서 할당되지 않았던 135GB를 논리 볼륨으로 /data 경로에 마운트하였다.
2. 파티셔닝->물리볼륨->볼륨그룹->논리볼륨->포매팅->마운트의 과정 중 논리볼륨생성부터 마운트까지 진행하였다.
3. PV, VG, LV의 개념을 잘 몰랐었는데 파티션을 직접 마운트 하는 것 보다 더 유연하게 설정을 바꿔줄 수 있는 것 같다.

[관련 명령어]
#> fdisk -l
#> vgdisplay
#> lvdisplay
#> pvdisplay
#> lsblk
#> mkfs.ext4
#> mount

[과정]
새벽 2시 경 미니pc에 ubuntu-server를 설치하고 잠들었다.

Ubuntu 24.04.2 LTS / ubuntu-24.04.2-live-server-amd64



아침에 설치가 되어 있길래 방화벽 및 네트워크 설정을 건드리고 disk를 확인해보았는데 ssd 볼륨이 작게 잡혀 있었다.
ssd가 불량이었나? 라는 생각이 잠깐 들었는데 잠김에 ubuntu 설치를 모두 default 설정으로 진행했던게 기억 났다.

df -h

ssd는 256GB 정상적으로 인식되는 것으로 보인다. ssd가 3개의 파티션
nvme0n1p1,
nvme0n1p2,
nvme0n1p3
으로 나뉘어있다.

fdisk -l

그 중 nvme0n1p3 파티션의 경우 Size가 235.4G인데  하위 논리볼륨이 '/' 루트 경로에 마운트 된 것을 확인 할 수 있다.

lsblk

논리볼륨 ubuntu-lv가 100GiB Size로 설정되어 있다.

lvdisplay

물리볼륨(PV) /dev/nvme0n1p3 파티션의 Size가 235.42GiB이며 볼륨그룹(VG) 이름은 ubuntu-vg이다.

해당 볼륨 그룹에서 Free PE 가 34668, Size가 135.42GiB인 것을 확인할 수 있다.
*PE(Physical Extent, 물리 볼륨의 논리적 최소 단위로 보통 4MiB, 4,194,304bit)

vgdisplay

귀한 SSD공간이 남게 되어 /data 에 마운트 해주고자 하였다.
ubuntu-lv2라는 이름의 논리볼륨을 135.42GiB의 사이즈로 ubuntu-vg 볼륨그룹에 속하도록 생성해주었다.

lvcreate -n ubuntu-lv2 -L 135.42GiB ubuntu-vg

다시 lvdisplay로 확인해보면 lv가 생긴 것을 확인할 수 있다.

lvdisplay

다시 lsblk 명령어로 확인해보면, nvme0n1p3 파티션 하위에  논리볼륨(lvm)이 추가된 것을 확인할 수 있다.

lsblk

 

다시 df -h 명령어로 확인해보았으나 마운트에는 변화가 없다. 이제 논리 볼륨에 파일 시스템을 설정해주고 (포매팅 해주고)
마운트를 할 것이다.

df -h

mkfs.ext4 명령어로 /dev/ubuntu-vg/ubuntu-lv2 를 ext4 파일 시스템으로 포매팅 해준다.
/dev: 디바이스
./ubuntu-vg : 볼륨 그룹 디렉터리
./ubuntu-lv2: 아까 생성한 논리 볼륨

논리볼륨(lv)의 심링크는 무엇일까?
mkfs.ext4 /dev/ubuntu-vg/ubuntu-lv2

mkdir /data로 만들어 둔 디렉터리에 포매팅이 된 논리 볼륨을 마운트 한다.

mount /dev/ubuntu-vg/ubuntu-lv2 /data

다시 확인해보면 잃어버렸던 135.4G가 /data에 할당된 것을 확인할 수 있다.

lsblk, df -h

 

 



 

 

 

 

 

 

 

 

반응형