본문 바로가기
리눅스

ext4

by 다움위키 2023. 12. 8.

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