Overview
리눅스에서 디스크를 활용하기 위해서는 파티션(Partition)과 파일 시스템을 적절하게 설정해야 한다.
디스크 파티션을 나누는 이유는 데이터를 논리적으로 구분하고, OS 및 데이터를 효율적으로 관리하기 위해서다.
이 글에서는 리눅스에서 사용할 수 있는 파티션 종류와 설정 방법을 정리하고,
fdisk와 parted 명령어를 사용하여 실습을 진행한다.

파티션(Partition)이란?
파티션이란 물리적인 디스크를 논리적인 여러 개의 영역으로 나누는 것을 의미한다.
리눅스에서 사용하는 주요 파티션의 종류는 다음과 같다.
파티션 종류 | 설명 | 제한 사항 |
Primary Partition (주 영역 파티션) | OS 및 주요 데이터 저장 | 최대 4개까지 가능 |
Extended Partition (확장 영역 파티션) | 논리 파티션을 포함하는 컨테이너 역할 | 최대 1개만 생성 가능 |
Logical Partition (논리 영역 파티션) | 확장 파티션 내부에 생성 가능 | SCSI 디스크는 15개까지 가능 (12개 이상은 성능 저하 가능) |
💡 참고:
- Primary 파티션은 최대 4개까지 생성할 수 있음.
- 4개 이상의 파티션을 만들려면 Extended Partition을 생성하고, 그 안에 Logical Partition을 만들어야 함.
이제 본론으로 들어가서 실제 리눅스에서 파티션을 나누어 본다.
1GB (1024MB) 물리적 하드디스크를 Primary 2개 Extend 안에 Logical 2개를 만들어 본다.

fdisk 명령어 사용하여 실습
목표
1GB HDD를 추가한 후, Primary 2개, Extended 1개, Logical 2개의 파티션을 생성
1️⃣ fdisk로 디스크 확인
fdisk -l
- 현재 시스템에 장착된 디스크 목록을 출력
- 새로 추가한 디스크 (/
dev/sdb
)를 확인
2️⃣ fdisk 실행하여 파티션 설정
fdisk /dev/sdb
주요 명령어
명령어 | 설명 |
n | 새 파티션 생성 (New Partition) |
p | Primary 파티션 생성 |
e | Extended 파티션 생성 |
l | Logical 파티션 생성 |
d | 파티션 삭제 |
w | 변경 사항 저장 후 종료 |
q | 변경 없이 종료 |
3️⃣ 첫 번째 Primary Partition 생성 (256MB)
n # 새 파티션 생성 p # Primary 선택 1 # 첫 번째 파티션 +256M # 256MB 크기 지정
4️⃣ 두 번째 Primary Partition 생성 (256MB)
n p 2 +256M
5️⃣ Extended Partition 생성 (512MB)
n e 3 +512M
6️⃣ Logical Partition 2개 생성 (각 256MB)
n l +256M n l +256M
7️⃣ 파티션 확인 (p) 후 저장 (w)
p # 생성된 파티션 확인 w # 변경 사항 저장 후 종료
파일 시스템 생성 (ext4 포맷)
mkfs.ext4 /dev/sdb1
mkfs.ext4 /dev/sdb2
mkfs.ext4 /dev/sdb5
mkfs.ext4 /dev/sdb6
sdb3는 Extended Partition이므로 파일 시스템을 설정할 필요 없음!
FAT32 : 윈도와 리눅스 범용적으로 상용할 수 있는 파일 시스템으로 대용량 NTFS 파일 시스템 이하의 환경에서
동작할 수 있는 제한 사항을 갖고 있다.
ext3 : 보안 부분이 조금 향상된 기본 파일 시스템으로 저널링 파일 시스템을 기반으로 하고 있고 ext2 보다 조금
향상된 기능을 갖고 있다.
ext4 : 대형 파일 시스템을 지향하는 목적으로 개발되었으며 최대 1 엑사 바이트의 볼륨과 16TB 파일을 지원합니다.
ext3 단점을 많이 보안한 파일 시스템으로 현재까지 개발 중에 있는 파일 시스템이다.
parted를 사용한 GPT 기반 디스크 파티션 설정
2TB 이상의 디스크에서는 fdisk가 지원되지 않으므로 parted 사용 필요
parted /dev/sdb
1️⃣ GPT 테이블 생성
mklabel gpt
2️⃣ 1GB 디스크를 3개 파티션으로 분할
mkpart primary ext4 1MiB 256MiB mkpart primary ext4 256MiB 512MiB mkpart primary ext4 512MiB 100%
3️⃣ 저장 후 종료
quit
4️⃣ 파일 시스템 설정
mkfs.ext4 /dev/sdb1 mkfs.ext4 /dev/sdb2 mkfs.ext4 /dev/sdb3
LVM을 활용한 동적 파티션 관리
LVM(Logical Volume Manager)은 디스크 크기를 동적으로 조절할 수 있도록 해주는 기능이다.
1️⃣ LVM 설정 예시
pvcreate /dev/sdb1 vgcreate my_vg /dev/sdb1 lvcreate -L 500M -n my_lv my_vg mkfs.xfs /dev/my_vg/my_lv
2️⃣ LVM 크기 확장
lvextend -l +100%FREE /dev/my_vg/my_lv xfs_growfs /dev/my_vg/my_lv
파티션 마운트 및 자동 마운트 설정
1️⃣ 수동 마운트
mount /dev/sdb1 /mnt/data
2️⃣ 자동 마운트 설정 (/etc/fstab 수정)
blkid /dev/sdb1
...
/dev/sdb1: UUID="abcd-1234-efgh-5678" TYPE="ext4"
echo "UUID=abcd-1234-efgh-5678 /mnt/data ext4 defaults 0 2" | sudo tee -a /etc/fstab mount -a
마무리
리눅스에서 파티션을 적절히 나누고 파일 시스템을 설정하는 과정은 매우 중요하다.
특히, 시스템 환경에 맞는 적절한 파티션 유형과 파일 시스템을 선택해야 한다.
정리
- 2TB 이하 디스크 → fdisk 사용
- 2TB 이상 디스크 → parted 사용 (GPT 지원)
- LVM 활용 → 동적 크기 확장 가능
- 마운트 유지 → /etc/fstab 설정 필요
이제 리눅스 파티션을 직접 설정해보고, 파일 시스템을 관리하는 방법을 익혀보자!
Reference
- Linux 공식 문서
- man fdisk, man parted
- 국비학원
- https://phoenixnap.com/kb/linux-create-partition
'Linux' 카테고리의 다른 글
CentOS 7 / 계정에 sudo 권한 주기 / bash-4.2$ (0) | 2022.04.28 |
---|---|
Django(Linux) (0) | 2022.02.16 |
LVM(Logical Volume Manager) 개요 및 실습 (0) | 2022.02.16 |
리눅스 압축&보관 유틸리티 (0) | 2022.01.18 |
마운트(Mount) / 오토 마운트(Auto Mount) (0) | 2022.01.17 |