Package: dosfstools
Version: 4.2-1.2
Severity: important
Tags: upstream
X-Debbugs-Cc: [email protected]

Dear Maintainer,

The primary case of dosfsck is repairing damage due to power loss. This means
the most important checks are these:
* Check for damaged FAT due to power loss
* Check for lost clusters (possibly file not saved to directory)
* Check for extra clusters (probably file grew)

However, the damaged FAT check is completely broken in dosfsck. I haven't
been able to tell exactly what the problem is, but the sector-by-sector
comparitor is definitely not present. It's trying some sense over the whole
FAT that doesn't actually work.

This is a unit test for a more powerful algorithm that weighs the FAT
sectors, but it definitely displays the problem. dosfsck guesses wrong and
thinks the first FAT is correct without prompting. In any case, dosfsck
completely can't handle the situation and even if it got to the prompt case,
there's just not enough information to proceed.

https://github.com/joshudson/dossuperfloppy/raw/refs/heads/master/scantests/basefat16.img.bz2

This is a full disk image, the filesystem starts at sector 7.

-- System Information:
Debian Release: 13.2
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500, 'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 6.12.57+deb13-amd64 (SMP w/12 CPU threads; PREEMPT)
Kernel taint flags: TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=en_US, LC_CTYPE=en_US (charmap=ISO-8859-1), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: sysvinit (via /sbin/init)
LSM: AppArmor: enabled

Versions of packages dosfstools depends on:
ii  libc6  2.41-12

dosfstools recommends no packages.

dosfstools suggests no packages.

-- no debconf information

Reply via email to