ext4 저널링 파일 시스템 또는 네 번째 확장된 파일 시스템은 ext3의 후계자로 개발된 리눅스에 대한 저널링 파일 시스템입니다.
ext4는 처음에 ext3에 대한 일련의 하위-호환되는 확장이었으며, 그중 다수는 원래 2003년과 2006년 사이에 Lustre 파일 시스템에 대해 Cluster File Systems에 의해 개발했으며, 이는 저장소 제한을 확장하고 기타 성능 향상을 추가하기 위한 것이었습니다. 어쨌든, 다른 리눅스 커널 개발자들은 안정성을 이유로 ext3에 대한 확장을 받아들이는 것을 반대하고, 기존 ext3 사용자에게 영향을 주지 않고 ext3의 소스 코드를 분기하고 ext4로 이름을 변경하고 모든 개발을 수행할 것을 제안했습니다. 이 제안이 받아들여졌고, 2006년 6월 28일, ext3 관리자, Theodore Ts'o는 ext4에 대해 새로운 개발 계획을 발표했습니다.
ext4의 예비 개발 버전은 리눅스 커널 버전 2.6.19에 포함되었습니다. 2008년 10월 11일, ext4를 안정적인 코드로 표시하는 패치가 리눅스 2.6.28 소스 코드 저장소에 병합되었으며, 개발 단계의 끝을 나타내고 ext4 채택을 권장합니다. ext4 파일 시스템을 포함하는 커널 2.6.28이 2008년 12월 25일에 마침내 출시되었습니다. 2010년 1월 15일, 구글은 저장소 인프라를 ext2에서 ext4로 업그레이드할 것이라고 발표했습니다. 2010년 12월 14일, 구글은 안드리이드 2.3에서 YAFFS 대신 ext4를 사용할 것이라고 발표했습니다.
Using data=writeback
기본 설정에서 대체로 부팅에 문제가 발생하는 경우가 적고, 문제가 생기더라도 fsck로 고쳐져서 부팅이 가능하게 되지만, 이 설정에서는 부팅이 되지 않는 문제가 생기기도 합니다. 자세한 원인을 파악하지는 않았지만, 쉬운 방법으로 부팅이 되도록 만들기 힘듭니다. 따라서 특별한 이유가 있지 않을 경우에는 이 설정으로 변경하지 말아야 합니다!!
몇 가지 이유로 ext4 모드 중에서 기본으로 설치된 data=ordered 모드에서 data=writeback로 전환하려고 시도합니다.
라이브시디로 부팅을 합니다. 터미널을 열고 다음 과정을 진행할 수 있습니다:
- sudo su
- tune2fs -O ^has_journal /dev/vda1
- tune2fs -o journal_data_writeback /dev/vda1
- mount /dev/vda1 /mnt
- for fs in proc sys dev dev/pts; do mount --bind /$fs /mnt/$fs; done
- chroot /mnt
- nano /etc/default/grub
GRUB_CMDLINE_LINUX="rootflags=data=writeback"
- update-grub
- nano /etc/fstab
noatime,data=writeback 옵션에 추가하십시오.
- reboot
Confirm
- sudo tune2fs -l /dev/vda1 | grep "Default mount options"
Default mount options: journal_data_writeback user_xattr acl
원래대로, data=ordered로 돌아가고 싶으면, 위의 과정에서 writeback을 ordered로 바꾸어서 진행하실 수 있습니다.
External links
- ext4 옵션 벤치마킹 결과
- ext4 documentation in Linux kernel source
- Theodore Ts'o's discussion on ext4, 29 June 2006
- "ext4 online defragmentation" (materials from Ottawa Linux Symposium 2007)
- "The new ext4 filesystem: current status and future plans" (materials from Ottawa Linux Symposium 2007)
- Kernel Log: Ext4 completes development phase as interim step to btrfs, 17 October 2008
- "Ext4 block and inode allocator improvements" (materials from Ottawa Linux Symposium 2008)
- "Ext4: The Next Generation of Ext2/3 Filesystem"
- Ext4 (and Ext2/Ext3) Wiki
- Ext4 wiki at kernelnewbies.org
- Native Windows port of Ext4 and other FS in CROSSMETA
- Ext2read A windows application to read/copy ext2/ext3/ext4 files with extent and LVM2 support.
- Ext2Fsd Open source ext2/ext3/ext4 read/write file system driver for Windows. ext4 is supported from version 0.50 onwards
- Ext4fuse Open source read-only ext4 driver for FUSE. (Supports Mac OS X 10.5 and later, using MacFuse)