New snap with this fix and while at it I added a restore option. http://www.peereboom.us/diskrescue/snapshot/diskrescue-0.3.tgz
So that makes me 2 for 2 this weekend. Restored a fileserver with bad disks and a tivo. Damn lightning (or the Matrix!). On Sun, Sep 27, 2009 at 03:21:24PM -0700, Aaron Stellman wrote: > On Sun, Sep 27, 2009 at 03:40:31PM -0500, Marco Peereboom wrote: > > I created a new version that adds restartable recovery operation. I > > needed this to recover my tivo after a disk simply stopped responding > > after a while. So I restarted it until I had the whole damn thing > > recovered. > > > > snap at: http://www.peereboom.us/diskrescue/snapshot/diskrescue-0.2.tgz > > > > Hello Marco, > > $ sudo ./diskrescue -r /dev/rsd0c -b 1m -R res verify > 0.1% > <<hit ^C>> > terminating > Segmentation fault (core dumped) > > #0 fclose (fp=0x0) at /usr/src/lib/libc/stdio/fclose.c:44 > #1 0x00000000004020ad in main () > > --- diskrescue.c.orig Sun Sep 27 15:03:01 2009 > +++ diskrescue.c Sun Sep 27 15:10:53 2009 > @@ -562,10 +562,16 @@ > printf("\r%.1f%%\n", 100.0); > > done: > - fflush(ofd); > - fflush(resfd); > - fclose(ofd); > - fclose(resfd); > + if (outfile) { > + fflush(ofd); > + fclose(ofd); > + } > + > + if (resfile) { > + fflush(resfd); > + fclose(resfd); > + } > + > close(fd); > > return (0); >
