136 lines
5.3 KiB
Bash
136 lines
5.3 KiB
Bash
#!/bin/bash
|
|
|
|
# ===================================================================
|
|
# MYP Druckerverwaltung - Raspberry Pi Schnellstart
|
|
# Vereinfachte Installation für sofortigen Kiosk-Modus
|
|
# Ruft das Haupt-Installationsskript auf
|
|
# ===================================================================
|
|
|
|
set -e
|
|
|
|
# Farben für Ausgabe
|
|
RED='\033[0;31m'
|
|
GREEN='\033[0;32m'
|
|
YELLOW='\033[1;33m'
|
|
BLUE='\033[0;34m'
|
|
PURPLE='\033[0;35m'
|
|
NC='\033[0m'
|
|
|
|
# Logging-Funktionen
|
|
log() { echo -e "${GREEN}[SCHNELLSTART] $1${NC}"; }
|
|
error() { echo -e "${RED}[FEHLER] $1${NC}"; exit 1; }
|
|
warning() { echo -e "${YELLOW}[WARNUNG] $1${NC}"; }
|
|
info() { echo -e "${BLUE}[INFO] $1${NC}"; }
|
|
|
|
# ASCII Art Banner
|
|
cat << 'EOF'
|
|
╔═══════════════════════════════════════════════════════════╗
|
|
║ MYP DRUCKERVERWALTUNG ║
|
|
║ Raspberry Pi Kiosk Schnellstart ║
|
|
║ ║
|
|
║ 🖨️ Vollautomatische Kiosk-Installation ║
|
|
║ 🔒 Maximale Sicherheit ohne Escape-Möglichkeiten ║
|
|
║ 🚀 Ein Klick - Fertig! ║
|
|
╚═══════════════════════════════════════════════════════════╝
|
|
EOF
|
|
|
|
echo
|
|
log "Willkommen zum MYP Druckerverwaltung Kiosk-Schnellstart!"
|
|
echo
|
|
|
|
# Root-Berechtigung prüfen
|
|
if [ "$EUID" -ne 0 ]; then
|
|
error "Dieses Skript muss als Root ausgeführt werden: sudo $0"
|
|
fi
|
|
|
|
# PATH für System-Tools setzen
|
|
export PATH="/usr/sbin:/sbin:/usr/bin:/bin:/usr/local/bin:$PATH"
|
|
|
|
# Aktuelles Verzeichnis ermitteln
|
|
CURRENT_DIR="$(pwd)"
|
|
log "Arbeitsverzeichnis: $CURRENT_DIR"
|
|
|
|
# Prüfe ob install_raspberry_pi.sh existiert
|
|
if [ ! -f "$CURRENT_DIR/install_raspberry_pi.sh" ]; then
|
|
error "install_raspberry_pi.sh nicht gefunden! Führe dieses Skript im MYP-Projektverzeichnis aus."
|
|
fi
|
|
|
|
# Prüfe ob app.py existiert (MYP-Projekt-Validierung)
|
|
if [ ! -f "$CURRENT_DIR/app.py" ]; then
|
|
error "app.py nicht gefunden! Bitte im MYP-Projektverzeichnis ausführen."
|
|
fi
|
|
|
|
# Mache Installationsskript ausführbar
|
|
chmod +x "$CURRENT_DIR/install_raspberry_pi.sh"
|
|
|
|
echo
|
|
info "📋 Was passiert bei der Installation:"
|
|
info " • System-Grundkonfiguration: Hostname 'raspberrypi', Root-Passwort, Zeitzone"
|
|
info " • System-Update: Vollständiges System-Upgrade mit neuen Zertifikaten"
|
|
info " • System-Bereinigung: Entfernt alle Desktop-Umgebungen"
|
|
info " • Chromium-Installation: Mehrere Fallback-Methoden"
|
|
info " • Verzeichnisstruktur: Upload-Ordner, Logs, Config mit korrekten Berechtigungen"
|
|
info " • Python-Installation: Direkt ins System ohne Virtual Environment"
|
|
info " • Sicherheits-Kiosk: Ohne Escape-Möglichkeiten"
|
|
info " • Autostart: Vollautomatischer Boot-to-Kiosk"
|
|
info " • Wartungstools: Remote-Management-System"
|
|
echo
|
|
info "🛡️ Sicherheits-Features:"
|
|
info " • SSH automatisch deaktiviert"
|
|
info " • Root-Zugang: 744563017196A (für Wartung)"
|
|
info " • Firewall mit Fail2Ban"
|
|
info " • Kein Desktop-Zugang"
|
|
info " • Passwort-geschützter Notfall-Modus"
|
|
echo
|
|
|
|
# Bestätigung einholen
|
|
warning "⚠️ ACHTUNG: Diese Installation erstellt einen VOLLAUTOMATISCHEN KIOSK!"
|
|
warning " • Das System bootet direkt in Kiosk-Modus (kein Desktop)"
|
|
warning " • SSH wird für Sicherheit deaktiviert"
|
|
warning " • Alle Desktop-Umgebungen werden entfernt"
|
|
warning " • Nur über Console oder myp-emergency-reset zugänglich"
|
|
echo
|
|
read -p "🚀 Vollautomatische Kiosk-Installation starten? (j/N): " confirm
|
|
if [[ ! "$confirm" =~ ^[jJ]$ ]]; then
|
|
error "Installation abgebrochen"
|
|
fi
|
|
|
|
echo
|
|
log "=== STARTE HAUPTINSTALLATION ==="
|
|
info "Dies kann 15-30 Minuten dauern..."
|
|
info "Überwachung möglich mit: tail -f /var/log/myp-kiosk-install.log"
|
|
echo
|
|
|
|
# Führe Hauptinstallation aus
|
|
if "$CURRENT_DIR/install_raspberry_pi.sh"; then
|
|
echo
|
|
log "🎉 === INSTALLATION ERFOLGREICH ABGESCHLOSSEN! ==="
|
|
echo
|
|
info "🔧 WICHTIGE WARTUNGSKOMMANDOS für nach dem Neustart:"
|
|
info " • Status prüfen: myp-maintenance status"
|
|
info " • Services steuern: myp-maintenance {start|stop|restart}"
|
|
info " • Kiosk beenden: myp-maintenance exit-kiosk"
|
|
info " • SSH aktivieren: myp-maintenance enable-ssh"
|
|
info " • Backup erstellen: myp-backup"
|
|
info " • Notfall-Reset: myp-emergency-reset"
|
|
echo
|
|
info "📱 ZUGRIFF NACH INSTALLATION:"
|
|
info " • Kiosk-Anwendung: Automatisch nach Neustart"
|
|
info " • Console-Zugang: Strg+Alt+F1 bis F6"
|
|
info " • Remote-Wartung: myp-maintenance enable-ssh"
|
|
echo
|
|
warning "⚠️ Das System startet nach dem Neustart automatisch im Kiosk-Modus!"
|
|
warning " Für Wartungszugang: Console verwenden oder SSH aktivieren"
|
|
echo
|
|
log "Schnellstart erfolgreich! 🚀"
|
|
else
|
|
echo
|
|
error "❌ Fehler bei der Hauptinstallation!"
|
|
echo
|
|
info "🔧 FEHLERBEHEBUNG:"
|
|
info " • Logfile prüfen: /var/log/myp-kiosk-install.log"
|
|
info " • Manuelle Installation: sudo ./install_raspberry_pi.sh"
|
|
info " • Bei Problemen: Überprüfe Internetverbindung und Berechtigungen"
|
|
echo
|
|
exit 1
|
|
fi |