ext4 및 jbd2 더티 메타데이터

ext4 및 jbd2 더티 메타데이터

RiotBoard 기반 임베디드 시스템이 있고 MMC의 기본 파일 시스템이 읽기 전용으로 설정되어 있고 쓰기 가능한 저장소용 8GB USB 플래시 드라이브가 있습니다. rootfs는 데비안, Linux 커널 버전 4.3.0-rc2-00019-gbcee19f입니다.

드라이브 포맷 명령은 다음과 같습니다.
mkfs.ext4 -U 2d4d3021-ebaf-4e29-b0e4-e8068d3bd237 /dev/sda1 tune2fs /dev/sda1 -i 0 //Don't check against time clock tune2fs /dev/sda1 -c 1 //Check every time

및 FSTAB 라인

UUID=2d4d3021-ebaf-4e29-b0e4-e8068d3bd237 /mnt/USB1 ext4 data=journal,nofail 0 2

이 오류가 계속 발생합니다.

JBD2: 더티 메타데이터 버퍼가 발견되었습니다(dev=sda1, blocknr=1087488). 시스템이 충돌하면 파일 시스템이 손상될 위험이 있습니다.

blocknr은 매번 증가합니다. 이는 예상치 못한 정전이든 명령줄에서의 재부팅이든 관계없이 발생합니다. 나는 이 드라이브에 실제로 뭔가 문제가 있는 것 같다고 생각합니다. 그것은 새로운 sandisk 브랜드 드라이브입니다.

편집 1: 드라이브를 다시 포맷하면 이 문제가 해결되므로 /etc/default/rcS의 FSCKFIX=yes가 이 문제를 해결하지 못하는 이유가 무엇인지 잘 모르겠습니다. e2fsck의 출력은 다음과 같습니다.

Checking file systems...fsck from util-linux 2.20.1
e2fsck 1.42.5 (29-Jul-2012)
/dev/sda1: recovering journal
/dev/sda1 has been mounted 1 times without being checked, check forced.
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
Free blocks count wrong (1886088, counted=1886055).
Fix? yes
/dev/sda1: ***** FILE SYSTEM WAS MODIFIED *****
/dev/sda1: 57/488640 files (17.5% non-contiguous), 68117/1954172 blocks
fsck died with exit status 1
***skipped lines here***
JBD2: Spotted dirty metadata buffer (dev = sda1, blocknr = 1084928). There's a risk of filesystem corruption in case of system crash.

관련 정보