확장 파일 시스템
확장 파일 시스템 (Extended File System, ext)은 리눅스 운영 체제에서 사용되는 파일 시스템의 일종입니다. ext는 미닉스 파일 시스템의 한계를 극복하기 위해 개발되었으며, 여러 세대에 걸쳐 발전해 왔습니다.
역사 및 발전:
- ext (ext1): 최초의 ext 파일 시스템은 1992년에 개발되었으며, 최대 2GB의 파일 시스템 크기를 지원했습니다. 하지만 안정성 문제로 인해 널리 사용되지는 못했습니다.
- ext2: ext1의 후속 버전으로, 1993년에 등장했습니다. ext2는 성능과 안정성이 향상되었으며, 리눅스 배포판에서 널리 사용되었습니다. 저널링 기능이 없다는 단점이 있었지만, 간단하고 빠른 속도로 인해 여전히 일부 환경에서 사용됩니다.
- ext3: ext2에 저널링 기능을 추가하여 데이터 무결성을 강화한 파일 시스템입니다. 저널링을 통해 시스템 충돌 발생 시 파일 시스템 복구 시간을 단축할 수 있습니다. ext2와의 호환성을 유지하면서 안정성을 높였기 때문에 널리 사용되었습니다.
- ext4: ext3의 후속 버전으로, 2008년에 등장했습니다. ext4는 더 큰 파일 시스템 크기, 성능 향상, 확장 기능 등을 제공합니다. 익스텐트 기반 파일 저장, 나노초 단위의 타임스탬프, 온라인 조각 모음 등의 기능을 통해 현대적인 요구 사항을 충족합니다.
특징:
- 계층적 디렉터리 구조: 디렉터리를 통해 파일을 구성하고 관리합니다.
- 파일 권한 관리: 사용자 및 그룹별로 파일 접근 권한을 설정할 수 있습니다.
- 링크 지원: 심볼릭 링크와 하드 링크를 통해 파일에 대한 다양한 접근 경로를 제공합니다.
- 저널링 (ext3, ext4): 시스템 충돌 발생 시 파일 시스템의 일관성을 유지하고 복구 시간을 단축합니다.
- 익스텐트 (ext4): 연속된 디스크 블록을 할당하여 파일 저장 효율성을 높입니다.
활용:
ext 파일 시스템은 리눅스 운영 체제의 기본 파일 시스템으로 널리 사용됩니다. 데스크톱, 서버, 임베디드 시스템 등 다양한 환경에서 사용되며, 특히 ext4는 현대적인 파일 시스템의 요구 사항을 충족하는 안정적이고 효율적인 파일 시스템으로 평가받고 있습니다.