본문 바로가기
Linux/Linux

Linux) 파일 시스템은 무엇일까?

by LILO 2021. 4. 25.
반응형

파일 시스템(File System)

 

파일 시스템은 파일에 이름을 붙이고 저장, 탐색을 위해 파일을 어디에 위치 시킬 것인지 나타내는 체계입니다.

파일들이 디스크 상에서 구성되는 방식을 뜻하기도 합니다. 

이는 리눅스 뿐만 아니라 거의 모든 OS(Operating System)가 지원하고 있습니다.

 

도서관에서 저자, 책 분류, 책 제목 등의 필터로 검색 및 탐색이 쉽게 할 수 있도록 하는 것과 비슷한 맥락입니다.

 

리눅스는 윈도우와 달리 Ext(Extended File System)을 사용합니다. 이 글에서는 파일 시스템에 대해서 너무 깊게는 들어가지 않고 실제 실무에서 사용하는 위주로 안내하려고 합니다.

 

 

 

위의 그림은 EXT의 구조를 보여주는 그림입니다.

 

Boot Sector는 MBR과 부트로더(LILO or GRUB)가 저장되어 있는 구간입니다.

MBR: OS가 어디에 위치해있고 어떻게 위치해 있는지 식별해서 주기억장치에 적재될 수 있게 해주는 정보, 하드디스크가 포맷될 때 나뉘어지는 각 파티션의 위치에 관한 정보 가지고 있음

부트로더(BootLoader): 부팅되기까지 부팅의 전과정을 진행하고 MBR에 저장됩니다.

 

Block Group은 블록들의 모임으로 Super Block ~ Data Blocks로 구분됩니다. 모든 블록 그룹은 Super Blcok 및 Group Descroptors의 복제본을 가져서 파일시스템의 메타데이터의 정보를 보호합니다.

 

 

○ 파일 시스템 관련 용어

- Super Block: 파일 시스템에서 사용되는 주요 설정 정보들이 기록되는 영역
  (블록 크기, Block Group의 개수, inode 개수, 총 블록의 개수)

- Group Descriptors: 파일 시스템 내의 모든 블록 그룹들에 대한 정보를 기록

- inode: 파일 또는 디렉토리를 기술하는 데이터 구조, 파일의 데이터 블록이 파티션에서 어디에 위치해있는지 등 주요 데이터를 가지고 있으므로 리눅스에서는 "ls -il"을 치면 나옴

 

Super Block, inode에 관한 내용은 구글링을 해서 조금 더 찾아보는 것을 권합니다. 이는 실질적으로 파일 시스템 작업을 할 때 마주하게 될 부분이고 파일 시스템 작업중 에러 로그의 원인이 다 이쪽에 있을 것이기 때문입니다.

(단순 오타를 제외)

 

파일 시스템 작업은 데이터를 다루는 아주 민감한 작업이기 때문에 하기 전에 미리 시나리오를 그려놓고 하는 것을 권합니다. 만약 데이터베이스(DB)가 들어가 있는 파일 시스템 작업을 잘못하면 끔찍한 일이 발생하니 신중하게 해야됩니다.

 

 

리눅스 파일 시스템의 종류

 

저널링 기능이 들어가기 시작한 EXT3, 실무에서 많이 사용하는 EXT4와 XFS에 대해 알아 보려고합니다. 

 

 

 

EXT3

 

- 저널링 기능이 도입되어 데이터 복구 기능 강화되었습니다.

- 데이터를 디스크에 기록하기 전에 저널에 수정 사항을 기록합니다

- 디스크에 데이터 기록전에 시스템 크래쉬나 갑자기 전원이 나가도 저널의 기록을 보고 복구 가능합니다. 

- 볼륨 크기는 2~32TB까지 지원합니다.

- 서브 디렉토리 수는 32000개까지 지원합니다.

 

저널링 시스템: 파일 시스템의 저널(로그)에 기록하는 방식을 사용하는 파일 시스템으로 파일의 정확성 체크가 매우 빠르고 정확하게 이루어집니다.

 

 

EXT4

 

- 1EB(엑사바이트) 이상의 볼륨을 지원합니다.

- 파일 시스템의 축소와 확장이 자유롭습니다.

- 서브 디렉토리 수는 64000개까지 지원합니다.

- 온라인 디스크 조각모음 기능이 추가되었습니다.

 

 

 

 

XFS

 

- Extent 기반이 완전히 탄탄해진 상태로 고성능 대용량 파일 시스템에 가장 적합합니다.

- RHEL 7부터는 Default 파일 시스템으로 지정되어 있습니다.

- EXT4가 가지고 있는 거의 모든 기능이 지원됩니다.

- XFS는 증설은 가능하지만 축소가 불가능합니다.

- 최대 용량은 8EB까지 지원합니다.

 

 

 

파일 시스템의 축소와 확장이 아무리 자유롭다고 해도 파일 시스템을 축소하는 작업은 권하지 않습니다.

레드햇에서도 파일 시스템의 축소로 인한 메타 데이터 불일치의 가능성을 열어 놓았기 때문입니다. RHCE나 RHCSA와 같은 시험에서는 공부를 하는 것이 좋지만 실무에서 사용하는 것은 권하지 않습니다.

반응형