📝 "Update IHK project documentation with Gitmoji emojis in setup.sh" 🌟
This commit is contained in:
101
backend/setup.sh
101
backend/setup.sh
@ -1206,86 +1206,33 @@ EOF
|
||||
debug "Raspberry Pi Optimierungen zur sysctl-Konfiguration hinzugefügt"
|
||||
fi
|
||||
|
||||
# Sysctl-Einstellungen vorsichtig anwenden (non-blocking)
|
||||
progress "Wende sysctl-Einstellungen an (non-blocking)..."
|
||||
# OPTIONAL: Sysctl-Einstellungen anwenden (kann übersprungen werden)
|
||||
progress "OPTIONAL: Versuche sysctl-Einstellungen anzuwenden..."
|
||||
|
||||
# Teste unsere spezielle sysctl-Datei zuerst (mit mehreren Fallbacks)
|
||||
if [ -f "$myp_sysctl_file" ]; then
|
||||
local sysctl_success=false
|
||||
|
||||
# Strategie 1: Komplette Datei mit Timeout anwenden
|
||||
progress "Versuche komplette sysctl-Datei anzuwenden..."
|
||||
if timeout 10 sysctl -p "$myp_sysctl_file" >/dev/null 2>&1; then
|
||||
success "✅ MYP sysctl-Einstellungen erfolgreich angewendet"
|
||||
sysctl_success=true
|
||||
else
|
||||
warning "⚠️ Komplette sysctl-Datei fehlgeschlagen"
|
||||
debug "sysctl -p $myp_sysctl_file Fehlerausgabe: $(timeout 5 sysctl -p "$myp_sysctl_file" 2>&1 || echo 'Timeout oder Fehler')"
|
||||
fi
|
||||
|
||||
# Strategie 2: Nur IPv6-Deaktivierung (kritisch)
|
||||
if [ "$sysctl_success" = false ]; then
|
||||
progress "Versuche nur IPv6-Deaktivierung..."
|
||||
local ipv6_settings=(
|
||||
"net.ipv6.conf.all.disable_ipv6=1"
|
||||
"net.ipv6.conf.default.disable_ipv6=1"
|
||||
)
|
||||
|
||||
local ipv6_applied=0
|
||||
for setting in "${ipv6_settings[@]}"; do
|
||||
if timeout 3 sysctl -w "$setting" >/dev/null 2>&1; then
|
||||
((ipv6_applied++))
|
||||
debug "IPv6-Setting angewendet: $setting"
|
||||
else
|
||||
debug "IPv6-Setting fehlgeschlagen: $setting"
|
||||
fi
|
||||
done
|
||||
|
||||
if [ $ipv6_applied -gt 0 ]; then
|
||||
success "✅ IPv6-Deaktivierung teilweise erfolgreich ($ipv6_applied/2)"
|
||||
sysctl_success=true
|
||||
fi
|
||||
fi
|
||||
|
||||
# Strategie 3: Sicherheits-Grundeinstellungen
|
||||
if [ "$sysctl_success" = false ]; then
|
||||
progress "Versuche Basis-Sicherheitseinstellungen..."
|
||||
local security_settings=(
|
||||
"net.ipv4.ip_forward=0"
|
||||
"net.ipv4.tcp_syncookies=1"
|
||||
)
|
||||
|
||||
local security_applied=0
|
||||
for setting in "${security_settings[@]}"; do
|
||||
if timeout 3 sysctl -w "$setting" >/dev/null 2>&1; then
|
||||
((security_applied++))
|
||||
debug "Sicherheits-Setting angewendet: $setting"
|
||||
else
|
||||
debug "Sicherheits-Setting fehlgeschlagen: $setting"
|
||||
fi
|
||||
done
|
||||
|
||||
if [ $security_applied -gt 0 ]; then
|
||||
success "✅ Basis-Sicherheitseinstellungen angewendet ($security_applied/2)"
|
||||
sysctl_success=true
|
||||
fi
|
||||
fi
|
||||
|
||||
# Strategie 4: Vollständig überspringen (Graceful Degradation)
|
||||
if [ "$sysctl_success" = false ]; then
|
||||
warning "⚠️ Alle sysctl-Anwendungen fehlgeschlagen"
|
||||
warning "⚠️ Einstellungen werden beim nächsten Neustart automatisch aktiv"
|
||||
info " 📁 Konfiguration verfügbar in: $myp_sysctl_file"
|
||||
info " 🔧 Manuelle Anwendung: sudo sysctl -p $myp_sysctl_file"
|
||||
debug "Sysctl komplett übersprungen - System läuft mit Standard-Einstellungen"
|
||||
fi
|
||||
else
|
||||
warning "⚠️ MYP sysctl-Konfigurationsdatei nicht gefunden"
|
||||
debug "Überspringe sysctl-Anwendung komplett"
|
||||
# Umgebungsvariable zum Überspringen
|
||||
if [ "${SKIP_SYSCTL:-0}" = "1" ]; then
|
||||
warning "⚠️ SKIP_SYSCTL gesetzt - überspringe sysctl komplett"
|
||||
info " → Einstellungen werden beim nächsten Neustart aktiv"
|
||||
return
|
||||
fi
|
||||
|
||||
# Niemals das System-weite sysctl -p ausführen (zu problematisch)
|
||||
debug "Überspringe system-weites sysctl -p (zu riskant)"
|
||||
# Sehr kurzer Test mit sofortigem Fallback
|
||||
if [ -f "$myp_sysctl_file" ]; then
|
||||
# Nur 5 Sekunden für sysctl versuchen
|
||||
if timeout 5 sysctl -p "$myp_sysctl_file" >/dev/null 2>&1; then
|
||||
success "✅ MYP sysctl-Einstellungen angewendet"
|
||||
else
|
||||
warning "⚠️ Sysctl-Anwendung übersprungen (Timeout oder Fehler)"
|
||||
info " → Konfiguration gespeichert in: $myp_sysctl_file"
|
||||
info " → Wird beim nächsten Neustart automatisch aktiv"
|
||||
debug "Sysctl nach 5s abgebrochen - keine Blockierung"
|
||||
fi
|
||||
else
|
||||
debug "Sysctl-Datei nicht gefunden - überspringe"
|
||||
fi
|
||||
|
||||
# Sofort weitermachen - keine weiteren Versuche
|
||||
debug "Sysctl-Phase abgeschlossen - fahre mit Installation fort"
|
||||
|
||||
# IPv6 in Netzwerk-Interfaces deaktivieren (robust)
|
||||
progress "Deaktiviere IPv6 in Netzwerk-Interfaces (vorsichtig)..."
|
||||
|
Reference in New Issue
Block a user