README.md hinzugefügt
This commit is contained in:
99
README.md
Normal file
99
README.md
Normal file
@ -0,0 +1,99 @@
|
||||
# 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
|
||||
Reference in New Issue
Block a user