99 lines
2.6 KiB
Markdown
99 lines
2.6 KiB
Markdown
# rclone-mount
|
||
|
||
Interaktives Terminal-Menü zum Mounten und Trennen von rclone-Remotes, gebaut mit [gum](https://github.com/charmbracelet/gum).
|
||
|
||
```
|
||
🚀 rclone Mount-Menü
|
||
🟢 gdrive2
|
||
🔴 jotta
|
||
🔴 jottasecret
|
||
⏏️ Alle Remotes trennen
|
||
Beenden
|
||
```
|
||
|
||
## Features
|
||
|
||
- Zeigt alle konfigurierten rclone-Remotes automatisch an – keine manuelle Pflege der Liste nötig
|
||
- Grüner/roter Punkt zeigt den Mount-Status direkt im Menü
|
||
- Einzelklick toggelt zwischen Mounten und Trennen
|
||
- „Alle Remotes trennen" – unmountet alle aktiven Mounts auf einmal
|
||
- Spinner-Feedback während Mount/Unmount-Vorgängen
|
||
|
||
## Voraussetzungen
|
||
|
||
| Tool | Zweck |
|
||
|------|-------|
|
||
| [rclone](https://rclone.org) | Remote-Verwaltung und FUSE-Mount |
|
||
| [gum](https://github.com/charmbracelet/gum) | Interaktives Terminal-UI |
|
||
| `fuse` / `fusermount` | FUSE-Unterstützung des Betriebssystems |
|
||
|
||
### Installation der Abhängigkeiten (Ubuntu/Debian)
|
||
|
||
```bash
|
||
# rclone
|
||
sudo apt install rclone
|
||
|
||
# gum (via Charm-Repository)
|
||
sudo mkdir -p /etc/apt/keyrings
|
||
curl -fsSL https://repo.charm.sh/apt/gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/charm.gpg
|
||
echo "deb [signed-by=/etc/apt/keyrings/charm.gpg] https://repo.charm.sh/apt/ * *" \
|
||
| sudo tee /etc/apt/sources.list.d/charm.list
|
||
sudo apt update && sudo apt install gum
|
||
|
||
# fuse
|
||
sudo apt install fuse
|
||
```
|
||
|
||
## Installation
|
||
|
||
```bash
|
||
# Script herunterladen und ausführbar machen
|
||
chmod +x rclone-mount.sh
|
||
|
||
# Optional: ins PATH legen
|
||
cp rclone-mount.sh ~/.local/bin/rclone-mount
|
||
```
|
||
|
||
## Konfiguration
|
||
|
||
Das Script liest die verfügbaren Remotes automatisch per `rclone listremotes` aus. Es muss also mindestens ein Remote in rclone konfiguriert sein:
|
||
|
||
```bash
|
||
rclone config
|
||
```
|
||
|
||
### Mount-Verzeichnis
|
||
|
||
Standardmäßig werden Remotes unter `~/SYM/<remotename>` gemountet. Das lässt sich am Anfang des Scripts anpassen:
|
||
|
||
```bash
|
||
MOUNT_BASE="$HOME/SYM"
|
||
```
|
||
|
||
## Nutzung
|
||
|
||
```bash
|
||
./rclone-mount.sh
|
||
```
|
||
|
||
Navigation mit den Pfeiltasten, Auswahl mit Enter. Ein Klick auf einen Remote-Eintrag mountet oder trennt ihn je nach aktuellem Status.
|
||
|
||
## Hinweise
|
||
|
||
### `--allow-other`
|
||
|
||
Das Flag `--allow-other` (erlaubt anderen Systembenutzern Zugriff auf den Mount) ist im Script bewusst weggelassen. Es erfordert einen Eintrag in `/etc/fuse.conf`:
|
||
|
||
```
|
||
user_allow_other
|
||
```
|
||
|
||
Für Einzelnutzer-Setups wird es nicht benötigt.
|
||
|
||
### VFS-Cache
|
||
|
||
Das Script nutzt `--vfs-cache-mode full` für maximale Kompatibilität. Das bedeutet, dass Dateien lokal gecacht werden, bevor sie gelesen/geschrieben werden. Der Cache liegt standardmäßig unter `~/.cache/rclone/`. Bei großen Dateien oder begrenztem Speicherplatz ggf. auf `minimal` oder `off` reduzieren.
|
||
|
||
## Lizenz
|
||
|
||
MIT |