Categorygithub.com/jacobsa/fuse
modulepackage
0.0.0-20250228153609-219b4762b40e
Repository: https://github.com/jacobsa/fuse.git
Documentation: pkg.go.dev

# README

ci GoDoc

This package allows for writing and mounting user-space file systems from Go. Install it as follows:

go get -u github.com/jacobsa/fuse

Afterward, see the documentation for the following three packages:

  • Package fuse provides support for mounting a new file system and reading requests from the kernel.

  • Package fuseops enumerates the supported requests from the kernel, and provides documentation on their semantics.

  • Package fuseutil, in particular the FileSystem interface, provides a convenient way to create a file system type and export it to the kernel via fuse.Mount.

Make sure to also see the sub-packages of the samples package for examples and tests.

This package owes its inspiration and most of its kernel-related code to bazil.org/fuse.

# Packages

Package fuseops contains ops that may be returned by fuse.Connection.ReadOp.
Types and functions that make it easier to work with package fuse.

# Functions

ConvertFileMode returns an os.FileMode with the Go mode and permission bits set according to the Linux mode and permission bits.
ConvertGoMode returns an integer with the Linux mode and permission bits set according to the Go mode and permission bits.
Mount attempts to mount a file system on the given directory, using the supplied Server to serve connection requests.
Unmount attempts to unmount the file system whose mount point is the supplied directory.

# Constants

# Structs

Connection represents a connection to the fuse kernel process.
Optional configuration accepted by Mount.
MountedFileSystem represents the status of a mount operation, with a method that waits for unmounting.

# Interfaces

Server is an interface for any type that knows how to serve ops read from a connection.

# Type aliases