]> git.lizzy.rs Git - plan9front.git/blob - rc/bin/9fs
Import sources from 2011-03-30 iso image - lib
[plan9front.git] / rc / bin / 9fs
1 #!/bin/rc
2 # 9fs filesystem [mountpoint] - srv & mount filesystem, usually from plan 9
3
4 rfork e
5 switch($1){
6 case ''
7         echo usage: 9fs service '[mountpoint]' >[1=2]
8         exit usage
9 case kfs
10         if(! test -f /srv/kfs)
11                 disk/kfs
12         mount -c /srv/kfs /n/kfs
13 case dump
14         mount /srv/boot /n/dump dump >[2]/dev/null ||
15                 mount /srv/boot /n/dump main/archive ||
16                 mount /srv/boot /n/dump dump    # again to print error
17 case snap
18         mount /srv/boot /n/snap main/snapshot
19 case other
20         mount -C /srv/boot /n/other other
21 case juke                                       # ye olde file server
22         srv -q il!jukefs && mount /srv/il!jukefs /n/juke
23 case sources
24         srv -nq tcp!sources.cs.bell-labs.com sources /n/sources
25 case sourcesdump
26         9fs sources
27         mount -n /srv/sources /n/sourcesdump main/archive
28 case sourcessnap
29         9fs sources
30         mount -n /srv/sources /n/sourcessnap main/snapshot
31 # arbitrary venti archives
32 case vac:*
33         vacfs <{echo $1}
34 case *.vac
35         if (test -e $1)
36                 score=$1
37         if not if (! ~ $1 /* && test -e $home/lib/vac/$1)
38                 score=$home/lib/vac/$1
39         if not if (! ~ $1 /* && test -e /lib/vac/$1)
40                 score=/lib/vac/$1
41         if not {
42                 echo $0: $1: no such score file >[1=2]
43                 exit 'no score file'
44         }
45         vacfs -m /n/`{basename $1 .vac} `{cat $score}
46 case wiki
47         srv -m 'net!plan9.bell-labs.com!wiki' wiki /mnt/wiki
48 case *
49         switch($#*){
50         case 1
51                 srv -m $1
52         case *
53                 srv -m $1 $1 $2
54         }
55 }