Contents

  1. Using the FUSE in NetBSD -current
  2. Requirements
  3. Introduction
  4. Setup
  5. Install and Usage

Using the FUSE in NetBSD -current

Requirements

You will need a current kernel and userland, and up to date pkgsrc-current (pkgsrc/filesystems)

Introduction

The sources we refer to in this HowTo can exist anywhere on your system (normally in /usr)
That's why we use src/foo/bar (i.e src/lib/libpuffs) instead of full path.

Setup

Make sure that your Kernel configuration file contains the following option under filesystem

  file-system PUFFS  

And this under pseudo-devices

  pseudo-device putter

Add this to your /etc/mk.conf

  MKPUFFS=yes 

Build your kernel and update your userland.

Make sure you run "make includes" in your source tree in src/sys if you at some point update your NetBSD sources so that you have proper header files.
Most importantly the src/lib/libpuffs headers.

  # cd src/sys
  # make USETOOLS=no includes 
  # cd src/lib/libpuffs 
  # make USETOOLS=no includes

Check if libpuffs is properly installed

  # cd src/lib/libpuffs 
  # make USETOOLS=no cleandir dependall
  # make USETOOLS=no install   

Check if librefuse is properly installed.

  # cd src/lib/librefuse 
  # make USETOOLS=no cleandir dependall
  # make USETOOLS=no install

Check if fusermount is up to date and installed

  # cd src/usr.sbin/fusermount
  # make USETOOLS=no cleandir dependall
  # make USETOOLS=no cleandir install

Check if puffs is up to date and installed

  # cd src/usr.sbin/puffs
  # make USETOOLS=no cleandir dependall
  # make USETOOLS=no install

  This will compile and install mount_9p, mount_portal, mount_psshfs and mount_sysctlfs

Install and Usage

Mount_psshfs

Mounting a remote filesystem over ssh

   # mount_psshfs user@host:/path/to/directory /mountpoint 
   # umount /mountpoint 

Stuff from /usr/pkgsrc/filesystems.

Fuse-ntfs-3g

Mounting a ntfs filesystem

   # ntfs-3g /dev/device /mountpoint 
   # umount /mountpoint

Fuse-obexftp

Mounting an obexfs filesystem (Make sure your bluetooth connection is established with your device)

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

(Where the 00:11:22:33:44:55 is the address of your Bluetooth device )

Fuse-encfs

Fuse-cryptofs

Fuse-cddfs

Fuse-curlftps