1. 소개
Ubuntu를 사용하다 보면, “디스크 용량이 부족해졌다”, “새로운 앱을 설치하고 싶은데 여유 공간이 없다”와 같은 상황에 직면할 수 있습니다. 이런 경우에 도움이 되는 것이 “파티션 확장”이라는 작업입니다. 파티션 확장이란 기존 디스크 영역(파티션)을 더 크게 하여 스토리지 용량을 효율적으로 사용하는 방법입니다. 특히 Ubuntu는 서버 용도부터 데스크톱 용도까지 폭넓게 사용되고 있어, 가상 머신이나 VPS(가상 전용 서버), 듀얼 부트 환경 등 다양한 상황에서 파티션 관리가 필요할 수 있습니다. 하지만 “어떤 방법으로 확장해야 할지”, “작업을 잘못하면 데이터가 사라지지는 않을까”라고 불안해하는 분들도 적지 않습니다. 본 기사에서는 Ubuntu에서 파티션을 확장하고자 하는 분들을 위해, 간단한 절차부터 LVM 환경 및 가상 환경에서의 응용 사례까지 가능한 한 이해하기 쉽게 설명합니다. 또한 파티션 작업에는 주의할 점이 많기 때문에, 사전 준비와 안전하게 작업을 진행하기 위한 포인트에 대해서도 다룹니다. “Linux의 명령어 조작은 처음인” 분부터 “이전에 다른 배포판에서 파티션 작업을 해본 적이 있는” 중급자까지, 폭넓은 층의 분들에게 도움이 되는 내용을 목표했습니다。 파티션 확장 작업은 신중함이 요구되지만, 올바른 절차를 알고 있으면 중요한 데이터를 보호하면서 스토리지 용량을 효율적으로 활용할 수 있게 됩니다.2. 파티션 확장에 대한 사전 지식
Ubuntu에서 파티션을 확장하기 전에 기본적인 지식을 갖추면 작업 실수와 문제를 예방하기 쉽습니다. 여기서는 파티션 및 파일 시스템의 기초, LVM 유무, 그리고 최근 Ubuntu에서의 파티션 구성 경향에 대해 설명합니다.2.1 파티션이란 무엇인가?
파티션은 물리적인 하드디스크나 SSD와 같은 저장 장치를 가상으로 여러 구역으로 나누어 관리하는 방식입니다. 예를 들어, 하나의 디스크를 “시스템용”, “데이터용” 등으로 분할할 수 있으며 각각 독립된 영역으로 취급할 수 있습니다. Ubuntu의 시스템 파일, 사용자 데이터, 스와프 영역 등도 파티션별로 구분되어 있는 경우가 많습니다.2.2 파티션 테이블의 종류 (GPT와 MBR)
디스크의 파티션 구성을 기록하는 방식에는 주로 “GPT (GUID 파티션 테이블)”와 “MBR (마스터 부트 레코드)” 두 가지가 있습니다.- MBR: 오래전부터 사용되어 온 방식으로, 최대 2TB까지의 디스크 용량과 최대 4개의 기본 파티션을 만들 수 있습니다.
- GPT: 비교적 새로운 방식으로, 2TB를 초과하는 대용량 디스크와 128개 이상의 파티션을 지원합니다. 현재 Ubuntu에서는 GPT가 주류입니다.
sudo parted -l
등 명령어로 확인할 수 있습니다.2.3 LVM(논리 볼륨 관리)의 유무
Ubuntu에서는 파티션을 직접 확장하는 경우와 LVM (Logical Volume Manager)이라는 유연한 볼륨 관리를 사용하는 경우가 있습니다.- LVM 없음(일반 파티션) ext4 등 파일 시스템이 파티션 위에 그대로 만들어지는 일반적인 경우입니다。
- LVM 있음 물리 디스크 위에 “물리 볼륨(PV)”을 만들고 이를 묶어 “볼륨 그룹(VG)”을 형성한 뒤, 그 위에 “논리 볼륨(LV)”을 만드는 구조입니다. 용량을 유연하게 확장·축소할 수 있어 최근 서버 용도와 클라우드 환경에서 많이 사용됩니다。
2.4 Ubuntu에서의 파티션 구성 경향
Ubuntu 설치 시 LVM을 사용할지 여부는 선택 가능하지만, 최근 서버 용도(특히 20.04 이후)에서는 LVM 사용이 권장·표준화되고 있습니다。 반면, 데스크톱 용도나 듀얼 부트 환경에서는 기존과 같은 단순 파티션 구성(ext4 단독)도 많이 있습니다。2.5 파티션 확장 시 주의점
파티션 확장을 수행하기 전에 반드시 “미할당 영역(unallocated space)”이 디스크에 존재해야 합니다. 파티션의 인접 위치나 디스크 구성에 따라 확장이 불가능한 경우도 있으므로, 먼저 현재 디스크 구성을lsblk
및 parted
명령어로 확인합시다。 또한, 중요한 데이터는 사전에 반드시 백업을 하는 것을 강력히 권장합니다. 작업 실수나 문제로 데이터가 손실되더라도 백업이 있으면 안심하고 작업을 진행할 수 있습니다。3. 확장 방법별 정리
Ubuntu에서 파티션 확장은 사용 중인 환경 및 디스크 구성에 따라 절차가 다릅니다. 여기서는 대표적인 4가지 경우—비 LVM 환경, LVM 환경, VPS 및 클라우드 등 온라인 환경, 그리고 듀얼 부트 환경에 대해 각각 이해하기 쉽게 절차를 설명합니다.3.1 비 LVM (ext4) 환경에서의 파티션 확장
가장 일반적인 경우는 LVM을 사용하지 않고 ext4와 같은 파일 시스템을 파티션에 직접 생성한 경우입니다.- 디스크 용량을 늘리기
- 가상 머신이나 VPS의 경우, 먼저 관리 화면에서 디스크 용량을 추가합니다。
- 물리 PC의 경우는 할당되지 않은 영역을 준비합니다。
- 파티션 확장
- 터미널에서
sudo parted
와sudo fdisk
를 이용해 대상 파티션을 확장합니다。 - parted의 경우, 다음과 같은 명령을 사용합니다 (예: /dev/sda1을 확장하는 경우)
sudo parted /dev/sda (parted) resizepart 1 <새로운 종료 위치(예: 100%)>
- 파일 시스템 확장
- 파티션 확장 후, 파일 시스템 자체도 확장해야 합니다。
- ext4의 경우,
resize2fs
명령을 실행합니다。sudo resize2fs /dev/sda1
- 이렇게 하면 영역이 파일 시스템에 반영됩니다。
- 확장 확인
- 확장이 완료되면,
df -h
로 증가한 디스크 용량을 확인합시다。
3.2 LVM 환경에서의 파티션 확장
LVM (Logical Volume Manager)를 이용하는 경우, 보다 유연하게 용량을 확장할 수 있습니다。- 디스크 용량을 늘리기
- 먼저, 물리 디스크나 가상 디스크의 크기를 확장합니다。
- 물리 디스크의 경우는 할당되지 않은 영역을 확보합니다。
- 물리 볼륨(PV) 확장
- 새로 추가한 영역을 LVM의 물리 볼륨으로 인식시켜야 합니다。
sudo pvresize /dev/sda2
- (디바이스 이름은 환경에 따라 다릅니다)
- 논리 볼륨(LV) 확장
- 확장하려는 논리 볼륨을 지정해 용량을 늘립니다。
sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv
-l +100%FREE
로 사용 가능한 전체 영역을 할당합니다。
- 파일 시스템 확장
- LVM 위의 파티션에 ext4를 사용하고 있는 경우,
resize2fs
로 확장합니다。sudo resize2fs /dev/ubuntu-vg/ubuntu-lv
- 확인
df -h
와lsblk
로 확장된 용량이 반영됐는지 확인합시다。
3.3 VPS 및 클라우드 환경에서의 온라인 확장
VPS 및 클라우드에서는 서버를 재시작하지 않고 파티션 확장을 하고 싶은 경우가 많습니다. 그때는growpart
명령 등을 사용하면 편리합니다。- 디스크 크기 확장
- 프로바이더 관리 화면에서 디스크 용량을 추가합니다。
- 파티션 확장 (growpart)
- cloud-utils 패키지가 설치되어 있는 경우,
growpart
명령을 사용할 수 있습니다。sudo growpart /dev/sda 1
- 이렇게 하면 파티션(예: /dev/sda1)이 자동으로 확장됩니다。
- 파일 시스템 확장
- 이어
resize2fs
로 파일 시스템도 확장합니다。sudo resize2fs /dev/sda1
- 확인
df -h
로 확장을 확인합니다。
3.4 듀얼 부트 (Windows/Ubuntu) 환경에서의 조정
Windows와 Ubuntu를 같은 디스크에 설치한 경우, 할당되지 않은 영역이 파티션 옆에 없으면 확장할 수 없는 경우가 있습니다。- 할당되지 않은 영역 이동
- Windows 파티션 편집 도구(MiniTool Partition Wizard 등)를 사용해 할당되지 않은 영역을 Ubuntu 파티션 옆으로 이동합니다。
- Ubuntu에서 확장
- 위의 절차대로 파티션 확장을 수행합니다。
- 데이터 백업 필수
- 특히 듀얼 부트 환경에서는 문제가 발생하기 쉬우므로 작업 전 백업은 필수입니다。
4. 트러블슈팅·FAQ
파티션 확장 작업 중이나 전후에 다양한 의문과 문제가 발생할 수 있습니다. 여기에서는 자주 묻는 질문과 전형적인 트러블, 오류 및 그 대처 방법을 정리합니다.4.1 자주 묻는 질문(FAQ)
Q1. Free space(미할당 영역)를 찾을 수 없습니다. 어떻게 해야 하나요? A. 파티션 확장에는 “미할당 영역”이 필요합니다.lsblk
와 sudo parted /dev/sda print free
명령으로 디스크 상태를 확인하고, 미할당 영역이 존재하지 않을 경우 불필요한 파티션을 삭제하여 빈 공간을 만들거나, 가상 환경이라면 디스크 용량 자체를 추가하십시오. Q2. LVM이 아닌 경우에도 pvresize
와 lvextend
가 필요합니까? A. LVM을 사용하지 않는 경우 pvresize
와 lvextend
는 필요하지 않습니다. ext4와 같은 일반 파티션이라면 “파티션 확장 → 파일시스템 확장” 절차로 충분합니다. LVM을 사용하고 있는지는 lsblk
와 sudo pvs
명령으로 확인할 수 있습니다. Q3. 파티션 옆에 미할당 영역이 없습니다. 어떻게 확장할 수 있나요? A. 파티션 확장은 인접한 미할당 영역이 필요합니다. 미할당 영역이 멀리 있는 경우 Windows의 “MiniTool Partition Wizard” 등으로 파티션 순서와 위치를 조정하십시오。
물리 머신인 경우 데이터 백업을 반드시 수행하고 신중히 작업하십시오。 Q4. Ubuntu가 실행 중일 때 파티션을 조작해도 괜찮나요? A. 시스템 파티션(/)이나 마운트된 파티션은 라이브 시스템에서는 확장할 수 없는 경우가 있습니다. 가능하면 라이브 USB(Ubuntu 설치 미디어 등)로 부팅하여 작업하는 것이 안전합니다。
클라우드 및 VPS의 대부분은 마운트 중에도 온라인으로 확장할 수 있지만, 오류가 발생하면 일시적으로 언마운트하거나 재부팅이 필요할 수 있습니다。 Q5. swap 영역이 파티션 확장의 방해가 됩니다. 어떻게 해야 하나요? A. swap이 Ubuntu 파티션 옆에 있는 경우, swap 영역을 일시적으로 비활성화(swapoff
)하고 삭제한 후 작업을 진행합니다. 확장 후 필요하면 swap을 다시 생성하고 /etc/fstab
을 수정하십시오。 Q6. 가상 환경에서 디스크 용량을 늘렸는데 OS에 반영되지 않습니다. 왜인가요? A. 가상 환경에서는 하이퍼바이저(VMware, VirtualBox 등)에서 디스크를 확장한 후 OS가 새로운 용량을 인식하도록 해야 합니다。 echo 1 > /sys/class/block/sdX/device/rescan
또는 재부팅, 혹은 partprobe
명령으로 다시 스캔하십시오。 Q7. GPT와 MBR의 차이는? 어느 것을 선택해야 하나요? A. GPT는 2TB 이상의 대용량 디스크와 다수의 파티션을 지원하는 최신 방식으로, 현재 대부분의 환경에서 GPT가 권장됩니다. MBR은 오래된 시스템과의 호환성이 필요할 때만 선택하십시오。
4.2 대표적인 오류와 대처 예시
- “no free space available” → 인접한 미할당 영역이 필요합니다. 위치를 조정하고 다시 실행하십시오。
- “device is busy”와 “resource busy” → 파티션이 마운트 중이거나 사용 중입니다. 언마운트하거나 라이브 USB로 작업하십시오。
- “The partition is currently in use” → 해당 파티션이 사용 중입니다. 관련 서비스나 OS 자체를 일시 중지·재시작하고 다시 실행하십시오。
- “resize2fs: Bad magic number in super-block” → 파티션 종류와 명령 조합이 올바른지 다시 확인하십시오. xfs 파일시스템에서는
xfs_growfs
를 사용해야 합니다。
5. 실행 후 확인 및 요약
파티션 확장 작업이 완료되면, 마지막으로 반드시 확장 결과를 확인합시다. 작업 실수나 트러블로 인한 문제가 없는지 체크함으로써, 중요한 데이터와 시스템의 안정성을 보호할 수 있습니다.5.1 확장 결과 확인 방법
(1) 디스크 용량 확인df -h
명령을 사용하면 현재 마운트된 각 파티션의 사용량과 남은 용량을 목록으로 표시할 수 있습니다. 확장한 파티션의 용량이 올바르게 증가했는지 확인합시다.df -h
특히, ‘/’나 ‘/home’ 등, 확장하려는 영역이 기대대로 증가했는지 확인하십시오. (2) 파티션 구성 확인 lsblk
명령은 연결된 스토리지 디바이스와 파티션 구성을 트리 형태로 표시합니다. 파티션 크기와 레이아웃이 올바르게 반영되었는지 확인할 수 있습니다.lsblk
(3) parted를 이용한 상세 확인 sudo parted /dev/sda print free
등으로 파티션 테이블 및 할당되지 않은 영역을 포함한 디스크 상태를 상세히 확인할 수 있습니다. (4) LVM인 경우 추가 점검 LVM을 사용하고 있는 경우에는 sudo lvs
와 sudo vgs
명령으로 볼륨 그룹 및 논리 볼륨의 크기도 확인해 두십시오.5.2 작업 후 주의점
- 백업 데이터 관리 파티션 확장이 문제없이 완료되고 데이터 및 시스템 동작에 이상이 없으면, 일시적으로 만든 백업 데이터는 정리·삭제해도 괜찮습니다. 다만, 불안감이 남는 경우에는 일정 기간 백업을 보관합시다.
- 파일 시스템 검사 만일의 트러블이나 문제에 대비하여,
fsck
명령 등으로 파일 시스템 검사를 수행하는 것도 권장됩니다.
sudo fsck /dev/sda1
(※ 마운트를 해제한 후 실행하십시오.)- 재부팅 여부 기본적으로 확장 후 재부팅은 필요 없지만, 가상 환경이나 일부 물리 머신에서는 OS를 재부팅함으로써 새로운 디스크 크기가 완전히 인식되는 경우도 있습니다.