Kapitel 6/Tutorial.md aktualisiert
This commit is contained in:
@@ -61,42 +61,64 @@ Du siehst den Benutzer `vaultwarden` und die Ordner existieren.
|
||||
|
||||
---
|
||||
|
||||
## 2) Vaultwarden herunterladen (immer aktuelle stabile Version)
|
||||
## 2) Vaultwarden herunterladen (robust & sicher)
|
||||
|
||||
Wir installieren **immer die neuste stabile Release** direkt von der offiziellen Quelle. So sind **Sicherheitsfixes** sofort enthalten.
|
||||
Wir laden **immer die neueste stabile Release** passend zu deiner **CPU‑Architektur** – automatisch und mit Fehlerschutz.
|
||||
|
||||
```bash
|
||||
# 1) Download-URL der neuesten stabilen Release automatisch ermitteln
|
||||
VW_URL=$(curl -s https://api.github.com/repos/dani-garcia/vaultwarden/releases/latest \
|
||||
| grep browser_download_url \
|
||||
| grep x86_64-unknown-linux-gnu.tar.gz \
|
||||
| cut -d '"' -f 4)
|
||||
set -Eeuo pipefail
|
||||
|
||||
# 2) Archiv herunterladen und entpacken
|
||||
curl -L "$VW_URL" -o /tmp/vaultwarden.tar.gz
|
||||
mkdir -p /tmp/vw && tar -xzf /tmp/vaultwarden.tar.gz -C /tmp/vw
|
||||
# Architektur → passender Dateiname der Release-Asset
|
||||
case "$(dpkg --print-architecture)" in
|
||||
amd64) ASSET="vaultwarden-*-x86_64-unknown-linux-gnu.tar.gz" ;;
|
||||
arm64) ASSET="vaultwarden-*-aarch64-unknown-linux-gnu.tar.gz" ;;
|
||||
armhf|armel) ASSET="vaultwarden-*-armv7-unknown-linux-gnueabihf.tar.gz" ;;
|
||||
*) echo "❌ Nicht unterstützte Architektur: $(dpkg --print-architecture)" >&2; exit 1 ;;
|
||||
esac
|
||||
|
||||
# 3) Programmdatei nach /opt verschieben (wird unser fester Pfad)
|
||||
# jq für zuverlässiges JSON-Parsing (klein, darf wieder entfernt werden)
|
||||
apt install -y jq >/dev/null
|
||||
|
||||
# 1) Download-URL der neuesten stabilen Release exakt ermitteln
|
||||
VW_URL=$(curl -fsSL https://api.github.com/repos/dani-garcia/vaultwarden/releases/latest \
|
||||
| jq -r --arg pat "$ASSET" '.assets[] | select(.name | test($pat)) | .browser_download_url' \
|
||||
| head -n1)
|
||||
|
||||
if [ -z "${VW_URL}" ]; then
|
||||
echo "❌ Konnte die Download-URL nicht ermitteln. Prüfe Internet/DNS/GitHub-API-Limit." >&2
|
||||
echo "ℹ️ Alternativ: Öffne die Release-Seite im Browser und kopiere den Link der Datei $ASSET." >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "→ Lade: $VW_URL"
|
||||
|
||||
# 2) Archiv laden und entpacken
|
||||
curl -fL "$VW_URL" -o /tmp/vaultwarden.tar.gz
|
||||
mkdir -p /tmp/vw
|
||||
tar -xzf /tmp/vaultwarden.tar.gz -C /tmp/vw
|
||||
|
||||
# 3) Programmdatei nach /opt verschieben
|
||||
install -m 0755 /tmp/vw/vaultwarden /opt/vaultwarden/vaultwarden
|
||||
|
||||
# Optional: Checksumme anzeigen (mit der Release-Seite vergleichen)
|
||||
sha256sum /tmp/vaultwarden.tar.gz | awk '{print "SHA256:", $1}'
|
||||
```
|
||||
|
||||
**Woran erkenne ich Erfolg?**
|
||||
**Erfolgskontrolle**
|
||||
|
||||
```bash
|
||||
/opt/vaultwarden/vaultwarden --version || true
|
||||
/opt/vaultwarden/vaultwarden --version
|
||||
```
|
||||
|
||||
Du siehst die **Version** der frisch installierten Release.
|
||||
|
||||
**Warum so? (Laienfreundlich)**
|
||||
**Warum diese Variante?**
|
||||
|
||||
* „Neuste stabile Release“ = **aktuelle Sicherheitsfixes** ohne Wartezeit.
|
||||
* Wir holen die Datei **direkt** von der offiziellen Projektseite.
|
||||
* Der Pfad `/opt/vaultwarden/` bleibt gleich – **Updates** sind später nur „Datei tauschen + Dienst neu starten“.
|
||||
* Wählt die **richtige Architektur** automatisch aus (x86\_64/arm64/armv7).
|
||||
* Nutzt die **offizielle GitHub‑API** mit **sauberem Parsing** (jq), keine fragilen `grep`‑Spielereien.
|
||||
* Bricht bei Fehlern **sofort** ab (`set -e`), damit kein halbfertiges Setup entsteht.
|
||||
|
||||
> 🔐 **Sicherheits‑Hinweis:** Wenn die Release‑Seite einen **SHA256‑Wert** angibt, kannst du ihn optional prüfen: `sha256sum /tmp/vaultwarden.tar.gz` ausführen und den Wert mit dem auf der Release‑Seite **visuell vergleichen**.
|
||||
|
||||
> 🆙 **Aktualisieren später:** Wiederhole **genau diesen Schritt** (die drei Befehle oben) und starte den Dienst neu: `systemctl restart vaultwarden`. Wenn sich seitdem Oberflächen/Optionen geändert haben, ergänzen wir im Video einen Hinweis und **aktualisieren diesen Blog‑Post**.
|
||||
> 🆙 **Späteres Update:** Diesen Block erneut ausführen (er lädt die aktuelle Release) und danach `systemctl restart vaultwarden`. Wenn sich die Oberfläche/Optionen geändert haben, ergänzen wir einen Hinweis im Video und aktualisieren den Post.
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user