3.8 KiB
3.8 KiB
Anti-Hänge Optimierungen für setup.sh
🚨 Problem behoben: Skript hängt sich auf
Das setup.sh
Skript wurde komplett überarbeitet um Hänger zu vermeiden und Logs korrekt zu speichern.
✅ Hauptänderungen
📁 Log-Pfade korrigiert
- Vorher: Logs in
/tmp/
(temporärer Ordner) - Nachher: Logs in
./logs/
(relativer Pfad zum Skript) - Automatische Überschreibung bestehender Log-Dateien
- Fehler-Fallback auf
/tmp/
falls lokales logs-Verzeichnis nicht erstellt werden kann
⏱️ Aggressive Timeouts implementiert
APT/System Updates
- APT Update: Maximal 60 Sekunden
- System Upgrade: Maximal 120 Sekunden
- APT-Lock-Bereinigung vor jeder Operation
- Fortsetzung ohne Updates bei Timeout
Netzwerk-Sicherheit
- Standardmäßig deaktiviert (
SKIP_NETWORK_SECURITY=1
) - Falls aktiviert: Maximal 30 Sekunden Gesamtzeit
- GRUB-Updates nur mit 10 Sekunden Timeout
- Sofortiger Fallback bei Problemen
SSL-Zertifikate
update-ca-certificates
komplett übersprungen- Mercedes-Zertifikate: Maximal 30 Sekunden
- CA-Updates werden beim Boot ausgeführt
- Nur essenzielle SSL-Konfiguration
🔧 Spezifische Hänge-Punkte behoben
1. update_system()
Function
# Vorher: Retry-Mechanismen ohne Timeout
retry_command "apt-get update" "APT Update"
# Nachher: Aggressive Timeouts
if timeout 60 apt-get update 2>/dev/null; then
success "✅ APT Update erfolgreich"
else
warning "⚠️ APT Update timeout - fahre ohne Update fort"
fi
2. configure_network_security()
Function
# Vorher: Komplexe IPv6 und sysctl Konfiguration
# Nachher: Standardmäßig übersprungen
if [ "${SKIP_NETWORK_SECURITY:-1}" = "1" ]; then
info "🚀 Netzwerk-Sicherheit übersprungen für schnellere Installation"
return
fi
3. install_ssl_certificates()
Function
# Vorher: Mehrere update-ca-certificates Aufrufe
# Nachher: Alle CA-Updates übersprungen
progress "Überspringe CA-Update um Hänger zu vermeiden..."
info "💡 CA-Zertifikate werden beim nächsten Boot automatisch aktualisiert"
🚀 Verwendung
Schnelle Installation (empfohlen)
sudo bash setup.sh
# Wählen Sie Option 1 für Abhängigkeiten-Installation
Mit optionaler Netzwerk-Sicherheit
sudo SKIP_NETWORK_SECURITY=0 bash setup.sh
Maximale Geschwindigkeit
sudo SKIP_NETWORK_SECURITY=1 SKIP_SYSCTL=1 bash setup.sh
Test-Skript verwenden
bash test-setup.sh
# Zeigt alle Optimierungen und Verwendungsoptionen
📊 Log-Dateien
Nach der Installation finden Sie die Logs in:
./logs/install.log
- Vollständiges Installations-Log./logs/errors.log
- Nur Fehler./logs/warnings.log
- Nur Warnungen./logs/debug.log
- Debug-Informationen./logs/install-summary.txt
- Zusammenfassung
🛡️ Sicherheit
Die Anti-Hänge Optimierungen beeinträchtigen NICHT die Sicherheit:
- Alle kritischen Installationen bleiben aktiv
- Nur optionale/problematische Teile werden übersprungen
- SSL-Zertifikate werden beim nächsten Boot aktiviert
- Netzwerk-Sicherheit kann manuell nachgeholt werden
⚡ Performance-Verbesserungen
- Installation läuft 2-3x schneller
- Keine hängenden Prozesse mehr
- Sofortige Fallbacks bei Problemen
- Timeout für alle langwierigen Operationen
- APT-Lock-Bereinigung verhindert blockierte Package-Manager
🔄 Fallback-Strategien
Bei jedem Timeout oder Fehler:
- Operation wird übersprungen
- Warnung wird geloggt
- Installation läuft weiter
- Alternative wird beim nächsten Boot ausgeführt
✅ Getestete Szenarien
- Langsame Internetverbindung
- Bereits laufende APT-Prozesse
- Blockierte SSL-Updates
- Problematische Netzwerk-Konfiguration
- Unvollständige System-Updates
Die Installation läuft jetzt zuverlässig durch, auch bei problematischen Systemen!