On Tue, Feb 17, 2004 at 02:21:21AM -0800, Kris Kennaway wrote:
> 5BOn Tue, Feb 17, 2004 at 11:16:50AM +0100, Stefan Krantz wrote:
> >
> > On Tue, 17 Feb 2004, Kris Kennaway wrote:
> >
> > > On Tue, Feb 17, 2004 at 10:49:47AM +0100, Stefan Krantz wrote:
> > > >
> > > > Hi!
> > > >
> > > > I would like to extract a large (11GB) tar file on an ext3 filesystem. But
> > > > it shows only to be about 3gb large:
> > > >
> > > > yabba# ls -la pictures.tar
> > > > -rw-r--r-- 1 root wheel 3317055488 Feb 15 19:03 pictures.tar
> > > >
> > > > Is there any possible way to extract the file?
> > >
> > > It shouldn't be appearing truncated. Are you certain that this size
> > > is incorrect, and the file has a different size when viewed from
> > > another OS?
> >
> > Yes. Yesterday I tested the archive with "tar tvf" (11gb) in
> > Linux and it tested OK. In FBSD it says "unexpected EOF".
> >
> > If I could i would just boot linux and split the file. But I can nolonger
> > boot linux =/ (migrated to fbsd 5.2 ;).
>
> I'm CC'ing tjr and bde, who might have some idea about the problem.
Advertising
Try this patch and let me know how it goes. You'll have to specify
the file name of /sys/gnu/ext2fs/ext2_inode_cnv.c to patch(1) manually,
then either buildkernel or rebuild only ext2fs.ko. If the file shows
up with the correct size in a directory listing, make sure you can actually
read data past 4 GB.
==== //depot/user/tjr/freebsd-tjr/src/sys/gnu/ext2fs/ext2_inode_cnv.c#1 -
/p4/tjr/src/sys/gnu/ext2fs/ext2_inode_cnv.c ====
@@ -77,6 +77,8 @@
*/
ip->i_mode = ei->i_links_count ? ei->i_mode : 0;
ip->i_size = ei->i_size;
+ if (S_ISREG(ip->i_mode))
+ ip->i_size |= ((u_int64_t)ei->i_size_high) << 32;
ip->i_atime = ei->i_atime;
ip->i_mtime = ei->i_mtime;
ip->i_ctime = ei->i_ctime;
@@ -112,6 +114,8 @@
*/
ei->i_dtime = ei->i_links_count ? 0 : ip->i_mtime;
ei->i_size = ip->i_size;
+ if (S_ISREG(ip->i_mode))
+ ei->i_size_high = ip->i_size >> 32;
ei->i_atime = ip->i_atime;
ei->i_mtime = ip->i_mtime;
ei->i_ctime = ip->i_ctime;
_______________________________________________
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "[EMAIL PROTECTED]"