Skip to content

sqlite as a filesystem, with critical bugfixes and feature improvements, forked from the one by @narumatt, written in Rust

License

Notifications You must be signed in to change notification settings

ris-work/sqlitefs

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This is an improved version with various bugfixes. It also works on FreeBSD and NetBSD.

sqlite-fs

About

sqlite-fs allows Linux and MacOS to mount a sqlite database file as a normal filesystem.

Requirements

  • Latest Rust Programming Language (≥ 1.38)
  • libfuse(Linux) or osxfuse(MacOS) is requied by fuse-rs

Usage

Mount a filesystem

$ sqlite-fs <mount_point> [<db_path>]

If a database file doesn't exist, sqlite-fs create db file and tables.

If a database file name isn't specified, sqlite-fs use in-memory-db instead of a file. All data will be deleted when the filesystem is closed.

Unmount a filesystem

  • Linux
$ fusermount -u <mount_point>
  • Mac
$ umount <mount_point>

example

$ sqlite-fs ~/mount ~/filesystem.sqlite &
$ echo "Hello world\!" > ~/mount/hello.txt
$ cat ~/mount/hello.txt
Hello world!

functions

  • Create/Read/Delete directories
  • Create/Read/Write/Delete files
  • Change attributions
  • Copy/Move files
  • Create Hard Link and Symbolic Link
  • Read/Write extended attributes
  • [] File lock operations
  • [] Strict error handling

About

sqlite as a filesystem, with critical bugfixes and feature improvements, forked from the one by @narumatt, written in Rust

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 100.0%