FAT32 파티션에서 더티 비트를 수동으로 설정하는 방법

FAT32 파티션에서 더티 비트를 수동으로 설정하는 방법

일부 디버깅 목적으로 수동으로놓다FAT32 파티션의 더티 비트는 사실입니다.

사용방법에 대한 많은 fsck.vfat정보를 알아보았는데요제거하다조금 더러워졌지만 방법은 없습니다.놓다그것.

이것이 가능하기 때문에 가능합니다 mount. FAT32 파티션을 마운트할 때(dirty가 false인 경우) mountdirty를 true로 설정합니다(그리고 umount다시 false로 설정합니다). 파티션을 마운트하지 않고 더티 비트를 설정하는 방법, 즉 파티션이 완전히 마운트 해제되지 않는 것을 시뮬레이션하는 방법을 찾고 있습니다.

답변1

더티 비트는 장치가 마운트되거나 마운트 해제될 때 커널에서 설정되고 지워집니다.http://lxr.free-electrons.com/source/fs/fat/inode.c?v=3.19#L578구현을 위해. 현재 마운트 및 마운트 해제를 제외하고는 커널 외부에서 이 기능에 액세스할 수 있는 방법이 없습니다.

직접 설정하려면 장치를 직접 조정해야 합니다. 상태 바이트는 0x25FAT16 장치의 부팅 섹터 오프셋 에 있고 0x41FAT32 장치의 오프셋은 비트 0입니다. 보다https://en.wikipedia.org/wiki/Design_of_the_FAT_file_system더 알아보기.

관련 정보