#!/bin/bash # Installations-Skript für Arcane VM (Debian 12) # Auf der Arcane VM ausführen set -e echo "=== Rippy udev-Setup für Arcane VM ===" # 1. udev-Regel installieren echo "Installiere udev-Regel..." cp 99-disc-ripper.rules /etc/udev/rules.d/ echo "✅ /etc/udev/rules.d/99-disc-ripper.rules installiert" # 2. udev-Daemon in Worker-Container kopieren echo "Kopiere udev-Daemon in Worker-Container..." docker cp udev_daemon.py rippy-worker:/app/udev/ docker cp 99-disc-ripper.rules rippy-worker:/etc/udev/rules.d/ docker cp rippy-udev.service rippy-worker:/etc/systemd/system/ echo "✅ udev-Daemon und Regeln in Container kopiert" # 3. udev-Regel neu laden (im Host) echo "Lade udev-Regeln im Host neu..." sudo udevadm control --reload-rules sudo udevadm trigger --subsystem-match=block echo "✅ udev-Regeln im Host neu geladen" # 4. udev-Regel in Container neu laden echo "Lade udev-Regeln im Container neu..." docker exec -i rippy-worker udevadm control --reload-rules docker exec -i rippy-worker udevadm trigger --subsystem-match=block echo "✅ udev-Regeln im Container neu geladen" # 5. Service aktivieren (optional - wenn im Container als systemd läuft) if docker exec -i rippy-worker which systemctl > /dev/null 2>&1; then echo "Aktiviere systemd-Service..." docker exec -i rippy-worker systemctl daemon-reload docker exec -i rippy-worker systemctl enable rippy-udev echo "✅ systemd-Service aktiviert" fi echo "=== Setup abgeschlossen ===" echo "" echo "Testen:" echo " 1. Leg eine CD/DVD ein" echo " 2. Logs prüfen: docker logs -f rippy-worker" echo " 3. Symlinks: docker exec rippy-worker ls -la /dev/disc" echo " 4. Devices: docker exec rippy-worker ls -la /dev/cdrom /dev/dvd /dev/sr0" echo "" echo "Hinweis: /dev/disc ist ein Shared-Mount, der udev-Daemon erstellt Symlinks" echo " mit UUID/Serial für jedes erkannte Laufwerk."