On 5/26/26 03:26, Jason Tubnor wrote:
On 26/5/26 14:11, Paul W. Rankin wrote:
If it is disk corruption (on 7.8) is there a way to find out?
Running fsck and/or checking dmesg for device IO errors:
sd0(umass0:1:0): Check Condition (error 0x70) on opcode 0x28
SENSE KEY: Media Error
ASC/ASCQ: Unrecovered Read Error
sd0(umass0:1:0): Check Condition (error 0x70) on opcode 0x28
SENSE KEY: Media Error
ASC/ASCQ: Unrecovered Read Error
sd0(umass0:1:0): Check Condition (error 0x70) on opcode 0x28
SENSE KEY: Media Error
ASC/ASCQ: Unrecovered Read Error
Cheers.
First of all, fsck is a file system integrity checker. It does NOT check
for proper disk function. fsck is good at what it does, but don't expect
it to spot a failing drive.
AND I've found some disk errors do not get logged to dmesg. This is NOT
what I'd have expected.
BUT...from what I've seen, if the OP's problem was caused by disk errors,
I'd expect to see a message somewhere about that -- not just corrupted
files. Now...there may have been a bad spot leading to corrupted files
being copied somewhere, that error message was missed, but now the files
are messed up.
If a file system corruption caused the file problems, then fsck would fix
the file system corruption, but it doesn't necessarily restore the
contents of the damaged files -- it just makes them proper files on a
proper file system.
But back to funky disk problems:
something I've been playing with, due to having found a disk problem on my
primary machine recently:
# dd if=/dev/rsd0c of=/dev/null bs=1m
basically read the entire disk surface. If dd completes without errors, all
is good. If it doesn't, repeat for each partition within the disk to find
where you have problems.
yes, this seemingly can be run while the system is live...and I've also run
it against individual drives in a softraid mirrored set, again without issue
(if you can think of an issue regarding reading the raw device in a live
system, please inform the world I'm an idiot before people take my advice!)
here's one of my machines which shows a problem:
# dd if=/dev/rsd0c of=/dev/null bs=1m
doas ([email protected]) password:
dd: /dev/rsd0c: Input/output error
1223+0 records in
1223+0 records out
1282408448 bytes transferred in 21.284 secs (60252229 bytes/sec)
Nick.