Messages in this thread |  | | Date | Fri, 1 Nov 1996 17:39:41 -0500 | From | "Theodore Y. Ts'o" <> | Subject | Re: SCSI Sector Size Problem |
| |
From: Matthew X Economou <econommx@rose-hulman.edu> Date: 31 Oct 1996 16:34:01 -0500
>>>>> "SA" == System Administration <root@chaos.analogic.com> writes:
SA> If not, temporarily partition and format it with DOS. MS-DOS SA> reads the entire disk drive during its high-level format. This SA> will force bad blocks to be reloated.
Why doesn't mke2fs do proper bad-block checking? I've had several floppies that had bad sectors on them that either (a) weren't detected by fdformat or (b) weren't detected by mke2fs. My only option was to format them with (Yggdrasil's) mkdosfs, which actually does the bad-block checking.
mke2fs will do bad-block checking if you use the -c option. This, like MS-DOS reads the entire disk drive during its high-level format. The problem is that this doesn't catch all errors.
The badblocks program (which is what mke2fs calls) also has an option for doing a distructive read/write test. The problem is that it takes a *lot* longer, and there currently isn't an option to mke2fs which will cause it to run badblocks with its -w option.
Linux's Second Extended file system doesn't seem to be very fault tolerant. Because if there's a bad sector on the disk, the -c option won't catch it, even though everything else (including the kernel) does see it (and then panics, usually).
The -c option to mke2fs should catch everything that MS-DOS does if MS-DOS is only doing a read test. The kernel currently panics if the bad block appears in the inode table; and even that can be configured so that the error is (a) ignored or (b) causes the filesystem to be remounted read-only. So it is possible to have the MS-DOS behavior of obliviously ignoring disk errors.
- Ted
|  |