Bin gerade dabei, meinen HTPC aufzusetzen.
Als Unterbau dient 12.04, auto-login ist aktiviert. In dem PC befinden sich mehrere Platten die ein mit LUKS verschlüsseltes RAID darstellen.
Jetzt möchte ich folgendes tun nachdem das System hochgefahren und sich automatisch angemeldet hat:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | #!/bin/bash # Ist Stick gemountet? # Falls ja -> crypto-raid mounten & xbmc starten # Falls nein -> tue nix if [ -e /media/Stick/key.file ] then cryptsetup luksOpen --key-file=/media/Stick/key.file /dev/mdX RAID && mount -t xfs /dev/mapper/RAID /media/RAID && ln -s /media/RAID/.xbmc /home/xbmc/.xbmc && ln -s /media/RAID/$Ordner1 /media/Freigaben/$Ordner1 && ln -s /media/RAID/$Ordner2 /media/Freigaben/$Ordner2 && ln -s /media/RAID/$Ordner3 /media/Freigaben/$Ordner3 && umount /media/Stick && service smbd restart && xbmc & exit fi exit |
/media/Freigaben ist ein Samba-Share, daher der restart des Samba-Servers
Ziel des Skripts soll sein, dass wenn der richtige Stick beim einschalten angesteckt sind, wird das System gebootet und direkt das xbmc gestartet was mir fernsehen ermöglicht, meine Musik zu hören etc. Fehlt der Stick, soll in ein normales Ubuntu gebootet werden und kein Hinweis darauf vorliegen, was sich auf dem Raid befindet. Daher soll auch die xbmc-Datenbank & Konfiguration auf dem Raid liegen.
Folgende Einfälle sind mir selbst bereits gekommen: - Skript nach /etc/init.d: Doofe Idee, da Start des xbmc so nicht klappt - Einrichtung unter "Startprogramme": ebenfalls doof, da das Skript dann ja mit den Rechten des angemeldeten Users läuft
cryptsetup, mount, umount & service sollen/müssen ja mit root-rechten erfolgen, der Rest aber eben nicht.
Zum herunterfahren habe ich ein Skript unter /etc/init.d was die Symlinks stoppt, das Raid umounten und anschließend mit cryptsetup luksClose schließt. Das stellt soweit ja kein Problem dar.
Auf jeden Fall bin ich jetzt für Ideen offen, wie ich mein Skript gestalten kann.