Date: Wed, 07 Jun 2006 14:21:46 +0200 From: Robin Elfrink <elfrink@introweb.nl> To: Eric Anderson <anderson@centtech.com> Cc: freebsd-isp@freebsd.org Subject: Re: Recovery from disk+fs crash Message-ID: <4486C4DA.6080905@introweb.nl> In-Reply-To: <56782.10.20.200.100.1149599550.squirrel@10.20.200.100> References: <44852CF1.5070300@introweb.nl> <62208.10.20.200.100.1149598242.squirrel@10.20.200.100> <44857BA4.90405@introweb.nl> <56782.10.20.200.100.1149599550.squirrel@10.20.200.100>
index | next in thread | previous in thread | raw e-mail
Eric Anderson wrote:
>>>>root@:~# fsck /dev/da0s1f
>>>>** /dev/da0s1f (NO WRITE)
>>>>cannot alloc 18446744067446403432 bytes for inphead
> You could go in with fsdb and fix the parts manually, but it wouldn't be
root@:~# fsdb /dev/da0s1f
** /dev/da0s1f (NO WRITE)
cannot alloc 18446744067446403432 bytes for inphead
fsdb: cannot set up file system '/dev/da0s1f'
Following is in fsck's setup.c:
inphead = (struct inoinfo **)calloc((unsigned)numdirs,
sizeof(struct inoinfo *));
if (inpsort == NULL || inphead == NULL) {
printf("cannot alloc %u bytes for inphead\n",
(unsigned)numdirs * sizeof(struct inoinfo *));
goto badsb;
}
So I suppose somehow the number of directories somewhere is over the
top. I'm afraid the only thing left is to do hexedit on the disk...
Robin
home |
help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4486C4DA.6080905>
