Re: Joliet and release ISOs?

From: Jung-uk Kim <jkim_at_FreeBSD.org>
Date: Fri, 24 Jul 2009 15:14:16 -0400
On Friday 24 July 2009 01:59 am, Tim Kientzle wrote:
> Jung-uk Kim wrote:
> > The "--options=!joliet" trick didn't work for me:
> >
> > # uname -mrs
> > FreeBSD 8.0-BETA2 amd64
> > # tar -x --options=!joliet -p -f ../8.0-BETA2-amd64-livefs.iso
> > # cd rescue
> > # ls -il
> > total 4204
> > 3326283 -r-xr-xr-x  131 root  wheel  4485472  7 15 17:09 [
> > 3326283 -r-xr-xr-x  131 root  wheel  4485472  7 15 17:09
> > atacontrol 3326283 -r-xr-xr-x  131 root  wheel  4485472  7 15
> > 17:09 atmconfig 3326283 -r-xr-xr-x  131 root  wheel  4485472  7
> > 15 17:09 badsect ...
> > 3326283 -r-xr-xr-x  131 root  wheel  4485472  7 15 17:09 whoami
> > 3326283 -r-xr-xr-x  131 root  wheel  4485472  7 15 17:09 zcat
> > 3326283 -r-xr-xr-x  131 root  wheel  4485472  7 15 17:09 zfs
> > 3326283 -r-xr-xr-x  131 root  wheel  4485472  7 15 17:09 zpool
> > # file atacontrol
> > atacontrol: data
> > # hexdump atacontrol
> > 0000000 0000 0000 0000 0000 0000 0000 0000 0000
> > *
> > 0447160
>
> Try the attached patch; I believe this corrects the
> reading of hardlinks from iso9660 images.

Thanks, that did it!

Still, there is one minor annoyance:

%ls -l test
total 0
lrwxr-xr-x  1 jkim  staff  1  7 24 14:54 link1 -> /
lrwxr-xr-x  1 jkim  staff  2  7 24 14:55 link2 -> //
lrwxr-xr-x  1 jkim  staff  2  7 24 14:55 link3 -> /.
lrwxr-xr-x  1 jkim  staff  2  7 24 14:55 link4 -> ./
lrwxr-xr-x  1 jkim  staff  2  7 24 14:55 link5 -> ..
lrwxr-xr-x  1 jkim  staff  4  7 24 14:56 link6 -> /tmp
lrwxr-xr-x  1 jkim  staff  5  7 24 14:56 link7 -> //tmp
lrwxr-xr-x  1 jkim  staff  4  7 24 14:56 link8 -> tmp/
lrwxr-xr-x  1 jkim  staff  5  7 24 14:56 link9 -> /tmp/
%sh /usr/src/release/amd64/mkisoimages.sh test test.iso test
Total translation table size: 0
Total rockridge attributes bytes: 1045
Total directory bytes: 0
Path table size(bytes): 10
Max brk space used 0
181 extents written (0 MB)
%tar -t --options=\!joliet -v -f test.iso
drwx------  0 0      0        2048  7 24 14:56 .
lr-xr-xr-x  1 0      0           0  7 24 14:56 link9 -> //tmp/
lr-xr-xr-x  1 0      0           0  7 24 14:56 link8 -> tmp/
lr-xr-xr-x  1 0      0           0  7 24 14:56 link7 -> ///tmp
lr-xr-xr-x  1 0      0           0  7 24 14:56 link6 -> //tmp
lr-xr-xr-x  1 0      0           0  7 24 14:55 link5 -> ..
lr-xr-xr-x  1 0      0           0  7 24 14:55 link4 -> ./
lr-xr-xr-x  1 0      0           0  7 24 14:55 link3 -> //.
lr-xr-xr-x  1 0      0           0  7 24 14:55 link2 -> ///
lr-xr-xr-x  1 0      0           0  7 24 14:54 link1 -> /

Note there is an additional `/' when the link has a leading `/' (but 
not just `/'), i.e., `//' => `///', `/.' => `//.', `/tmp' => `//tmp', 
`//tmp' => `///tmp'.  For FreeBSD CD-ROMs, `stand -> /rescue' becomes 
`stand -> //rescue', etc.

Can you take a look at it, too?

Thanks a lot!

Jung-uk Kim
Received on Fri Jul 24 2009 - 17:14:28 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:52 UTC