Reverse Engineering und Aufbau der Backup-Funktion auf USB

  • Hallo,


    wer kann skizzieren, wie die Backup-Prozedur auf OS-Ebene abläuft, die man in der Admin-Oberfläche unter Backup>External Drive einstellt?


    Welche Skripte werden dazu aufgerufen? Wo liegen diese?


    Ich möchte die Skripte so anpassen:
    - automatisches Umount, wenn Backup fertig ist. Ggf. mit Ausgabe auf LCD-Display (hat sich damit schon mal jemand beschäftigt?)
    - dmcrypt auf der externen USB-Platte oder eSATA-Platte


    Ein 1:1 passendes Howto konnte ich dazu nicht finden.
    In etwa beschreibt http://forum.qnap.com/viewtopic.php?f=15&t=26508 die Verschlüsselung. Allerdings ist es sicher besser, auf den Autostart bei Anstecken zu setzen, statt auf den One-Touch-Button.


    Knappschaft

  • Hi David,


    Danke, Dein Link beschreibt zwar ganz gut im Detail, wie LUKS generell funktioniert.
    Aber wo binde ich das im QNAP ein, ohne die tolle Weboberfläche ganz links liegen zu lassen?


    Ich habe zumindest schon mal herausgefunden, dass die Einstellungen dazu in /etc/config/hdcopyusb.conf gespeichert werden.


    Da ich eingestellt habe, dass er das Backup bei Einstecken der Platte starten soll, hätte ich eigentlich eine udev-Regel erwartet. In /etc/udev befindet sich aber nichts Passendes. Wird dies von /usr/bin/rsync verwendet? Ist dieses rsync 3.0.6 eine spezielle QNAP-Variante (rsync -h listet einen "qnap-mode" ?!?)?


    Wenn man die Platte einsteckt, zeigt top einen Prozess "hdusb_copy", dann jede Menge "rsync"-Prozess und ein "usb-storage". Weiterhin scheint "flush-8:128" damit zu tun zu haben.


    Mehr, sobald ich mehr herausgefunden habe.


    Nochmal zu meinem Ziel:
    - Ich möchte luksopen und luksclose in die vorhandenen Skripte einbauen
    - Ich möchte ein umount und eine Notifikation (beep, LCD-Anzeige, E-Mail) nach Fertigstellung einbauen
    - Ich möchte am liebsten jede externe Platte eine eigene Config, damit a) auf eine kleine Platte nur die wichtigen Daten gespeichert werden können, auf eine große jedoch alles und b) dass sowohl eSATA als auch USB von dem Skript erkannt werden.



    Gruß,


    Knappschaft

  • Hi Knappschaft,


    ich habe den Thread mal in Erweiterungen verschoben... Passt da etwas besser rein.


    Also.... Überlege Dir das echt noch einmal sehr gut ob Du so etwas machen möchtest. Ich würde es nicht tun, weil es mir zu Zeitintensiv ist. Dazu kommt noch, dass das ganze auch nur solange funktioniert bis QNAP mal etwas mit einer neueren Firmware ändert.
    Im Prinzip dreht man dann wieder seine runden.


    Ich würde mir einfach einen cron oder so basteln.


    Grüsse, David

  • Ich werde wohl langsam auf Dich hören müssen:


    Ein bißchen weitere Recherche hat ergeben, dass die zugehören Admin-Web-Seiten unter

    Code
    /home/httpd/cgi-bin/backup/html

    liegen.
    Der enthaltene Javascript-Code scheint aber absichtlich unleserlich gemacht worden zu sein. Die CGIs in /home/httpd/cgi-bin/backup sind Binärfiles.


    Bleibt als noch meine Frage offen: Wo ist festgelegt, was passiert, wenn ich die Festplatte in den USB-Port stecke? Die erwarteten udev-Regeln konnte ich nicht finden? Wird udev verwendet?


    Danke,


    Knappschaft