Wenn Claude Code nicht verfuegbar ist
~/bin/notfall-diagnose.sh
sudo systemctl restart rudi-chat
sudo systemctl status rudi-chat
sudo systemctl restart nginx
sudo systemctl status nginx
sudo systemctl restart fail2ban
sudo systemctl restart rudi-chat nginx fail2ban
sudo systemctl reset-failed rudi-chat && sudo systemctl start rudi-chat
sudo journalctl -u rudi-chat --since "1 hour ago" | grep -i "oom\|killed\|memory"
sudo lsof -i :3456
sudo kill -9 <PID>
sudo nginx -t
Zuerst verfuegbare Backups anzeigen, dann die neueste Datei kopieren:
ls -t ~/backups/nginx/
sudo cp ~/backups/nginx/<DATEINAME> /etc/nginx/sites-enabled/default
sudo nginx -t && sudo systemctl reload nginx
sudo certbot renew --force-renewal
Node.js (rudi-chat) ist nicht erreichbar. rudi-chat neustarten (siehe Sektion A).
Passwortdatei pruefen:
cat /etc/nginx/.htpasswd
cd ~/rudi-chat && npm install
sudo lsof -i :3456
sudo kill -9 <PID>
Umgebungsvariablen pruefen:
cat /etc/environment
Danach Service neustarten, damit neue Werte geladen werden.
df -h
sudo journalctl --vacuum-size=100M
du -sh ~/uploads/* | sort -h | tail -10
sudo journalctl -u rudi-chat -f
sudo journalctl -u rudi-chat --since "1 hour ago"
sudo journalctl -u rudi-chat -p err
sudo tail -50 /var/log/nginx/error.log
sudo tail -50 /var/log/nginx/access.log
sudo fail2ban-client status
cd ~/rudi-chat && git stash
git log --oneline -10
git checkout <HASH>
cd /var/www/html && git stash
git log --oneline -10
git checkout <HASH>
ls -t ~/backups/nginx/
sudo cp ~/backups/nginx/<DATEINAME> /etc/nginx/sites-enabled/default
sudo nginx -t && sudo systemctl reload nginx
ls -t ~/backups/full/
sudo tar -xzf ~/backups/full/<DATEINAME> -C /
Im Hostinger Panel oben rechts auf den Terminal-Button klicken. Damit oeffnet sich ein Browser-Terminal – vollstaendiger Root-Zugriff ohne SSH.
Panel → VPS-Verwaltung → Reboot-Button. Dauert ca. 1–2 Minuten.
Panel → VPS → Snapshots → Backup auswählen → Wiederherstellen.
Panel → VPS → Snapshot erstellen. Manuellen Snapshot immer VOR groesseren Änderungen anlegen.
| Pfad | Beschreibung |
|---|---|
| ~/rudi-chat/server.js | Backend Entry-Point |
| ~/rudi-chat/routes/ | API-Routen (chat, qms, files, system) |
| ~/rudi-chat/lib/ | Shared Helpers, Tools-Definition |
| ~/rudi-chat/chat-history/ | Chat-Verlauf (JSON-Dateien) |
| /var/www/html/ | Frontend (Dashboard, QMS, etc.) |
| ~/rudi-chat/public/ | Chat-Frontend |
| /etc/nginx/sites-enabled/default | Nginx-Konfiguration |
| /etc/environment | Umgebungsvariablen (API-Keys) |
| ~/backups/nginx/ | Nginx-Config-Backups |
| ~/backups/full/ | Tar-Vollbackups |
| ~/uploads/ | Nutzer-Uploads (max. 50 MB) |
| ~/qms/QMS/output/arbeitsdaten/ | QMS-Daten (JSON) |
| ~/bin/ | Hilfsskripte (notfall-diagnose.sh, etc.) |
| Service | Port | Beschreibung |
|---|---|---|
| rudi-chat | 3456 (lokal) | Node.js Backend, systemd-Service |
| nginx | 80 / 443 | Reverse Proxy, Basic Auth, HTTPS |
| fail2ban | – | Brute-Force-Schutz (3 Jails) |
| URL | Beschreibung |
|---|---|
| rudi-regiofrucht.de/ | Dashboard |
| rudi-regiofrucht.de/chat/ | KI-Chat (RUDI) |
| rudi-regiofrucht.de/qms/ | QMS-Dashboard |
| rudi-regiofrucht.de/notfall/ | Diese Seite |
| hpanel.hostinger.com | Hostinger Panel (VPS-Verwaltung) |
| claude.ai | KI-Hilfe ohne Server |
| Typ | Ort | Haeufigkeit |
|---|---|---|
| NAS rsync (Synology) | Synology NAS (lokal im Buero) | Alle 6 Stunden automatisch |
| Hostinger Snapshot | hpanel.hostinger.com | Woechentlich automatisch / manuell vor Aenderungen |
| Lokales Tar-Backup | ~/backups/full/ | Manuell via ~/bin/notfall-backup.sh |
| Nginx-Config-Backup | ~/backups/nginx/ | Automatisch bei Aenderungen |
| Git (lokal) | ~/rudi-chat/, /var/www/html/ | Lokal, kein Remote |
Die Synology NAS holt alle 6 Stunden per rsync die Daten vom VPS ab. Das Backup-Log liegt auf der NAS unter /volume1/backups/rudi-backup.log.
NAS-Backup einrichten (VPS-Seite vorbereiten):
~/bin/setup-nas-backup.sh
SSH-Key pruefen:
ls -la ~/.ssh/nas_backup
Der Restore wird VON DER NAS aus gestartet (NAS pusht zum VPS). Anleitung anzeigen:
~/bin/nas-restore.sh
Erstellt ein vollstaendiges Tar-Archiv und speichert es in ~/backups/full/:
~/bin/notfall-backup.sh
Vor groesseren Aenderungen immer einen manuellen Snapshot anlegen. Anleitung siehe Sektion F.
SSH-Config auf dem lokalen Rechner: C:\Users\BenjaminRückleRegioF\.ssh\config
Host rudi
HostName rudi-regiofrucht.de
User regiofrucht
Port 2222
Robuster als SSH, ueberlebt Verbindungsabbrueche. Kein VS Code, aber gut fuer Notfaelle.
mosh --ssh="ssh -p 2222" regiofrucht@rudi-regiofrucht.de
Funktioniert IMMER, auch wenn SSH komplett tot ist. Login unter hpanel.hostinger.com → VPS → Konsole.
su - regiofrucht ausfuehren! Sonst hat Claude keinen Zugriff auf den Code (liegt unter /home/regiofrucht/).
su - regiofrucht
Port 3389 ist nur fuer die Heim-IP 79.215.108.35 offen. Verbindung per Windows-Remotedesktop.
Ausfuehren in PowerShell/CMD auf dem lokalen Rechner:
ssh -vvv -p 2222 regiofrucht@rudi-regiofrucht.de