| #!/usr/local/plan9/bin/rc |
| |
| if(! ~ $#* 2){ |
| echo 'usage: mount addr mtpt' >[1=2] |
| exit usage |
| } |
| switch(`{uname}){ |
| case Linux |
| if(9 grep -si ' 9p(2000)?$' /proc/filesystems){ |
| if(u test -S $1) |
| exec u mount -t 9p -o trans'='unix,uname'='$USER $1 $2 |
| exec u mount -t 9p -o trans'='tcp,uname'='$USER $1 $2 |
| } |
| if(9 grep -si ' fuse$' /proc/filesystems) |
| exec 9pfuse $1 $2 |
| echo 'don''t know how to mount (no 9p, no fuse)' >[1=2] |
| case FreeBSD |
| if(kldstat|9 grep -si ' fuse') |
| exec 9pfuse $1 $2 |
| echo 'don''t know how to mount (no fuse)' >[1=2] |
| case Darwin |
| if(sysctl fuse.version >[2]/dev/null |9 grep -si 'fuse.version' || |
| sysctl macfuse.version.number >[2]/dev/null |9 grep -si 'fuse.version' || |
| sysctl osxfuse.version.number >[2]/dev/null |9 grep -si 'fuse.version' || |
| test -d /System/Library/Extensions/fusefs.kext || |
| test -d /Library/Filesystems/osxfusefs.fs/Support/osxfusefs.kext || |
| test -d /Library/Filesystems/fusefs.fs/Support/fusefs.kext) |
| exec 9pfuse $1 $2 |
| echo 'don''t know how to mount (no fuse)' >[1=2] |
| case * |
| echo 'can''t mount on' `{uname} >[1=2] |
| } |
| exit nomount |