본문 바로가기
운영체제 OS

저널링 파일 시스템 종류

by 까망 하르방 2021. 2. 27.
반응형

저널링 파일 시스템 종류

ext (eXtended file system): 리눅스 파일 시스템으로 사용, 암호화 지원 X

ext2: 리눅스 파일시스템으로 사용 (ext를 대체하기 위해 고안)

          서버의 비정상적 종료 후 재부팅시 데이터 손실을 방지하기 위해 FSCK(복구) 명렁어 추가 

ext3: 파일 내용 변경 시 파일 시스템과 바로 동기화 작업이 이루어짐 (저널링 파일 시스템)

          ext2에서 자료 삭제 및 손실없이 ext3으로 변경 가능

ext4: ext3와 호환이 되며, 큰 용량(16TB)까지 지원, 64bit 공간 제한 X, 

         삭제 파일 복구 및 점검 속도 

 

EXT4 파일시스템에서는 기본적으로 128MB에 해당하는 

디스크의 연속적인 영역이 저널 영역으로 할당됩니다. 

저널링의 대상은 어떤 정보든지 가능하지만, 

성능상의 이유로 EXT4의 디폴트 옵션은 메타데이터에 대해서만 저널링한다.

 

이러한 보장 수준이 마음에 들지 않으면 마운트 옵션을 통해

전체 데이터에 대한 저널링을 수행하게 할 수도 있습니다.

Data 옵션으로 전달할 수 있는 저널링 방식은 3가지로, Journal, Ordered, Writeback 방식이 존재합니다.

 

EXT4의 기본 저널 옵션은 Ordered mode로, 

데이터를 먼저 저널링 없이 기록하고 이후 메타데이터를 저널링하는 방식

메타데이터가 적히지 않은 채 비정상 종료가 일어나면 데이터는 손실될 여지는 있습니다.

이외에도 아래 표와 같이 Journal, 또는 Writeback 모드를 지원하지만 디폴트 옵션이 가장 많이 쓰인다.

 

저널링 모드

Ordered (default)

    데이터 블록들을 메타 데이터 보다 먼저 디스크에 기록하도록 한다.

    데이터 블럭은 저널링을 하지 않고 바로 스토리지에 저장을 하며, 그 뒤에 메타데이터 블럭을 저널링 한다)

    즉, 파일 시스템의 메타데이터 변경에 대해서만 저널에 로그를 남긴다.

    데이터에 대한 일관성은 Ordered 모드 역시 보장하지 못한다.

    하지만 Ordered mode는 메타데이터를 적기 이전에 데이터를 적기 때문에,

    파일이 포함하는 데이터가 해당 어플리케이션에 의해 적힌 것임을 보장할 수 있다.

 

Journal

    메타데디터 및 데이터 변경에 대해 저널에 로그를 남긴다.

    모든 정보가 파일 시스템에 쓰이기 이전에 저널링되는 모드.

    각 파일에 대한 변경 여부를 가장 정확하게 유지할 수 있지만,

    저널 영역에 대한 추가적인 디스크 접근이 많다.

    모든 정보를 두번 이상 적게 되는 셈이므로 성능 면에서 가장 느리다고 볼 수 있다.

 

Writeback

    파일 시스템 메타데이터에 대한 변경만 로그를 남긴다.

    데이터와 메타데이터간 쓰기 순서는 보장되지 않기에 가장 빠른 모드이다.

    시스템 Crash 직전에 쓰여졌던 파일들은 이전의 데이터 또는 쓰레기 값을 포함할 수 있다는 문제가 있다.

 

 

 

반응형

댓글