home *** CD-ROM | disk | FTP | other *** search
- #!/bin/sh
- #
- # FUSE mount helper
- # Petr Klima <qaxi@seznam.cz>
- # Thanks to Miklos Szeredi <miklos@szeredi.hu>
- # to kick me to the right way
- #
-
- VERSION="0.0.1"
- PRGNAME=`basename $0`
-
- if [ -z "$HOME" ]; then
- HOME=/root
- fi
- export HOME
-
- USAGE="${PRGNAME} version ${VERSION}
- usage: ${PRGNAME} fusefs_type#[mountpath] mountpoint [FUSE options]
-
- example: ${PRGNAME} sshfs#root@tux:/ /mnt/tuxssh -o rw
- "
-
- die() {
- echo -e "$PRGNAME# $1" >&2
- [ -z "$2" ] && exit 128
- exit "$2"
- }
-
- [ "$#" -ge 2 ] || die "${USAGE}"
-
- # for now i have to be same as FUSE mount binary
- # should be configurable
- eval `echo "$1" | sed -n 's,\(^[^#][^#]*\)\(#\(.*\)\)*,FSTYPE="\1" MOUNTPATH="\3",p'`
-
- export PATH
- FSBIN=`which ${FSTYPE} 2>/dev/null` \
- || die "Can not find FUSE mount binary for FS ${FSTYPE}" 1
-
- # was there an # in $1
- [ "$1" = "$MOUNTPATH" ] && MOUNTPATH=""
-
- MOUNTPOINT="$2"
- [ -d "${MOUNTPOINT}" ] || die "Directory ${MOUNTPOINT} does not exist"
-
- shift
- shift
-
- ignore_opts='\(user\|nouser\|users\|auto\|noauto\|_netdev\)'
-
- OPTIONS=`echo $@ | sed "s/,${ignore_opts}\|${ignore_opts},//g"`
-
- ${FSTYPE} ${MOUNTPATH} ${MOUNTPOINT} ${OPTIONS}
-