Skip to content

Temporal module for SQLiteFS written in Rust, with configurable synchronization and storage options. Useful for filesystem change auditing. Optional compression.

License

Notifications You must be signed in to change notification settings

ris-work/sqlitefs_temporal

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

Temporal module for SQLiteFS written in Rust, with configurable synchronization and storage options. Useful for filesystem change auditing. Optional compression.

Resources

License

Stars

Watchers

Forks

Packages

No packages published