Skip to content

CLI-first sshfs manager with shortcuts for dynamic-IP hosts. XDG config, safe mount lifecycle, and subnet-based workflows for frequently readdressed devices.

License

Notifications You must be signed in to change notification settings

blockfeed/sshfsman

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

sshfsman

sshfsman is a small, CLI-first utility for managing sshfs mounts in a deterministic and scriptable way.

It exists to remove guesswork around sshfs state, make mounts repeatable, and avoid the usual pile of half-mounted directories and stale mountpoints.


Key Principles

  • Deterministic mount detection using findmnt
  • Scoped by default under a single mount root
  • No background state or daemons
  • Safe-by-default unmounting

Requirements

Commands required in PATH:

  • sshfs
  • findmnt (util-linux)
  • fusermount3 (preferred) or fusermount

Configuration

Default config path:

~/.config/sshfsman/config.toml

Example (anonymized)

[config]
mount_root = "/mnt/sshfs"
default_subnet = "192.0.2"

[shortcuts."example"]
remote = "user@192.0.2.10:/home/user/project"
mount_dir = "project"
options = ["allow_other"]

All examples use documentation-only IP ranges and placeholder usernames.


Commands

mount

sshfsman mount <shortcut>
sshfsman mount <shortcut> <octet>
sshfsman mount --remote user@host:/path [options]

list-mounts

sshfsman list-mounts [--all] [--json]

Human output:

SHORTCUT    SOURCE                           TARGET
example     user@192.0.2.10:/home/...        /mnt/sshfs/project
-           user@198.51.100.5:/srv/...       /mnt/sshfs/other

unmount

sshfsman unmount <shortcut>
sshfsman unmount --path /mnt/sshfs/<dir>

unmount-all

sshfsman unmount-all [--all]

Empty directories under mount_root are pruned after unmounting.


Safety Notes

  • sshfsman never modifies permissions or ownership
  • directories outside mount_root are never touched

License

GPLv3

About

CLI-first sshfs manager with shortcuts for dynamic-IP hosts. XDG config, safe mount lifecycle, and subnet-based workflows for frequently readdressed devices.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages