작성자

카테고리:

파일 시스템이란? ext4, XFS, Btrfs 비교

파일 시스템의 역할

파일 시스템(File System)은 운영체제가 디스크 위의 데이터를 조직하고 관리하는 체계다. 디스크의 물리적 저장 공간은 섹터 단위의 연속된 바이트에 불과하다. 파일 시스템이 이 바이트들을 파일과 디렉토리라는 논리적 구조로 변환하여 사용자와 애플리케이션이 데이터를 이름으로 찾고, 읽고, 쓸 수 있게 만든다. 어떤 파일 시스템을 선택하느냐에 따라 성능, 안정성, 최대 볼륨 크기, 스냅샷 기능 등이 달라지므로 서버 구축 시 용도에 맞는 선택이 중요하다.

ext4

ext4(Fourth Extended File System)는 리눅스의 기본 파일 시스템이다. 대부분의 리눅스 배포판이 설치 시 기본으로 ext4를 사용한다. 최대 볼륨 크기 1EB(엑사바이트), 최대 파일 크기 16TB를 지원한다. 저널링(Journaling) 기능으로 시스템 비정상 종료 시 데이터 손상을 최소화한다. 저널링이란 데이터를 디스크에 기록하기 전에 변경 내용을 별도의 저널 영역에 먼저 기록하는 방식이다. 정전이나 크래시 발생 시 저널을 참조하여 파일 시스템을 일관된 상태로 복구한다. 안정성이 검증되었고 호환성이 가장 넓어 범용 서버에서 무난한 선택이다.

XFS

XFS는 SGI가 개발한 고성능 저널링 파일 시스템이다. RHEL 7부터 기본 파일 시스템으로 채택되었으며, 대용량 파일과 높은 병렬 I/O 처리에 강점이 있다. 최대 볼륨 크기와 파일 크기 모두 8EB를 지원한다. XFS의 핵심 기술은 할당 그룹(Allocation Group)이다. 볼륨을 독립적으로 관리되는 여러 영역으로 분할하여 다수의 스레드가 동시에 서로 다른 영역에 쓰기 작업을 수행할 수 있다. 이 병렬성이 대규모 데이터베이스 서버, 미디어 스트리밍 서버, 빅데이터 스토리지에서 ext4보다 높은 성능을 발휘하는 이유다. 다만 파일 시스템 축소(shrink)가 불가능하다는 점은 운영 시 주의해야 한다.

Btrfs

Btrfs(B-tree File System)는 차세대 리눅스 파일 시스템을 목표로 개발되고 있다. 가장 큰 특징은 파일 시스템 레벨에서 스냅샷, 서브볼륨, 데이터 체크섬, 압축, 소프트웨어 RAID를 기본 지원한다는 점이다. 스냅샷은 특정 시점의 파일 시스템 상태를 즉시 복제하는 기능으로 COW(Copy-On-Write) 방식으로 동작하여 공간 효율이 높다. 데이터 체크섬은 디스크에 기록된 데이터의 무결성을 파일 시스템 레벨에서 검증하여 비트 로트(Bit Rot)를 탐지할 수 있다. NAS 운영체제인 시놀로지 DSM이 Btrfs를 옵션으로 지원하는 이유도 이 스냅샷과 데이터 무결성 기능 때문이다. 다만 RAID 5/6 지원이 아직 불안정하고, 프로덕션 환경에서의 검증 사례가 ext4나 XFS에 비해 적다는 점이 한계다.

선택 기준 정리

범용 서버, 안정성 최우선이라면 ext4가 가장 안전하다. 대용량 파일, 높은 병렬 I/O가 필요한 데이터베이스나 스트리밍 서버에는 XFS가 적합하다. 스냅샷과 데이터 무결성 검증이 필요한 NAS나 백업 스토리지에는 Btrfs가 매력적인 선택이다.

파일시스템 #ext4 #XFS #Btrfs #리눅스 #저널링 #스냅샷 #COW #서버스토리지 #디스크관리

코멘트

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다