리오집사의 기억저장소

목차

     

ext란?

리눅스 계열 OS에서 사용하는 파일 포맷이다.

ext(ext1)

  • 리눅스 운영체제를 목표로 만들어진 첫 번째 파일 시스템
  • Extended File System을 줄여 extfs 또는 ext로 쓴다.
  • MFS(MINIX File System)의 한계를 극복하기 위해 만들어졌다.
  • MFC의 파일 시스템 최대 크기는 64MB -> ext의 파일 시스템 최대 크기는 2GB
  • MFC의 파일 이름 최대 길이는 14byte -> ext의 파일 이름 최대 길이는 255byte
  • 사용하면 할수록 파일 시스템이 조각화된다는 단점이 존재

 

ext2

  • ext의 문제 해결을 위해 나온 파일 시스템
  • 점점 많이 쓰이게 되면서, 현재 아주 안정한 파일 시스템이 되었음
  • 255자까지의 긴 파일 이름을 지원
  • 파일시스템의 최대 크기는 블록 사이즈에 따라 2TiB ~ 32 TiB이다
  • 서브 디렉토리 개수 제한은 32768개이다.
Block 크기 파일 크기 제한 파일 시스템 크기 제한
1KiB 16648 MiB(약 16 GiB) 2048 GiB (2TiB)
2KiB 256 GiB 8192 GiB (8TiB)
4KiB 2048 GiB(2 TiB) 16384 GiB (16 TiB)
8KiB 65568 GiB (약 64 TiB) 32768 GiB (32 TiB)

 

ext3

  • 2001년 11월에 Linux 2.4.15에 추가되었다.
  • ext2에 있던 기능에 추가적으로 저널링, 온라인 파일 시스템 증대, 큰 디렉토리를 위한 HTree 인덱싱 등의 기능이 추가되었다.
  • ext2 기반으로 만들었으므로, ext2 파일 시스템을 자료 손실 없이 ext3 파일 시스템으로 바꿀 수 있다.
  • 저널링? 주 파일 시스템을 수정 전에 저널에 수정 사항을 먼저 기록해 놓음으로써, 전원이 갑자기 나가거나 시스템 충돌이 났을 때 데이터 손실 가능성을 줄일 수 있게 해준다.
  • 아이노드 동적 할당, 다양한 블록 크기 지원등의 기능이 부족하다
  • extends 기능도 지원하지 않는다.
  • 온라인 조각모음 프로그램이 없다.
  • 오프라인 조각모음 프로그램이 있으나, 이를 사용하기 위해선 ext2 파일 시스템으로 변환시켜야 하며, ext3의 새로 추가된 기능을 인식하지 못해 자료가 손상될 수 있다.
  • 저널링을 할 때 체크섬을 검사하지 않는다.
  • 한 디렉토리 당 서브 디렉토리 개수 제한은 31998개이다.
Block 크기 파일 크기 제한 파일 시스템 크기 제한
1KiB 16 GiB < 2TiB
2KiB 256 GiB < 4TiB
4KiB 2 TiB < 8 TiB
8KiB 2 TiB < 32 TiB

 

ext4

리눅스 2.6.19에서 공개됨. 특징은 아래와 같다.

  1. 큰 파일 시스템 : 1EB까지의 볼륨과 16 TB까지의 파일을 지원
  2. Extents : ext2, ext3의 block mapping 방식 대신 extends 방식을 새로 사용. 이는 큰 파일 처리를 개선하고 조각화 현상을 줄여준다.
  3. 호환성 : ext2,ext3를 ext4 방식으로 마운트하여 성능이 향상된 상태로 사용할 수 있다. 반대로 ext4는 ext3 방식으로 마운트될 수 있다. 하지만 extends를 사용하는 ext4 파티션은 ext3 방식으로 마운트 될 수 없다.
  4. 저널 체크섬 : ext3 파일 시스템에 없었던 저널 체크섬 기능이 추가됨으로서, 파일 시스템 손상 가능성이 더 줄었다.
  5. 32000개 서브 디렉토리 제한이 깨짐 : 서브 디렉토리 개수 제한이 32000개에서 64000개로 늘어남
  6. 온라인 조각모음 : ext4는 ext3에서 지원하지 않았던 온라인 조각모음을 지원한다.
  7. 빠른 파일 시스템 검사 : ext4는 디스크 검사를 할 때 사용하지 않는 부분은 건너뜀으로써 시스템 검사를 빨리 할 수 있다.
  8. 파일스탬프 향상 : 타임스탬프가 초 단위가 아닌 나노초 단위로 재어진다.
  9. 영속적 선행 할당 : 디스크 공간을 프로그램이 실제로 사용하기 전에 할당해야 한다면 대부분의 파일 시스템은 아직 사용하지 않은 공간에 0을 기록함으로써 선행 할당을 하나, ext4는 이렇게 하지 않고도 선행 할당을 할 수 있다.
  10. 지연 할당 : ext4는 디스크 공간 할당을 마지막까지 지연하므로 성능이 향상된다.
  11. 그 외 : Multiblock allocator, 파일 복구 기능 추후 구현 가능성 등

 

여기아래부터
반응형

공유하기

facebook twitter kakaoTalk kakaostory naver band