ObexFS

FUSE based filesystem using ObexFTP (currently beta).

The caching layer has been removed as it is provided by the ObexFTP library now. Actually ObexFS is just a thin layer wrapping a basic ObexFTP client into FUSE callbacks.

Installation

You will need FUSE 2.3/2.4, OpenOBEX, the latest ObexFTP and ObexFS itself.

See also obexfs-with-debian and Howto for Thinkpad.

If you install this on desktop-centric distributions like Fedora, please note that you need to install openobex-devel and obexftp-devel (and probably more) packages to compile from source.

To mount the filesystems, you may use the mount command with the -t fuse (which will call mount.fuse), as root, or the obexfs command, as a user belonging to the fuse group (obexfs will in turn spawn fusermount). Unmounting may be done by fusermount -u.

ObexAutoFS

A second, slightly more complex program obexautofs is included now. There is no need for a peer on startup anymore. It will scan for Bluetooth and USB devices and show them with their nickname. (scanning for IrDA, or Serial transport isn’t implemented yet.)

Usage

Plain mount

mount -t fuse obexautofs# /tmp/mnt

or

mount -t fuse "obexfs#-b00:11:22:33:44:55 -B6" /tmp/mnt

or

obexfs -u 0 /tmp/mnt

Automount

add to /etc/autofs/auto.misc

obex            -fstype=fuse,allow_other    :obexautofs#

myobex          -fstype=fuse,allow_other    :obexfs#-b 00-11-22-33-44-55 -B 6

By default only the user mounting with fuse can see the fs. That is why the option allow_other is needed. It might be a security risk.
Note that autofs requires the use of dashes instead of colons.

Fstab

add to /etc/fstab

obexautofs#                   /mnt/host    fuse    allow_other    0 0

or

obexfs#-b00-11-22-33-44-55    /mnt/host    fuse    allow_other    0 0

By default only the user mounting with fuse can see the fs. That is why the option allow_other is needed if you mount this as root user. It might be a security risk.

If you want to mount as unprivileged user use this instead:

obexautofs                  /mnt/host  fuse  user    0 0

or

obexfs#-b00-11-22-33-44-55  /mnt/host  fuse  user,fsname=obexfs#-b00-11-22-33-44-55    0 0

The ‘fsname’ option is needed to allow users to umount the fs.

Using fstab spaces in mount point name (especially before -B option) must be replaced with their octal character code (040) preceded by \ (backslash), e.g.:

obexfs#-b00-11-22-33-44-55\040-B6    /mnt/host    fuse    allow_other    0 0

Debug

mkdir /tmp/mnt
obexautofs -- -d -f /tmp/mnt

or

obexfs -b 00:11:22:33:44:55 -B 5 -- -d -f /tmp/mnt

or

obexfs -b 00:11:22:33:44:55  -B 10 /tmp/mnt

unmount

fusermount -u /tmp/mnt