Truecrypt Container automatisch mounten

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Hallo! Ich bin neu hier und hoffe ich habe das richtige Forum erwischt!

    Seit 2 Tagen besitze ich einen Pi, läuftt bei mir als Mediaplayer mit raspbmc. Die Medieninhalte liegen in einem Truecypt-Container auf einer externen USB. Ich würde gerne den Container automatisch beim booten laden, und nur das passwort für den container eingeben.. Zu diesem zweck habe ich die rc.local modifiziert:

    echo "1. Please enter password"

    oldConfig=`stty -g`
    stty -echo
    read password
    stty $oldConfig

    echo "2. Mounting volumes ..."

    sudo truecrypt -t -m=nokernelcrypto /media/volume1/container /media/crypt --password="$password" -k "" --protect-hidden=no

    exit 0

    Truecrypt funktioniert soweit einwandfrei, auch das script funktioniert wenn ich es manuell per ssh ausführe. Aber beim booten kommt keine frage nach dem passwort, es wird ganz normal ins Raspbmc GUI gestartet.

    Was kann ich tun?

    Gruß Humph

    Einmal editiert, zuletzt von dahumph (15. Juni 2013 um 19:18)

  • Hallo Humph,

    Zitat

    Truecrypt funktioniert soweit einwandfrei, auch das script funktioniert wenn ich es manuell per ssh ausführe. Aber beim booten kommt keine frage nach dem passwort, es wird ganz normal ins Raspbmc GUI gestartet.

    Die Passworteingabe wird mit Sicherheit auch angezeigt. Allerdings wohl auf einer anderen Konsole oder wird von XBMC verdeckt. Das Problem ist in deinem Fall vermutlich, dass die Init-Skripte parallel ausgeführt werden. Während also dein Skript auf die Passworteingabe wartet, startet ein anderes Skript bereits XBMC. Du kannst dich mal über SSH verbinden und mit "ps ax" nachsehen ob dein Skript bzw. "read" ausgeführt wird. Wenn dem so ist, dann versteckt sich die Ausgabe bzw. die Passworteingabe irgendwo.

    Gruß Georg

  • Danke für die schnelle Antwort!

    ...das auszuführende script ist ja die rc.local aus /etc

    die Ausgabe auf ps ax beinhaltete:

    411 tty1 T 1:39 /bin/sh /etc/init.d/rc.local start
    455 tty1 T 2:06 /bin/sh /etc/rc.local


    von read keine Spur...

    ich habe gerade festgestellt, dass ich das script per ssh nur als root ausführen kann, als pi passiert einfach garnichts. kann mein problem auch damit zusammenhängen?

    Einmal editiert, zuletzt von dahumph (15. Juni 2013 um 20:03)

  • Hallo dahumph,

    wenn du die rc.local noch siehst, dann wartet das Skript noch auf die Eingabe des Passworts. Die rc.local wird nur solange angezeigt wie das Skript ausgeführt wird. In deinem Fall wird das Skript beim read hängen bleiben. Es kann durchaus sein, dass read nicht in der Prozessliste angezeigt wird.

    Wenn das Skript über die rc.local ausgeführt wird, dann erfolgt das bereits mit Root-Rechten.

    Gruß Georg

  • okay, dann wartet das script wohl im hintergrund auf eingabe... irgend eine idee wie ich die eingabe in den vordegrund bringe bzw den restlichen bootvorgang solange anhalten kann bis das mountscipt durch ist?

    oder siehst du eine andere möglichkeit dieses script ohne ssh auszuführen? ich will ja nciht nach jedem neustart aufwändig per ssh mounten...

    gruß humph

  • Die idee mit dem addon ist natürlich verlockend, zumal ich dann dass PW über die iphone fernbedienung eingeben könnte. aber ich bin kein programmierer, und so ein addon gibt es bisher wohl kaum...

    gibt es eine möglichkeit scripts in dem GUI auszuführen?

  • Ok das wäre etvl ein gangbarer weg, wobei die möglichkeit mittels script während des bootvorgangs komfortabler wäre. ist denn bei raspbmc eine konsole vorinstalliert in die ich wechseln könnte? wenn nein, welche kann man empfehlen?

  • danke, klingt als hätte er das selbe problem. ich glaube allerdings dass sein script, wie bei mir auch, durchaus ausgeführt wird, nur im hintergrund bleibt, auf eingabe wartet und durch das gui verdeckt wird. ich habe zu testzwecken vor die mount-befehlszeile etwas anderes in das script eingefügt, um zu testen ob es funktioniert. (mkdir test) => nach dem bootvorgang habe ich einen testordner ergo wird mein scipt ausgeführt.

    ich werde mich aber mal an die idee mit dem udev ran wagen, könnte mir aber auch hier vorstellen dass das script verdeckt im hintergrund auf eingabe wartet. ich habe ja das passwort logischerweise nicht mit im script...

    • Offizieller Beitrag

    Ich dachte zuerst daran grub zu verwenden um dem bootprocess schon am anfang zu unterbrechen, dann als "boot-paramter" das password zu übergeben und dann das system normal booten zu lassen. leider hat bis jetzt noch keiner grub portiert und Perryboot sieht nicht danach aus als wenn man die Parameter "on-the-fly" übergeben zu können.

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!