August 9, 2008 RUMP_SYSPUFFS 8

### NAME

rump_syspuffs - mount a puffs file server with a userspace puffs loop

### SYNOPSIS

file-system PUFFS

rump_syspuffs file_server arguments

### DESCRIPTION

The rump_syspuffs utility can be used to mount any puffs(3) file server so that the requests are passed through the kernel puffs code in userspace as well. Therefore the approximate callgraph looks a little like the following, where k and u denote code running in the kernel space and userspace, respectively: puffs vfs (k) -> libpuffs (u) -> p2k (u) -> puffs vfs (u) -> libpuffs (u) -> file server (u). The response path is the same, but in reverse.

In its current state, rump_syspuffs is most useful as a proof of concept for file system distribution and for developing and debugging the kernel portion of puffs.

### EXAMPLES

Mount a file system with sshfs:
```rump_syspuffs` `mount_psshfs` `server.address``/mnt`

Mount an ntfs file system using ntfs-3g (from pkgsrc/filesystems/fuse-ntfs-3g), set the default uid to 1323:
```rump_syspuffs` `ntfs-3g``-o` `uid=1323``/path/to/filesystem``/mnt`

### SEE ALSO

p2k(3), puffs(3), rump(3) puffs(4)

### HISTORY

The rump_syspuffs debugging utility first appeared in NetBSD5.0.