to summarize (on linux):

directories with 555 permissions (no files can be created in them) in
which the archive needs to write some files:

plan9/mnt/exportfs
plan9/mnt/cons

these are absolutely necessary in order to extract the distribution,
but there are many other files and directories which have no
user-writable bit set, and which may be required for proper operation
while inside plan9 (for example, one can't modify the acme guide
file):

directories in which files can't be created (u-w)

plan9/mail/fs
plan9/tmp
plan9/n/d:
plan9/n/tapefs
plan9/n/a:
plan9/n/kremvax
plan9/n/c:
plan9/n/temp
plan9/n/a
plan9/n/9
plan9/n/kfs
plan9/n/ftp
plan9/n/sources
plan9/n/boot
plan9/n/c
plan9/n/paq
plan9/n/sid
plan9/n/b
plan9/n/dist
plan9/n/9fat
plan9/sys/lib/dist/cdstub
plan9/mnt/term
plan9/mnt/acme
plan9/mnt/web
plan9/mnt/lp
plan9/mnt/doc
plan9/mnt/apeselect
plan9/mnt/arch
plan9/mnt/netkeys
plan9/mnt/ums
plan9/mnt/webcookies
plan9/mnt/temp
plan9/mnt/consoles
plan9/mnt/rdb
plan9/mnt/wiki
plan9/mnt/cd
plan9/mnt/apm
plan9/mnt/plumb
plan9/mnt/wrap
plan9/mnt/cons
plan9/mnt/exportfs
plan9/mnt/keys
plan9/mnt/wsys

files which can't be modified (u-w):

plan9/acme/mail/guide
plan9/acme/bin/guide
plan9/acme/news/guide
plan9/acme/wiki/guide
plan9/acme/acid/guide
plan9/lib/font/bit/lucidasans/boldunicode.13.font
plan9/lib/font/bit/lucidasans/typeunicode.12.font
plan9/lib/font/bit/lucidasans/boldunicode.8.font
plan9/lib/font/bit/lucidasans/boldunicode.10.font
plan9/lib/font/bit/lucidasans/typeunicode.16.font
plan9/lib/font/bit/lucidasans/italicunicode.6.font
plan9/lib/font/bit/lucidasans/italicunicode.13.font
plan9/lib/font/bit/lucidasans/italicunicode.10.font
plan9/lib/font/bit/lucidasans/typeunicode.9.font
plan9/lib/font/bit/lucidasans/italicunicode.7.font
plan9/lib/font/bit/lucidasans/boldunicode.6.font
plan9/lib/font/bit/lucidasans/typeunicode.6.font
plan9/lib/font/bit/lucidasans/italicunicode.8.font
plan9/lib/font/bit/lucidasans/boldunicode.7.font
plan9/lib/font/bit/lucida/NOTICE
plan9/lib/font/bit/misc/unicode.6x13.font
plan9/lib/face/48x48x8/c/coraid.1
plan9/lib/sky/patch.scat
plan9/lib/sky/bayer.scat
plan9/lib/sky/name.scat
plan9/lib/sky/constelnames
plan9/lib/sky/mindex.scat
plan9/lib/sky/here
plan9/lib/sky/abell.scat
plan9/lib/sky/conindex.scat
plan9/lib/sky/patchindex.scat
plan9/lib/sky/estartab
plan9/lib/sky/sao.scat
plan9/lib/sky/ngc2000type.scat
plan9/lib/sky/con.scat
plan9/NOTICE
plan9/sys/src/cmd/postscript/misc/README
plan9/sys/src/cmd/postscript/misc/lp.model
plan9/sys/src/cmd/postscript/misc/ibmfont.c
plan9/sys/src/cmd/postscript/misc/laserbar.1
plan9/sys/src/cmd/postscript/misc/pscrypt.c
plan9/sys/src/cmd/postscript/misc/macfont.c
plan9/sys/src/cmd/postscript/misc/setbaud.ps
plan9/sys/src/cmd/postscript/misc/laserbar.c
plan9/sys/src/9/pc/a100p.cp
plan9/sys/src/NOTICE
plan9/sys/doc/sam/refs
plan9/sys/doc/sam/fig7.pic
plan9/sys/doc/sam/sam.ms
plan9/sys/doc/sam/sam.tut
plan9/sys/doc/sam/fig5.pic
plan9/sys/doc/sam/fig6.pic
plan9/sys/doc/sam/fig3.bm
plan9/sys/doc/sam/fig1.bm
plan9/sys/doc/sam/fig2.bm
plan9/sys/doc/sam/fig4.bm
plan9/sys/lib/postscript/font/NOTICE
plan9/sys/lib/webls.denied
plan9/sys/lib/ghostscript/font/README
plan9/sys/lib/astar/a100p.cp
plan9/LICENSE

so, to uncompress the archive in linux (or osx, or bsd, i presume) do:

$ tar jxvf plan9.tar.bz2 plan9/mnt/cons plan9/mnt/exportfs --mode 755
> /dev/null
[messages about ignored headers]
$ tar jxvf plan9.tar.bz2 --exclude plan9/mnt/cons --exclude
plan9/mnt/exportfs > /dev/null
[messages about ignored headers]

and to fix the files (until they are fixed in the original archive) do:

$ find plan9 -not -perm -200 -print0 | xargs -0 chmod u+w

at this point if you have p9p installed you can run the following
command to ensure that you have everything uncompressed without any
errors:

$ 9 bunzip2 < plan9.tar.bz2 | 9 tar xv

Reply via email to