본문 바로가기
초보 IT 동동 리눅스 이야기

[20] 초보 IT 동동 리눅스 파일 시스템

by 동동이y 2023. 3. 11.
728x90
반응형

안녕하세요. 초보 IT 동동입니다.

오늘은 리눅스 파일시스템에 관하여 알아보도록 하겠습니다.

 

파일시스템

파일시스템은 운영체제가 파일을 디스크에 구성하는 방식으로 컴퓨터에서 자료를 쉽게 찾고, 접근할수 있도록 보관하거나 조직하는 체계입니다. 파일시스템은 하드 디스크나 CD-ROM과 같은 물리적인 저장소를 관리하고 있습니다.

리눅스 파일 시스템의 구조를 보여드리겠습니다.

리눅스 파일시스템 구조

EXT의 구조를 가장 잘 보여주는 그림입니다.

Super Block 파일 시스템에서 사용되는 주요 관련 정보를 저장합니다. 
-블록크기, Block Group 개수, inode 개수)
Group Descriptor Table 파일 시스템에 있는 Block Group을 관리하는 정보를 저장합니다.
- block bitmap과 inode bitmap의 블록 번호
- 그룹 안에 있는 inode 수, 비어있는 디렉터리 수 등
Block bitmap 그룹안에 있는 블록의 사용 상태를 보여줍니다.
inode - 파일의 이름을 제외하고 해당 파일의 모든 정보를 저장합니다.
- 모든 파일들과 디렉터리는 각 1개의 inode를 할당 받고, 파일의 데이터 블록이 파티션에 해당 위치 데이터를 갖고 있습니다.

리눅스 파일 시스템의 종류

파일시스템 종류 설명
ext 리눅스 초기에 사용되었습니다.
inode 수정 불가
2GByte의 데이터
255자까지 파일명 지정가능
ext2 ext의 한계를 극복을 위해 등장한 파일시스템
호환이 쉽고 업그레이드도 쉽습니다.
고용량 디스크 사용이 가능하여, 블록단위에 따라 16GiB~32TiB
최대 파일 크기 16GB ~ 2TB
ext3 리눅스의 대표적인 저널링을 지원하는 확장된 파일시스템입니다.
ACL을 통하여 접근 제어를 지원합니다. (Access Control List)
최대 파일 크기 16GB ~ 2TB
ext4 ext2,ext3와 호환성이 가능한 버전
파일에 디스크 할당 시 물리적으로 연속적인 블록 할당
최대 파일 크기 16GB~2TB

저널링 파일 시스템 이란?

데이터를 디스크에 사용하기 전에 로그에 데이터를 남겨서 시스템이 셧다운을 하고 있음에도 로그를 사용하여 빠르게 안정적으로 복구하는 기능을 말합니다.

ext3부터 저널링이 지원이 되었는데, ext2는 시스템 동작이 멈추기 전에 파일 시스템에 수정이 있는지 알 수가 없습니다.

만약 저널링 기능이 없는 경우 시스템을 복구 하기 위하여, fsck에 관리되는 superblock, bitmap, inode 등 모두 검사가 진행되어야 하므로 시간이 많이 걸립니다.

 

운영방식은 저널이라는 로그에 시스템 상태를 저장합니다. 시스템의 셧다운 시 로그를 검사합니다. 저널 정보를 바탕으로 파일 시스템에 수정 내용을 적용합니다.

 

저널링 기술이 들어간 파일 시스템으로는 ext3, ext4, XFS, JFS, ResierFS가 있습니다.

저널링이 들어간 파일시스템 기능
JFS ( Journaling File System) IBM의 저널링 파일 시스템
현재 리눅스 용으로 개발

XFS (eXetended File System) 고성능 저널링 시스템으로 64비트 주소를 지원합니다.
확장성이 있는 자료와 빠른 복구와 재시작이 가능합니다.
데이터 읽기/쓰기 트랜잭션으로 성능을 최소화 할 수 있습니다.
64비트를 지원하여 큰 용량의 파일도 운용 할 수 있습니다.
ReiserFS 리눅스용 저널링 파일 시스템중 가장 안전합니다.
모든 파일을 B트리에 저장합니다.
간략하고 색인화된 디렉터리를 지원합니다.

 

728x90
반응형

댓글