Date: Sat, 18 Feb 2006 19:00:55 +0100 From: Wilko Bulte <wb@freebie.xs4all.nl> To: "M. Warner Losh" <imp@bsdimp.com> Cc: hackers@freebsd.org Subject: Re: Bad block -> file mapping Message-ID: <20060218180055.GA63046@freebie.xs4all.nl> In-Reply-To: <20060218.104749.104696960.imp@bsdimp.com> References: <20060218.102145.26324437.imp@bsdimp.com> <200602181735.k1IHZOuj040864@gate.bitblocks.com> <20060218.104749.104696960.imp@bsdimp.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, Feb 18, 2006 at 10:47:49AM -0700, M. Warner Losh wrote.. > In message: <200602181735.k1IHZOuj040864@gate.bitblocks.com> > Bakul Shah <bakul@bitblocks.com> writes: > : > I have a hard disk that's been in service a long time. I recently > : > installed the SMART monitoring tools. On occasion, I get reports of > : > LBAs it can't read. I'd like to map the LBA to an actual file in the > : > file system, if possible. Does anybody have any tools that can help > : > me with this? > : > > : > I know I need to get a new disk. In the mean time, I need to cope > : > with these errors in a sane manner... > : > > : > Warner > : > > : > P.S. Here's a sample report: > : > > : > Num Test_Description Status LifeTime(hours) LBA_of_first_error > : > # 1 Extended offline Completed: read failure 8949 65818210 > : > # 2 Short offline Completed without error 8948 - > : > : Wouldn't bad block forwarding by the disk take care of this? > : Generally you want the read of a bad block to return an error > : but if you write the block the disk will automatically remap > : this block to one of the spare blocks. > > Correct. That's exactly what I'm trying to do. > > : What exactly are you trying to do by mapping a bad block to a > : file? Nevertheless may be fsdb will help? You still need to > : map LBA to the slice/partition offset. > > Right, I've mapped the lba to a partition, and used badsect to request > that at the next fsck the file that contains the bad block be removed > and replaced with the file in BAD. However, I'd kinda like to know > which file that is. If it is a boring file (foo.o, say), I'd dd the > bad block with 0's and then remove it. If it is a non-boring file, > I'd try to recover it a couple of times, etc. > > Once I have the file in BAD, I'd planned on overwriting it with 0's > and then removing it if I could read the block again. > > Maybe there's a better way to cope, maybe not. I don't know. Hence > my question :-). > > This is with an ata disk, btw. Obviously. But for intents and purposes it could have been an RK05 :-P So much for progress -- Wilko Bulte wilko@FreeBSD.org
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060218180055.GA63046>