Skip to content

narumatt/sqlitefs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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 required 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