4306170626
Update PKGBUILD version / update-pkgver (push) Successful in 2s
The custom one-alias-per-line output was useless — no mountpoint, no source, no options. Reinventing a table format when findmnt from util-linux already produces a familiar fuse.sshfs view was the wrong call. -l now shells out to findmnt -t fuse.sshfs.
61 lines
1.6 KiB
Markdown
61 lines
1.6 KiB
Markdown
Quickly mount remote systems via SSHFS based on your ssh_config
|
|
|
|
Mounts land under `$XDG_RUNTIME_DIR/sshfs/<Host>` (typically `/run/user/$UID/sshfs/<Host>`), using the ssh_config alias as label, not the resolved IP. The directory is auto-cleaned on logout (tmpfs).
|
|
|
|
# Install
|
|
|
|
## Arch Linux (Moonarch repo)
|
|
|
|
Available in the Moonarch package repository as `sshfsc-git`:
|
|
|
|
```
|
|
paru -S sshfsc-git
|
|
```
|
|
|
|
## From source
|
|
|
|
```
|
|
go build -o sshfsc
|
|
install -Dm755 sshfsc /usr/local/bin/sshfsc
|
|
```
|
|
|
|
# Dependencies
|
|
|
|
- [SSHFS](https://wiki.archlinux.org/title/SSHFS)
|
|
- `findmnt` from `util-linux` (for `-l`)
|
|
- [Go](https://wiki.archlinux.org/title/Go) >= 1.25 (build-time)
|
|
|
|
# Usage
|
|
|
|
```
|
|
sshfsc <Host> # mount
|
|
sshfsc -u <Host> # unmount
|
|
sshfsc -l # list active mounts
|
|
```
|
|
|
|
## Arguments
|
|
|
|
| Flag | Description |
|
|
| ---- | ----------- |
|
|
| `-e` | open mountpoint in your editor |
|
|
| `-v` | verbose: print resolved ssh_config fields (HostName, User, Port, IdentityFile) |
|
|
| `-r`, `--remote-dir <path>` | remote directory to mount (default: remote home) |
|
|
| `-l` | list active fuse.sshfs mounts via `findmnt` and exit |
|
|
| `-u` | unmount the given `<Host>` and exit (mutually exclusive with `-l`) |
|
|
|
|
By default only the resolved mount path is printed. Use `-v` for the full
|
|
ssh_config dump.
|
|
|
|
Editor Sublime-Text (`subl`) is currently hardcoded. [See](https://gitea.moonarch.de/nevaforget/sshfs_connect/issues/1)
|
|
|
|
# Example ssh config
|
|
|
|
See https://wiki.archlinux.org/title/OpenSSH#Configuration
|
|
|
|
```
|
|
Host myserver
|
|
HostName 127.0.0.1
|
|
User sshusername
|
|
IdentityFile ~/.ssh/id_rsa
|
|
```
|