Readme.md aktualisiert

This commit is contained in:
Ratatoskr 2025-12-22 19:05:36 +00:00
parent 43677ee89a
commit 7e05cbcf01

View File

@ -11,39 +11,34 @@ Führe folgende Befehle **als Root** aus:
```bash
pacman -S restic rclone fuse jq curl
```
1.2 rclone als Root konfigurieren
Da Restic das Repository über rclone anspricht, muss rclone als Root konfiguriert werden:
bash
Kopieren
```bash
sudo -i
rclone config
Folge den Anweisungen, um dein Cloud-Storage (z. B. Cloud.Michaelis.Digital) einzurichten.
Wichtig: Teste die Verbindung mit:
bash
Kopieren
```bash
rclone lsd Cloud.Michaelis.Digital:
```
2. Repository klonen und Dateien ablegen
2.1 Repository klonen
bash
Kopieren
```bash
git clone <DEINE-GIT-URL> /opt/backup-config
cd /opt/backup-config
```
2.2 Dateien kopieren
Kopiere die Konfigurationsdateien an die richtigen Orte:
bash
Kopieren
```bash
# Service und Timer
cp restic-backup.service /etc/systemd/system/
cp restic-backup.timer /etc/systemd/system/
@ -51,105 +46,97 @@ cp restic-backup.timer /etc/systemd/system/
# Backup-Skript
cp restic-backup /usr/local/bin/
chmod +x /usr/local/bin/restic-backup
```
3. Secrets anlegen
3.1 Restic-Passwortdatei
Erstelle die Passwortdatei für Restic (nur für Root lesbar!):
bash
Kopieren
```bash
mkdir -p /home/ratatoskr
echo "DEIN_RESTIC_REPO_PASSWORT" > /home/ratatoskr/.restic-pass
chmod 600 /home/ratatoskr/.restic-pass
chown root\:root /home/ratatoskr/.restic-pass
```
3.2 Umgebungsvariablen (optional)
Falls du die Umgebungsvariablen global setzen willst (z. B. für manuelle Backups), füge folgende Zeilen zu /etc/environment hinzu:
ini
Kopieren
```Bash
RESTIC_REPOSITORY=rclone\:Cloud.Michaelis.Digital\:backup-repo
RESTIC_PASSWORD_FILE=/home/ratatoskr/.restic-pass
```
Lade die Variablen neu:
bash
Kopieren
```bash
source /etc/environment
```
4. systemd aktivieren
bash
Kopieren
```bash
systemctl daemon-reload
systemctl enable --now restic-backup.timer
systemctl enable restic-backup.service
```
Status prüfen:
bash
Kopieren
```bash
systemctl status restic-backup.timer
journalctl -u restic-backup.service -f
```
5. Backup-Repository initialisieren
Falls das Repository noch nicht existiert:
bash
Kopieren
```bash
restic -r rclone\:Cloud.Michaelis.Digital\:backup-repo init
```
6. Snapshots mounten (bei Bedarf)
6.1 Mount-Punkt erstellen
bash
Kopieren
```bash
mkdir -p /mnt/restic
```
6.2 Snapshot mounten (nur bei Bedarf)
Umgebungsvariablen setzen:
bash
Kopieren
```bash
export RESTIC_REPOSITORY=rclone\:Cloud.Michaelis.Digital\:backup-repo
export RESTIC_PASSWORD_FILE=/home/ratatoskr/.restic-pass
```
Snapshot suchen und mounten:
bash
Kopieren
```bash
restic -r \$RESTIC_REPOSITORY --password-file \$RESTIC_PASSWORD_FILE snapshots
restic -r \$RESTIC_REPOSITORY --password-file \$RESTIC_PASSWORD_FILE mount /mnt/restic-snapshot/
```
Hinweis: Das Mounten erfolgt über FUSE und ist lazy Daten werden erst bei Zugriff geladen.
6.3 Unmounten
bash
Kopieren
```bash
fusermount -u /mnt/restic-snapshot
```
7. Wiederherstellung von Dateien
7.1 Einzelne Dateien wiederherstellen
bash
Kopieren
```bash
restic -r rclone\:Cloud.Michaelis.Digital\:backup-repo restore <SNAPSHOT_ID> --target /tmp/restore
```
7.2 Vollständiges System wiederherstellen
bash
Kopieren
```bash
restic -r rclone\:Cloud.Michaelis.Digital\:backup-repo restore <SNAPSHOT_ID> --target /
```
8. Wichtige Hinweise
@ -159,9 +146,8 @@ Logs: Backup-Logs findest du in /var/log/restic-backup.log und im Journal (journ
Benachrichtigungen: Das Skript sendet Updates an ntfy.michaelis.digital. Passe die URL und Credentials im Skript an.
9. Zusammenfassung der Befehle (Copy&Paste-freundlich)
bash
Kopieren
```bash
# 1. Pakete installieren
pacman -S restic rclone fuse jq curl
@ -190,7 +176,7 @@ systemctl enable restic-backup.service
# 6. Repository initialisieren (falls neu)
restic -r rclone\:Cloud.Michaelis.Digital\:backup-repo init
```
Hinweise zur Nutzung: