All Projects → noahdesu → Fusell Seed

noahdesu / Fusell Seed

Licence: mit
FUSE (the low-level interface) file system boilerplate 📂 🔌 💾

Programming Languages

shell
77523 projects

Projects that are alternatives of or similar to Fusell Seed

fusell-seed
FUSE (the low-level interface) file system boilerplate 📂 🔌 💾
Stars: ✭ 13 (+44.44%)
Mutual labels:  fuse, filesystem, posix, starter-kit, fuse-filesystem
Goofys
a high-performance, POSIX-ish Amazon S3 file system written in Go
Stars: ✭ 3,932 (+43588.89%)
Mutual labels:  fuse, fuse-filesystem, filesystem, posix
S3fs Fuse
FUSE-based file system backed by Amazon S3
Stars: ✭ 5,733 (+63600%)
Mutual labels:  fuse, fuse-filesystem, filesystem
Supertag
A tag-based filesystem
Stars: ✭ 207 (+2200%)
Mutual labels:  fuse, fuse-filesystem, filesystem
GitFS
A FUSE filesystem that stores data on Git
Stars: ✭ 26 (+188.89%)
Mutual labels:  fuse, filesystem, fuse-filesystem
Moosefs
MooseFS – Open Source, Petabyte, Fault-Tolerant, Highly Performing, Scalable Network Distributed File System (Software-Defined Storage)
Stars: ✭ 1,025 (+11288.89%)
Mutual labels:  fuse, filesystem, posix
Cryfs
Cryptographic filesystem for the cloud
Stars: ✭ 1,560 (+17233.33%)
Mutual labels:  fuse, fuse-filesystem, filesystem
loggedfs-python
Filesystem monitoring with Fuse and Python
Stars: ✭ 21 (+133.33%)
Mutual labels:  fuse, filesystem, fuse-filesystem
Distribyted
📂 ➡️ 📺 🎶 🎮 Torrent client with on-demand file downloading as a filesystem.
Stars: ✭ 791 (+8688.89%)
Mutual labels:  fuse, fuse-filesystem, filesystem
fuse xattrs
add xattrs support using sidecar files.
Stars: ✭ 28 (+211.11%)
Mutual labels:  fuse, filesystem, fuse-filesystem
Fuse Ts
Stars: ✭ 6 (-33.33%)
Mutual labels:  fuse, fuse-filesystem, filesystem
Catfs
Cache AnyThing filesystem written in Rust
Stars: ✭ 404 (+4388.89%)
Mutual labels:  fuse, fuse-filesystem, filesystem
Securefs
Filesystem in userspace (FUSE) with transparent authenticated encryption
Stars: ✭ 518 (+5655.56%)
Mutual labels:  fuse, fuse-filesystem, filesystem
React Redux Universal Hot Example
A starter boilerplate for a universal webapp using react, redux, express and feathers
Stars: ✭ 639 (+7000%)
Mutual labels:  starter-kit, boilerplate
Tinydir
Lightweight, portable and easy to integrate C directory and file reader
Stars: ✭ 575 (+6288.89%)
Mutual labels:  filesystem, posix
Base
A starting point for Meteor apps.
Stars: ✭ 654 (+7166.67%)
Mutual labels:  starter-kit, boilerplate
Fuse Copyfs
CopyFS is the copy-on-write (COW) versioned filesystem for FUSE. Years ago I added features to CopyFS 1.0, then 1.0.1 came out and I never bothered to forward-port my changes. Now I have. Master is 1.3.1M, which is CopyFS 1.0.1 + 1.3M
Stars: ✭ 24 (+166.67%)
Mutual labels:  fuse, filesystem
Postgrest Starter Kit
Starter Kit and tooling for authoring REST API backends with PostgREST
Stars: ✭ 657 (+7200%)
Mutual labels:  starter-kit, boilerplate
Dbxfs
User-space file system for Dropbox
Stars: ✭ 673 (+7377.78%)
Mutual labels:  fuse, filesystem
Laravel Boilerplate
Laravel Boilerplate / Starter Kit with Gentelella Admin Theme
Stars: ✭ 704 (+7722.22%)
Mutual labels:  starter-kit, boilerplate

Low-level FUSE file system boilerplate

Build Status

This project is a bare bones implementation of an in-memory FUSE file system that uses the low-level FUSE interface. It passes a large percentage of the POSIX compliance test suite (some things like unix sockets aren't yet handled), is regularly stress tested with numerous workloads, and can serve as a good starting point for your next file system project.

Many FUSE file systems found out in the wild use the high-level FUSE interface that operates on file paths. In contrast to the path-based interface, the low-level interface in FUSE operates on inodes, and offers a lot of flexibility. However, there seems to be relatively few examples of how to build a file system with this more advanced interface.

Testing Process

The testing we perform focuses on support across many distributions, compliance to the POSIX standard, and stress testing with many workloads. Continuous integration builds and mounts the file system for a variety of OS distributions. In addition, the continuous integration process runs the Tuxera POSIX test suite on Ubuntu Trusty.

A broader set of tests are periodically run (e.g. before new releases) that exercise the file system using a variety of real-world workloads. Interestingly, during development, a significant number of issues were surfaced by running real applications that did not show up when using the POSIX test suite. This larger set of test is not run as part of the continuous integration process because they either take too long or require too much memory.

The set of tests can be found in the test/ directory. A selection:

  • Run the Tuxera POSIX test suite (test/posix.sh)
  • Build the Linux kernel (test/kernel.sh)
  • Build the Ceph storage system (test/ceph.sh)
  • Multiple configurations of iozone (test/iozone.sh)
  • Build PostgreSQL and run tests (test/postgres.sh)
  • Build Git and run unit tests (test/git.sh)
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].