Files
LUKS-Lock-und-Unlock-per-Bash/README.md
2025-08-15 11:22:03 +00:00

87 lines
2.0 KiB
Markdown

# LUKS Unlock/Lock Scripts für OMV
Diese beiden Bash-Skripte erleichtern das Entsperren und Aushängen von verschlüsselten LUKS-Volumes auf einem OpenMediaVault-System (OMV), ohne die Web-GUI nutzen zu müssen.
## 🔓 unlock_and_mount.sh
Dieses Skript:
- listet bekannte verschlüsselte Geräte (manuell gepflegte Liste im Skript),
- fragt für jedes nach dem Passwort,
- entsperrt es via `cryptsetup`,
- ermittelt automatisch den UUID-Mountpoint in `/srv/dev-disk-by-uuid-*`,
- und mountet das entschlüsselte Gerät.
### Beispiel-Ausgabe
```bash
>>> Verarbeite media (/dev/sdc)
🔐 Passwort für media eingeben:
📍 Ziel-Mountpoint: /srv/dev-disk-by-uuid-abc123...
📦 Hänge /dev/mapper/media in /srv/dev-disk-by-uuid-abc123... ein...
✅ Erfolgreich eingehängt.
```
## 🔒 lock_and_unmount.sh
Dieses Skript:
- hängt das gemountete Volume aus,
- prüft, ob Prozesse es noch verwenden (via `lsof`),
- versucht notfalls ein "lazy unmount",
- schließt das LUKS-Mapping via `cryptsetup close`.
### Beispiel-Ausgabe
```bash
>>> Verarbeite media
📤 Hänge /srv/dev-disk-by-uuid-abc123... aus...
✅ Erfolgreich ausgehängt.
🔒 Schließe /dev/mapper/media...
✅ Mapper entfernt.
```
## 📦 Installation
1. Skripte nach `/usr/local/bin` oder in ein geeignetes Verzeichnis kopieren.
2. Ausführbar machen:
```bash
chmod +x unlock_luks.sh lock_luks.sh
```
3. Bei Bedarf über `sudo` ausführen:
```bash
sudo ./unlock_luks.sh
```
## ⚙️ Konfiguration
Die zu verarbeitenden Devices sind direkt im Skript in einer Liste wie folgt hinterlegt:
```bash
declare -A LUKS_DEVICES=(
[eintb]="/dev/sda"
[media]="/dev/sdc"
[kleine]="/dev/sdd1"
)
```
Ändere diese Liste nach deinen Gegebenheiten.
## 🔐 Anforderungen
- `cryptsetup`
- `lsblk`
- `mount`
- `lsof` (für lock)
- `udisks2` (optional)
## 🛟 Hinweis
Nutze diese Skripte mit Bedacht, insbesondere `lock_luks.sh`, da ungespeicherte Daten bei laufenden Prozessen verloren gehen können.
## Änderungen
* 15.8.2025: Logger hinzugefügt.