ext4
ext4개발자 | Mingming Cao, Andreas Dilger, Alex Zhuravlev(Tomas), Dave Kleikamp, Theodore Tso, Eric Sandeen, Sam Naghshineh 등 |
---|---|
풀네임 | 네 번째 확장 파일 시스템 |
소개했다 |
|
파티션 식별자 | 0x83 : MBR / EBR EBD0A0A2-B9E5-4433-87C0-68B6B72699C7: GPT Windows BDP.[1] |
구조물들 | |
디렉토리 내용 | 링크 리스트, 해시 B-트리 |
파일 할당 | 익스텐트/비트맵 |
불량 블록 | 테이블 |
한계 | |
최대 볼륨 크기 | 1 EiB (4 KiB 블록사이즈용) |
최대 파일 크기 | 16TiB(4KiB 블록사이즈용) |
최대 파일 수 | 40억(파일 시스템 생성 시 지정) |
최대 파일 이름 길이 | 255 바이트 |
파일 이름에 허용되는 문자 | NUL('\0') 및 '/' 및 특수 파일 이름 "." 및 "..을 제외한 모든 바이트입니다.금지되는 것은 아니지만 항상 각각의 특별한 목적을 위해 사용됩니다. |
특징들 | |
기록된 날짜 | 변경(mtime), 속성 변경(ctime), 액세스(atime), 삭제(dtime), 생성(crtime) |
날짜 범위 | 1901년 12월 14일 - 2446년[3] 5월 10일 |
날짜 해결 | 나노초 |
포크 | 아니요. |
특성 | acl, bh, bsdf, commit=sec, data=journal, data=ordered, data=writeback, delalloc, noacl, nobh, nodelalloc, noextents, nombcache, nouser_xattr, oldalloc 또는 lov, user_xattrlop, user=journal, deloc, deloc, deloc, deloc, deloc, deloc, delop, delf, deloc, del |
파일 시스템 권한 | POSIX, POSIX ACL |
투과적 압축 | 아니요. |
투과적 암호화 | 네. |
데이터 중복 배제 | 아니요. |
다른. | |
지원되는 운영 체제 |
ext4 저널링 파일 시스템 또는 4번째 확장 파일 시스템은 ext3의 후속으로 개발된 Linux용 저널링 파일 시스템입니다.
ext4는 처음에 ext3에 대한 하위 호환 확장 시리즈로, 2003년부터 2006년 사이에 클러스터 파일 시스템즈에서 Lustre 파일 시스템용으로 개발되었으며, 스토리지 제한을 확장하고 기타 [4]성능 향상을 추가하기 위한 것입니다.그러나 다른 Linux 커널 개발자들은 안정성을 이유로 [5]ext3에 대한 확장을 받아들이는 것을 반대했으며, 기존 ext3 사용자에게 영향을 주지 않고 ext3의 소스 코드를 포크하고 ext4로 이름을 바꾸고 모든 개발을 수행할 것을 제안했다.이 제안은 받아들여졌고, 2006년 6월 28일 ext3의 유지보수 담당자인 Theodore Tso가 ext4의 [6]새로운 개발 계획을 발표했습니다.
ext4의 예비 개발 버전은 Linux 커널 버전 2.6.19에[7] 포함되어 있습니다.2008년 10월 11일 ext4를 안정된 코드로 마크한 패치가 Linux 2.6.28 소스 코드 저장소에 [8]병합되어 개발 단계가 종료되었음을 나타내고 ext4 채택을 권장합니다.ext4 파일 시스템을 포함한 커널 2.6.28은 2008년 [9]12월 25일에 마침내 출시되었습니다.2010년 1월 15일, 구글은 스토리지 인프라스트럭처를 ext2에서 [10]ext4로 업그레이드한다고 발표했습니다.2010년 12월 14일, 구글은 안드로이드 2.[11]3에서 YAFS 대신 ext4를 사용할 것이라고 발표했다.
도입
ext4는 Debian 및 Ubuntu를 [12]포함한 많은 Linux 배포판의 기본 파일 시스템입니다.
특징들
- 대용량 파일 시스템
- ext4 파일 시스템은 크기가 최대 1 ebibyte(EiB)인 볼륨과 크기가 최대 16 TiB인 단일 파일을 표준 4 KiB 블록 [13]크기로 지원할 수 있습니다.파일, 디렉토리 및 파일 시스템의 최대 크기 제한은 파일 시스템 블록 크기에 비례하여 ARM 및 PowerPC/Power ISA CPU에서 사용 가능한 최대 64KiB 블록 크기까지 증가합니다.
- 익스텐트
- 익스텐트는 ext2 및 ext3에서 사용되는 기존 블록 매핑 방식을 대체합니다.익스텐트는 연속된 물리 블록의 범위로 대용량 파일 성능을 향상시키고 플래그멘테이션을 줄입니다.ext4의 단일 익스텐트는 4KiB [4]블록사이즈로 최대 128MiB의 연속공간을 매핑할 수 있습니다.inode에는 4개의 익스텐트가 직접 저장될 수 있습니다.파일에 4개 이상의 익스텐트가 있는 경우 나머지 익스텐트는 [14]트리로 인덱싱됩니다.
- 하위 호환성
- ext4는 ext3 및 ext2와 하위 호환되므로 ext3 및 ext2를 ext4로 마운트할 수 있습니다.ext4 구현의 특정 신기능을 온디스크 포맷에 영향을 주지 않고 새로운 블록 할당 알고리즘 등 ext3 및 ext2에서도 사용할 수 있기 때문에 성능이 약간 향상됩니다.
- ext3는 ext4와 부분적으로 포워드 호환성이 있습니다.실제로 ext4를 생성할 때 다음과 같은 특정 새로운 기능을 사용하지 않도록 설정하지 않는 한 ext4는 개봉 즉시 ext3 파일 시스템으로 마운트되지 않습니다.
^extent
,^flex_bg
,^huge_file
,^uninit_bg
,^dir_nlink
,그리고.^extra_isize
를 클릭합니다.[15] - 영속적인 사전 할당
- ext4는 파일의 디스크 공간을 미리 저장할 수 있습니다.대부분의 파일 시스템에서 이 작업을 수행하려면 생성 시 파일에 0이 기록됩니다.in ext4(및 XFS 등의 기타 파일 시스템)
fallocate()
Linux 커널의 새로운 시스템콜을 사용할 수 있습니다.할당된 공간은 보장되며 연속될 수 있습니다.이 상황에는 미디어 스트리밍 및 데이터베이스용 응용 프로그램이 있습니다. - 할당 지연
- ext4에서는 지연할당이라고도 불리는 allocate-on-module이라는 퍼포먼스 기법을 사용합니다.즉, ext4는 데이터가 Disk로 플러시될 때까지 블록 할당을 지연시킵니다. 반면 일부 파일 시스템은 데이터가 쓰기 캐시에 저장되는 경우에도 블록을 즉시 할당합니다.지연된 할당은 한 번에 더 많은 양의 데이터를 효과적으로 할당함으로써 성능을 향상시키고 조각화를 줄입니다.
- 서브 디렉토리 수 제한 없음
- ext4 에서는, 디렉토리 자체의 고유의 사이즈 제한을 제외하고, 1 개의 디렉토리내의 서브 디렉토리의 수는 제한되지 않습니다.(ext3에서는 디렉토리에는 최대 32,000개의 서브 디렉토리를 포함할 수 있습니다).[16]보다 큰 디렉토리와 퍼포먼스를 계속하기 위해 Linux 2.6.23 이후의 ext4에서는 디폴트로 HTree(B-tree의 특수한 버전)가 유효하게 되어 있습니다.이것에 의해, 최대 1000만~1200만개의 엔트리를 2 레벨의 HTree 인덱스에 격납할 수 있습니다.또, 파일명의 길이에 따라서는, 2 GB의 디렉토리 사이즈의 제한을 설정할 수 있습니다.th. Linux 4.12 이후에서는
largedir
3레벨 HTree 및 2GB 이상의 디렉토리 크기를 지원하여 단일 디렉토리에 약 60억 개의 엔트리를 허용합니다. - 저널 체크섬
- ext4는 저널이 디스크에서 가장 많이 사용되는 파일 중 하나이기 때문에 저널의 체크섬을[17] 사용하여 신뢰성을 향상시킵니다.이 기능은 저널링 중 디스크 I/O 대기 시간을 안전하게 피할 수 있어 성능이 약간 향상된다는 단점도 있습니다.저널 체크섬은 IRON File[18] Systems(구체적으로 섹션 6, "트랜잭션 체크섬"이라고 함)라는 위스콘신 대학의 연구 기사에서 영감을 받아 IRON 파일 시스템(원래 Red Hat Summit에서 Sam Naghshineh가 제안한)에 의해 수행된 복합 트랜잭션 구현에 대한 수정 사항을 포함했습니다.
- 메타데이터 체크섬
- 2012년에 출시된[19][20] Linux 커널 3.5 이후
- 파일 시스템 체크 고속화
- ext4에서는 할당되지 않은 블록 그룹 및 inode 테이블의 섹션이 동일하게 표시됩니다.이를 통해 e2fsck는 파일 시스템을 확인하는 데 걸리는 시간을 크게 단축할 수 있습니다.Linux 2.6.24 에서는, 이 기능이 실장되고 있습니다.
- 멀티블록 할당기
- ext3가 파일에 추가되면 블록마다 1회씩 블록 할당자를 호출합니다.따라서 여러 개의 동시 기록기가 있는 경우 디스크에서 파일이 쉽게 조각화될 수 있습니다.단, ext4는 지연된 할당을 사용하여 데이터를 버퍼링하고 블록 그룹을 할당할 수 있습니다.따라서 멀티블록 할당자는 디스크에서 연속적으로 파일을 할당하는 방법을 더 잘 선택할 수 있습니다.멀티블록 할당기는 파일이 O_DIRECT 모드로 열려 있는 경우에도 사용할 수 있습니다.이 기능은 디스크 포맷에는 영향을 주지 않습니다.
- 타임스탬프 개선
- 일반적으로 시스템의 속도가 빨라지고 리눅스가 업무상 중요한 응용 프로그램에 더 많이 사용됨에 따라 두 번째 기반 타임스탬프의 세분화도 충분하지 않습니다.이를 해결하기 위해 ext4는 나노초 단위로 측정된 타임스탬프를 제공합니다.또한 타임스탬프 필드의 최상위 비트에 확장 타임스탬프 필드의 2비트가 추가되어 2038년의 문제가 408년간 [3]지연됩니다.
- ext4 에서는, 타임 스탬프도 서포트되고 있습니다.그러나 Theodore Tso가 지적한 바와 같이 inode에 추가 생성 날짜 필드를 추가하는 것은 간단하지만(따라서 ext4에서 이러한 타임스탬프를 기술적으로 지원할 수 있게 됩니다), stat()과 이에 의존하는 다양한 라이브러리(glibc 등)와 같은 필요한 시스템 호출을 수정하거나 추가하는 것은 더 어렵습니다.이러한 변경에는 많은 프로젝트의 [21]조정이 필요합니다.따라서 ext4에 의해 저장된 작성일은 현재 Linux 상의 사용자 프로그램에서만 사용할 수 있습니다.
statx()
API.[22] - 프로젝트 쿼터
- 프로젝트 쿼터에 대한 지원이 2016년 1월 8일 Linux 커널 4.4에 추가되었습니다.이 기능을 사용하면 특정 프로젝트 ID에 디스크 할당량 제한을 할당할 수 있습니다.파일의 프로젝트 ID는 각 파일에 저장된 32비트 번호로 프로젝트 ID가 할당된 상위 디렉터리 아래에 생성된 모든 파일 및 하위 디렉터리에 상속됩니다.이를 통해 UID 및 GID에 의존하는 사용자 및 프로젝트 할당량 등 파일에 대한 파일 액세스 권한과 독립적으로 특정 하위 디렉토리 트리에 할당량 제한을 할당할 수 있습니다.이것은 디렉토리 할당량과 비슷하지만, 주된 차이점은 동일한 프로젝트 ID를 여러 최상위 디렉토리에 할당할 수 있고 엄격하게 [23]계층화되지 않는다는 것입니다.
- 투과적 암호화
- 2015년 [24]6월 Linux 커널 4.1에 투명 암호화 지원이 추가되었습니다.
- 느린 초기화
- lazyinit 기능을 사용하면 백그라운드에서 inode 테이블을 청소할 수 있으므로 새로운 ext4 파일시스템 [25]작성 시 초기화가 신속해집니다.Linux 커널 버전 2.6.[26]37에서 2010년부터 사용할 수 있습니다.
- 쓰기 장벽
- ext4는 기본적으로 쓰기 장벽을 활성화합니다.따라서 쓰기 캐시의 전원이 꺼진 경우에도 파일 시스템 메타데이터가 Disk에 올바르게 기록되고 순서가 지정됩니다.이는 특히 fsync를 많이 사용하거나 많은 작은 파일을 만들고 삭제하는 애플리케이션의 경우 성능 비용이 많이 듭니다.배터리 백업식 쓰기 캐시가 있는 디스크의 경우 장벽(옵션 'barrier=0')을 비활성화하면 안전하게 [27]성능이 향상될 수 있습니다.
제한 사항
2008년 ext3 및 ext4 파일 시스템의 주요 개발자인 Theodore Tso는 ext4는 기능이 향상되었지만 큰 진보는 아니며 오래된 기술을 사용하며 임시방편이라고 말했습니다.Tso는 Btrfs가 "확장성, 신뢰성 및 관리의 용이성을 향상시켜 준다"[28]는 점에서 Btrfs가 더 나은 방향이라고 생각합니다.Btrfs는 또한 "reiser 3/4과 동일한 디자인 아이디어 다수"[29]를 가지고 있습니다.그러나 ext4는 파일 암호화 및 메타데이터 체크섬과 같은 새로운 기능을 계속 획득하고 있습니다.
ext4 파일시스템은 "secure deletion" 파일속성을 따르지 않습니다.이 속성은 삭제 시 파일을 덮어쓰게 됩니다.2011년에 안전한 삭제를 구현하기 위한 패치가 제안되었지만, 기밀 데이터가 파일 시스템 [30]저널에 게재되는 문제는 해결되지 않았습니다.
할당 지연 및 데이터 손실 가능성
지연된 할당은 프로그래머가 ext3에 의존해온 동작을 변화시키기 때문에 이 기능은 모든 데이터가 디스크에 기록되기 전에 시스템이 크래시되거나 전원이 꺼지는 경우 데이터 손실의 추가 위험을 초래합니다.따라서 커널 버전 2.6.30 이후의 ext4는 ext3와 마찬가지로 이러한 케이스를 자동으로 처리합니다.
이 문제가 발생할 수 있는 일반적인 시나리오는 fsync를 사용하여 디스크에 강제로 쓰지 않고 파일 내용을 교체하는 프로그램입니다.UNIX [31]시스템에서 파일 내용을 교체하는 일반적인 방법은 두 가지가 있습니다.
fd=open("file", O_TRUNC); write(fd, data); close(fd);
- 이 경우 기존 파일은 열 때 잘립니다(이 때문에).
O_TRUNC
flag)를 지정하면 새 데이터가 작성됩니다.쓰기에 시간이 걸릴 수 있기 때문에 ext3를 사용해도 내용이 손실될 수 있지만, 보통은 매우 작습니다.그러나 ext4는 파일 데이터 쓰기를 오래 지연시킬 수 있기 때문에 이 기회는 훨씬 커집니다. - 다음과 같은 문제가 발생할 수 있습니다.
- 기입에 실패했을 경우(쓰기 프로그램의 에러 상태, 또는 풀 디스크등의 외부 상태)는, 파일의 원래 버전과 새로운 버전이 모두 없어져, 파일의 일부만이 기입되어 파일이 파손될 가능성이 있습니다.
- 파일을 쓰는 동안 다른 프로세스가 파일에 액세스하면 손상된 버전이 나타납니다.
- 다른 프로세스에서 파일이 열려 있고 파일의 내용이 변경되지 않을 경우 해당 프로세스가 충돌할 수 있습니다.주목할 만한 예로는 실행 중인 프로그램에 매핑된 공유 라이브러리 파일을 들 수 있습니다.
- 이러한 문제 때문에, 많은 경우 위의 용어보다 다음 용어가 선호됩니다.
fd=open("file.new"); write(fd, data); close(fd); rename("file.new", "file");
- 새로운 임시 파일("file.new")이 생성됩니다.이 파일에는 처음에 새로운 내용이 포함됩니다.그런 다음 새 파일의 이름이 이전 파일보다 변경됩니다.에 의한 파일 치환
rename()
콜은 POSIX 표준에 의해 atomic하게 보증됩니다.즉, 오래된 파일이 남아 있거나 새 파일로 덮어쓰게 됩니다.ext3 기본 "순서 있는" 저널링 모드에서는 메타데이터 전에 파일 데이터가 디스크에 기록되므로 이 기술은 이전 파일 내용 또는 새 파일 내용이 디스크에서 유지되도록 보장합니다.ext4의 할당 지연은 파일 쓰기가 장기간 지연될 수 있으며 일반적으로 새 파일 내용이 디스크에 도달하기 전에 이름이 변경되기 때문에 이러한 예상을 깨고 있습니다.
사용.fsync()
ext4의 위험을 줄이기 위해 더 자주 ext3 파일 시스템에서 성능 저하가 발생할 수 있습니다.data=ordered
flag(대부분의 Linux 디스트리뷰션에서는 디폴트).두 파일 시스템 모두 한동안 사용되기 때문에 최종 사용자 애플리케이션 개발자의 문제는 복잡해집니다.이에 대해 Linux 커널 2.6.30 이상에서는 ext4가 이러한 일반적인 경우 발생을 감지하고 파일을 즉시 할당하도록 강제합니다.적은 비용으로 ext3 순서 모드와 유사한 의미론을 제공하여 어느 버전의 파일이 크래시에도 살아남을 수 있는 가능성을 높입니다.이 새로운 동작은 디폴트로 유효하게 되어 있습니다만, 「noauto_da_alloc」마운트 [31]옵션을 사용하면 무효로 할 수 있습니다.
새로운 패치는 메인라인 커널 2.6.30의 일부가 되었지만 다양한 배포에서는 2.6.28 또는 2.6.[32]29로 백포트를 선택했습니다.
이러한 패치는 잠재적인 데이터 손실을 완전히 방지하거나 새 파일에 전혀 도움이 되지 않습니다.안전한 유일한 방법은 다음과 같은 소프트웨어를 작성하고 사용하는 것입니다.fsync()
필요할 때.필요한 중요한 디스크 쓰기를 제한함으로써 성능 문제를 최소화할 수 있습니다.fsync()
발생 [33]빈도를 낮출 수 있습니다.
실행
Linux 커널 가상 파일 시스템은 Linux 커널 내부의 하위 시스템 또는 계층입니다.이는 여러 파일 시스템을 하나의 질서 있는 구조로 통합하려는 매우 심각한 시도의 결과입니다.1986년 [34]Sun Microsystems 직원이 수행한 선구적인 작업으로 거슬러 올라가는 핵심 아이디어는 모든 파일 시스템에 공통적인 파일 시스템 부분을 추출하고 해당 코드를 별도의 계층에 배치하여 데이터를 실제로 관리하는 것입니다.
파일(또는 의사 파일)과 관련된 모든 시스템 호출은 초기 처리를 위해 Linux 커널 가상 파일 시스템으로 전송됩니다.사용자 프로세스에서 발신되는 이러한 콜은 다음과 같은 표준 POSIX 콜입니다.open
,read
,write
,lseek
,기타.
Windows 및 Macintosh와의 호환성
현재 ext4는 Linux 이외의 운영 체제에서 완전히 지원됩니다.
Windows 10 Insider Preview Build 20211 [35][36][37]이후 ext4에 액세스할 수 있습니다.이는 2016년 8월 2일 Windows 10 Anniversary Update(버전 1607)와 함께 도입된 WSL(Windows Subsystem for Linux) 덕분에 가능합니다.WSL은 버전 1607 이후의 64비트판 Windows 10에서만 사용할 수 있습니다.Windows Server 2019에서도 사용할 수 있습니다.2019년 6월 12일 [38]WSL 2가 출시되면서 WSL 아키텍처에 큰 변화가 생겼다.WSL 2에는 x64 시스템의 경우 빌드 18362 이상의 Windows 10 버전 1903 이상이 필요하며 ARM64 [39]시스템의 경우 빌드 19041 이상의 버전 2004 이상이 필요합니다.
Paragon은 Windows 7 SP1/8/8.1/10 및 Windows Server 2008 R2 SP1/2012/2016에서 ext2/3/4 읽기/쓰기 기능을 지원하는 상용 제품인 Linux File Systems for[40] Windows를 제공합니다.
MacOS는 상용 제품인 Paragon [41]Software의 Mac용 extFS를 통해 완전한 ext2/3/4 읽기-쓰기 기능을 제공합니다.ext4fuse와 같은 무료 소프트웨어는 제한된 기능으로 읽기 전용을 지원합니다.
「 」를 참조해 주세요.
레퍼런스
- ^ a b 이전에 Linux는 Windows와 동일한 GUID를 데이터 파티션에 사용했습니다(기본 데이터 파티션: EBD0A0A2-B9E5-4433-87C0-68B72699C7).Linux에는 데이터 파티션에 대해 별도의 고유 파티션 유형 GUID가 정의되어 있지 않았습니다.이로 인해 UEFI-GPT 설정에서 Linux 및 Windows를 듀얼 부팅할 때 문제가 발생했습니다.새로운 GUID(Linux 파일 시스템 데이터: 0FC63DAF-8483-4772-8E79-3D69D8477DE4)는 GPT fdisk와 GNU Parted 개발자에 의해 공동 정의되었습니다.GPT fdisk에서는 타입 코드 0x8300으로 식별됩니다.(gdisk의 parttypes.cc의 정의를 참조해 주세요).
- ^ "DiscoverablePartitionsSpec". freedesktop.org. Retrieved 7 April 2018.
- ^ a b "ext4: Fix handling of extended tv_sec". Linux-stable kernel tree. Retrieved 14 February 2017.
- ^ a b Mathur, Avantika; Cao, MingMing; Bhattacharya, Suparna; Dilger, Andreas; Zhuravlev (Tomas), Alex; Vivier, Laurent (2007). "The new ext4 filesystem: current status and future plans" (PDF). Proceedings of the Linux Symposium. Ottawa, ON, CA: Red Hat. Archived from the original (PDF) on 6 July 2010. Retrieved 15 January 2008.
- ^ Torvalds, Linus (9 June 2006). "extents and 48bit ext3". Linux kernel mailing list.
- ^ Ts'o, Theodore (28 June 2006). "Proposal and plan for ext2/3 future development work". Linux kernel mailing list.
- ^ Leemhuis, Thorsten (23 December 2008). "Higher and further: The innovations of Linux 2.6.28 (page 2)". Heise Online. Archived from the original on 3 January 2009. Retrieved 9 January 2010.
- ^ "ext4: Rename ext4dev to ext4". Linus' kernel tree. Archived from the original on 29 May 2012. Retrieved 20 October 2008.
- ^ Leemhuis, Thorsten (23 December 2008). "Higher and further: The innovations of Linux 2.6.28". Heise Online.
- ^ Paul, Ryan (15 January 2010). "Google upgrading to Ext4, hires former Linux Foundation CTO". Ars Technica.
- ^ "Android 2.3 Gingerbread to use Ext4 file system". The H Open. 14 December 2010.
- ^ "FileSystem in debian". 14 September 2019.
- ^ "Migrating to Ext4". DeveloperWorks. IBM. Archived from the original on 1 December 2008. Retrieved 14 December 2008.
- ^ Hal Pomeranz (28 March 2011). "Understanding EXT4 (Part 3): Extent Trees". SANS Digital Forensics and Incident Response Blog. Archived from the original on 18 August 2019.
- ^ "Mount of ext4 (created without extents) as ext3 fails on RH6.2". www.linuxquestions.org. Retrieved 7 April 2018.
- ^ "Ext4 - Linux Kernel Newbies". kernelnewbies.org.
- ^ "New ext4 features - Ext4". ext4.wiki.kernel.org.
- ^ Prabhakaran, Vijayan; Bairavasundaram, Lakshmi N.; Agrawal, Nitin; Gunawi, Haryadi S.; Arpaci-Dusseau, Andrea C.; Arpaci-Dusseau, Remzi H. "IRON File Systems" (PDF). CS Dept, University of Wisconsin.
{{cite journal}}
:Cite 저널 요구 사항journal=
(도움말) - ^ "Ext4 Metadata Checksums - Ext4". ext4.wiki.kernel.org.
- ^ "Linux_3.5 - Linux Kernel Newbies". kernelnewbies.org.
- ^ Ts'o, Theodore (5 October 2006). "Re: creation time stamps for ext4 ?".
- ^ Edge, Jake (31 March 2017). "Extending statx()".
- ^ Li, Xi (12 January 2016). "Ext4 encryption".
- ^ Ts'o, Theodore (8 April 2015). "Ext4 encryption".
- ^ "Ext4 Filesystem - Thomas-Krenn-Wiki". www.thomas-krenn.com.
- ^ "kernel/git/torvalds/linux.git - Linux kernel source tree". git.kernel.org.
- ^ "Ext4 - ArchWiki". wiki.archlinux.org.
- ^ Paul, Ryan (14 April 2009). "Panelists ponder the kernel at Linux Collaboration Summit". Ars Technica. Retrieved 22 August 2009.
- ^ Theodore Ts'o (1 August 2008). "Re: reiser4 for 2.6.27-rc1". linux-kernel (Mailing list). Retrieved 31 December 2010.
- ^ Corbet, Jonathan (11 October 2011). "Securely deleting files from ext4 filesystems".
- ^ a b "ext4 documentation in Linux kernel source". 28 March 2009.
- ^ Ubuntu 버그 #317781 Ubuntu 개발자와 Theodore Tso 간의 데이터 손실 가능성에 대한 오랜 논의
- ^ Ted 블로그 엔트리에 의한 생각, 2009년 3월 12일 Theodore Ts'o의 블로그 게시물
- ^ 클라이만
- ^ Brandon LeBlanc (10 September 2020). "Announcing Windows 10 Insider Preview Build 20211". Windows Blogs. Retrieved 25 May 2021.
- ^ Pierre Boulay (10 September 2020). "Access Linux filesystems in Windows and WSL 2". Windows Command Line. Retrieved 25 May 2021.
- ^ "Get started mounting a Linux disk in WSL 2". Microsoft Docs. Retrieved 25 May 2021.
- ^ Craig Loewen (12 June 2019). "WSL 2 is now available in Windows Insiders". Windows Command Line. Retrieved 25 May 2021.
- ^ "Windows Subsystem for Linux Installation Guide for Windows 10". Windows Docs. Retrieved 25 May 2021.
- ^ "Linux File Systems for Windows". Paragon Software. Retrieved 25 May 2021.
- ^ "extFS for Mac". Paragon Software. Retrieved 25 May 2021.
외부 링크
- Linux 커널 소스의 ext4 설명서
- Theodore Tso의 ext4에 대한 토론, 2006년 6월 29일
- "ext4 온라인 조각 모음" (Ottawa Linux Symposium 2007 자료)
- "새로운 ext4 파일 시스템: 현황과 미래 계획" (Ottawa Linux Symposium 2007 자료)
- 커널 로그: Ext4는 btrfs에 대한 중간 단계로서 개발 단계를 완료, 2008년 10월 17일
- "Ext4 블록 및 inode 할당자 개선" (Ottawa Linux Symposium 2008 자료)
- "Ext4: 차세대 Ext2/3 파일 시스템"
- Ext4(및 Ext2/Ext3) Wiki
- Ext4 Wiki ( kernelnewbies.org )
- Windows의 Ext4 네이티브 포트 및 CROSSMETA의 기타 FS
- Ext2read 익스텐트 및 LVM2 지원으로 ext2/ext3/ext4 파일을 읽기/복사하는 Windows 응용 프로그램.
- Ext2Fsd Windows용 오픈소스 ext2/ext3/ext4 읽기/쓰기 파일 시스템 드라이버.ext4는 버전 0.50 이후에 지원됩니다.
- FUSE용 Ext4fuse 오픈 소스 읽기 전용 Ext4 드라이버(MacFuse 사용 시 Mac OS X 10.5 이상 지원)