Mountie für GP2 >=4.2 mit udev und device Labeling !

  • Hi !


    Falls der Eindruck entstanden ist das ich udev nicht mag, oder den Ansatz vom GP2 ablehne - das ist falsch, aber man wird sich doch selbst bei Claudia Schiffer mal einen andere Haarfarbe wünschen dürfen :)


    Scherz beiseite - die inherenten Probleme der derzeitigen udev Implementierung was das mounten von rawdevices, oder hdc1 statt hda1 für die Harddisk in der 8k, die Probleme und Verwirrungen der Pluginbauer etc angeht sollten hinlänglich bekannt sein und hier nicht nochmals diskutiert, genauso wie das unabsichtliche synchrone mounten.


    Aber sich nur beklagen bringt eigentlich nichts - also habe ich den Mountie Ansatz auch fürs GP2 4.2 angepasst.


    Das mounten erfolgt unterhalb von /media mit dem disklabel des devices falls einer vorhanden ist, wenn nicht mit dem devicenamen wie bisher im udev (statt dem usb1,2,3, vom Mountie) dann halt sda1,2,3,...


    Labelt man also ein device als hdd kommt es immer auf /media/hdd gemountet, ein USB stick mit gelabelt usb immer auf /media/usb, etc.


    Labelt man eine externe usb hardddisk mit hdd wird sie auch einfach auf /media/hdd gemountet, etc...


    Also es erfolgt weiterhin automatisches mounten mit dem udev, aber eben mit dem device Label als zusätzliche Möglichkeit um den standard mount point zu ersetzen (aber auch nur wenn ein label vergeben wurde - sonst funktioniert alles wie normal)


    Die harddisk (falls eine eingebaut) wird automatisch beim Mountie installieren nämlich auf hdd gelabelt und daher immer dort gemountet womit der link wegfällt (und auch entfernt und durch ein directory ersetzt wird) - daher beim installieren nicht auf /media/hdd oder einem subdirectory im telnet stehen !


    Und natürlich ist im Mountie4GP2 Plugin auch derTeil zum labeln der devices auf der Dreambox dabei wie schon gewohnt.


    Und es gibt eben auch ein suspend der udev mounts, damit man ohne Filesystemprobleme wieder abstecken kann (im GP2 gibt es auch das aushängen, aber manchmal ist es ganz nützlich udev kurze Zeit komplett zu stoppen, wofür eben das supend da ist).


    Bitte um rege Diskussion ob Euch der Mountie fürs GP2 so gefällt und und ob das dann ein brauchbarer Weg wäre.


    Installiert wird der kit einfach indem man ihn auf /tmp per FTP schiebt und dann wie üblich mit dem BP installiert oder mittels telnet:


    cd /tmp
    ipkg install enigma2-plugin-extensions-mountie4gp2*.ipk


    Und los wird man Mountie4GP2 mit der roten Taste in der Pluginliste oder im telnet mit:


    ipkg remove enigma2-plugin-extensions-mountie4gp2


    LG
    gutemine

  • Hi !


    Bitte Ihr könnt es jetzt schon testen. Der kit sollte auf 7025/800/8000 funktionieren - aber NUR mit GP 4.2 !!


    Und falls die Frage kommt - ja der mount -o async patch von netman ist auch drinnen, mein gepatchtes udev_mount.sh basiert auf dem letzten hotfix vom GP Downloadserver, eben um meinen rawdevice not mount fix erweitert und um das Überrpüfen der disklabel für ext3/FAT und NTFS vom Mountie (beim NTFS Treiber laden im BP nicht vergessen, sonst geht das mounten trotzdem nicht).


    Und nein, mountpoints werden wenn sie vom disklabel kommen nicht aufgeräumt, ich bin der meinung das das ewige Löschen und Neuanlegen wenn man ein device an und absteckt nur den Flash unnötig belastet !


    LG
    gutemine

    4 Mal editiert, zuletzt von gutemine ()

  • Jetzt haben es ja schon ein paar User runtergeladen, gehen wir mal davon aus das die evt auch 8* boxen mit GP 4.2 haben


    Könnt Ihr berichten ob es dort auch funktioniert das bei der installation die Harddisk sauber auf hdd gelabelt und auf /media/hdd gemountet wird ?


    Nur auf 8000er boxen wo die HDD falsch angeschlossen wurde und diese sich als hda1 meldet statt hdc1 wird das labeln bei der installation nicht funktionieren, da müsste man nach der installation mit Mountie im Plugin auf hdd labeln.


    Also bitte berichten ob es so wie es ist geht und auch gefällt :)


    Und ja, man kann das udev_mountie.sh auch ohne Mountie als Ersatz für das udev_mount.sh verwenden, allerdings müssten wenn man das label mount Feature verwenden will die entsprechenden binaries installiert und die nötigen libs da sein.


    Durch diese binaries & libs wird der kit auch recht gross (womit es auf der 7025 schon recht viel Platz verwendet)


    Falls gewünscht kann ich die verwendeten label tools auch in eigene ipks packen - wenn wer kein ntfs haben will braucht er es dann nicht installieren.


    Und wenn jemand ein Disklabel Tool kennt das alle 3 filesysteme unterstützt (ext3/fat/ntfs) soll er sich auch rühren, leider habe ich bis jetzt nichts gefunden und musste daher alle 3 reinpacken.


    LG
    gutemine

    5 Mal editiert, zuletzt von gutemine ()

  • Hi,


    wollte gerade mal das Mountie testen ...... leider ohne Erfolg.


    Egal ob mit BP oder über telnet - bekomme immer folgende Fehlermeldung:


    root@dm800:~# cd /tmp
    root@dm800:/tmp# ipkg install enigma2-plugin-extensions-mountie4gp2*.ipk
    ipkg: Invalid magic
    ipkg: *** Couldnt kill old gunzip process *** aborting
    root@dm800:/tmp#
    root@dm800:/tmp#


    ???

    Gruß Karate01



    Dream8000 SS - int. HDD 2TB - OoZooN
    Dream800 HD Sat - int. HDD 400GB - OoZooN
    Dream600 Sat - int. HDD 160GB - PCD 7.0

    • Offizieller Beitrag

    Mit welchem ftp Client hast du das Paket auf die Dream geschickt?
    Die Übertragung muss auf Binär gestellt sein. Wenn es Ascii ist kannst du die Files nicht mehr installieren.


    Ist aber nur eine Vermutung.

  • mit DCC-E2 1.10 hab´ ich´s gemacht


    ascii oder binär? - gute Frage?


    ..... Muss mal kurz weg. Danke schon mal für den Hinweis

    Gruß Karate01



    Dream8000 SS - int. HDD 2TB - OoZooN
    Dream800 HD Sat - int. HDD 400GB - OoZooN
    Dream600 Sat - int. HDD 160GB - PCD 7.0

    Einmal editiert, zuletzt von Karate01 ()

    • Offizieller Beitrag

    Hmm DCC setz ich nicht ein, aber damit sollte es eigentlich gehen =)


    Könnte auch sein, dass dein ipk korrupt ist vom downloaden. Habe es schnell gezogen und ausgepackt und das funkt einwandfrei (das entpacken).

  • Super scheint einwandfrei zu laufen habe gerade wie ein wilder Willi einen


    USB Stick, eine CF karte, und eine SD Karte reingesteckt, raus gezogen, reingesteckt


    ohne Rücksicht auf Verluste wurden alle korrekt erkannt und unter show mounts aufgelistet und nach dem raus ziehen wider ausgetragen.

    8000 + Lüfter + HDD + DVD + RGB TFT Display
    520 OS-2.5
    16GB USB-Stick media/hdd

    DM Two

    SAT 19°

  • Ähm, hast du Sie auch gelabelt, weil sonst macht das udev_mount.sh vom Mountie4GP2 script auch nichts anders wie das Original GP 4.2 :)


    Wobei das überprüfen auf einen label halt 1-2 sekunden zusätzlich dauert bis gemountet wird, aber das ist die einzige Einschränkung.


    LG
    gutemine

    Einmal editiert, zuletzt von gutemine ()

  • Zitat

    Original von mfgeg
    Hmm DCC setz ich nicht ein, aber damit sollte es eigentlich gehen =)


    Könnte auch sein, dass dein ipk korrupt ist vom downloaden. Habe es schnell gezogen und ausgepackt und das funkt einwandfrei (das entpacken).


    Jo, das war´s :hurra:
    Noch mal schnell runtergezogen.
    Und schon lüpt es (übrigens wieder mit DCC gemacht ..... also das war nicht der Übeltäter)


    THX


    Mal sehen, was in an Testresultaten hier beisteuern kann.

    Gruß Karate01



    Dream8000 SS - int. HDD 2TB - OoZooN
    Dream800 HD Sat - int. HDD 400GB - OoZooN
    Dream600 Sat - int. HDD 160GB - PCD 7.0

  • dm8000


    hdd und BA auf CF werden gemountet, sda1 wird nicht auf sd gemountet.

  • dm800, BA, OoZooN, Gemini4.2
    (Nicht steinigen, wenn ich mit der Konstellation gar nicht mitreden kann)


    Habe Moutie installiert.


    /dev/hda1 ..... /media/hdd
    /dev/sda ........ /media/BA


    dann habe ich einen zweiten USB-Stick dazu:


    /dev/sdb1 ...... /media/ww
    /dev/sdb2 ...... /media/BA
    (Der Stick wurde zuletzt für Wally West Versuche hergenommen)


    Danach habe ich umgelabelt:
    /dev/sdb1 ...... /media/usb2.1
    /dev/sdb2 ...... /media/usb2.2


    Wurde mir auch im Dateimanager angezeigt.
    USB-Stick wieder weg.
    Box mal neu gestartet.
    Dann USB-Stick wieder hin.
    Die Mounts nach den Label-Namen waren wieder da (/usb2.1 und /usb2.2)


    Also wenn ich das hier richtig verstanden habe, würde ich sagen, es hat geklappt.
    Ich hoffe ich lag jetzt mit diesem Beitrag nicht völlig daneben.
    Der gute Wille war da :)

    Gruß Karate01



    Dream8000 SS - int. HDD 2TB - OoZooN
    Dream800 HD Sat - int. HDD 400GB - OoZooN
    Dream600 Sat - int. HDD 160GB - PCD 7.0

    Einmal editiert, zuletzt von Karate01 ()

  • na ja, das mounten von den BA devices hätte ich wohl noch anpassen sollen (das deren labels ignoriert werden, die sind nur für BA da), aber sonst sieht das alles schon richtig aus.


    Na ja testet schön weiter, für eine neue version rentiert sich das noch nicht, und Wünsche habt Ihr auch noch nicht geäußert.


    Was ich auch noch in die finale Version einbauen muss ist das leerzeichen im label ignoriert werden um (eure) Fehler zu vermeiden.


    LG
    gutemine

    Einmal editiert, zuletzt von gutemine ()

  • Zitat

    Original von Erim
    dm8000


    hdd und BA auf CF werden gemountet, sda1 wird nicht auf sd gemountet.


    Das wird auch nur dann der fall sein wenn du mit Mountie die SD karte als sd labelst !


    Bitte ausprobieren und berichten ob es dann auch richtig geht.


    Und nochmals, für ungelabelte devices bleibt alles udev-mäßig beim alten, ausser das Mountie die harddisk auch gleich beim installieren labelt - den Rest müsst Ihr im Plugin (oder FAT und NTFS halt auch am PC) labeln wenn ihr ein device fix an /media/label haben wollt.


    LG
    gutemine

    2 Mal editiert, zuletzt von gutemine ()

  • Zitat

    Original von gutemine


    Und nein, mountpoints werden wenn sie vom disklabel kommen nicht aufgeräumt, ich bin der meinung das das ewige Löschen und Neuanlegen wenn man ein device an und absteckt nur den Flash unnötig belastet !


    LG
    gutemine



    o.k. ...... und wie räume ich dann wieder auf?
    peinlich, aber in welcher Datei sind die Einträge dann drin?


    ..... weil nach ein paar labelversuchen, sieht das /media ein bisschen wirr aus
    und mit DCC kann ich die Verzeichnisse auch nicht wirklich löschen.

    Gruß Karate01



    Dream8000 SS - int. HDD 2TB - OoZooN
    Dream800 HD Sat - int. HDD 400GB - OoZooN
    Dream600 Sat - int. HDD 160GB - PCD 7.0

  • reboote mal und dann solltest du die directories die nicht mehr benutzt sind auch löschen können - soll ich evt einen Menupunkt in Mountie reintun - entfernen unbenutzer mount directories ?


    Ich habe ja kein Problem mit löschen nur das selbe directory immer wieder löschen und neuanlegen nur weil man das device an und absteckt ist meines Erachtens Blödsinn.


    In einem eigenen filesystem wie beim autofs maccht das sinn (das liegt eigentlich nur im memory), beim udev bin ich mir da nicht so sicher :)


    LG
    gutemine

    2 Mal editiert, zuletzt von gutemine ()

  • Ganz sponane Antwort: YES - Das wäre klasse ! =)


    Das mit dem Booten versuche ich dann gleich mal.


    THX



    //EDIT:
    Reboot ..... konnte die Verzeichnisse löschen !! (wie vorhergesagt)
    Mega Danke !!
    (Jetzt sieht´s wieder besser aus und nicht wie bei Hempels unter´m Bett :-))

    Gruß Karate01



    Dream8000 SS - int. HDD 2TB - OoZooN
    Dream800 HD Sat - int. HDD 400GB - OoZooN
    Dream600 Sat - int. HDD 160GB - PCD 7.0

    2 Mal editiert, zuletzt von Karate01 ()

  • Ja bitte, weil der Mountie4GP2 ist ja nur eine ans udev angepasst version des normalen Mountie Plugins - wirklich sauber wäre wenn der shwomounts und labe teil auch im hotplug menu angeboten würde.


    Im Moment gehts eigentlich nur darum zu zeigen das man udev und label ansatz schön verheiraten kann - und man damit die links sofort eliminieren könnte - wenn dann jemand noch die alten mountpoints will muss er halt 1x labeln und gut ist es.


    Ich finde man solllte die Wahle den usern überlassen, und das mit dem label ist halt leicht zu verstehen und zu erklären, unter hdc1, hda1, sda1, etc... kann sich niemand wirklich was vorstellen. Der Original Mountie verwendet dort einfach usb,1,2,3,... aber das ist eher Geschmacksache und ginge mit udev regeln auch leicht zu machen.


    Wenn man schon ein enigma2 für alle boxen hat, dann sollte man das nicht durch unterschiedliche devicelabel wieder verkomplizieren je nachdem welche Anschlüsse die box hat und damit auch die ganze sache mit plugins, picons,.. verkomplizieren.


    LG
    gutemine

    4 Mal editiert, zuletzt von gutemine ()

  • jo hast recht, habe sie als sd gelabelt dann gings.
    danach hatte ich nen BSOD bei dem Versuch media/BA in /media/ba umzulabeln, ich hatte da nen symlink ba drin.
    da müsste ne abfrage rein, ansonsten läuft es, danke dir :)
    Und würde mir es besser gefallen wenn mountie nicht im extensions menu auftaucht.
    Man brauch das Teil ja eigentlich nicht ständig.


    MfG


    Code
    File "/usr/lib/enigma2/python/Plugins/Extensions/Mountie4GP2/plugin.py", line 194, in askForLabel
        os.mkdir("/media/%s" % self.mountielabel)
    OSError: [Errno 17] File exists: '/media/ba'
    (PyObject_CallObject(<bound method Session.processDelay of <__main__.Session instance at 0x30285238>>,()) failed)
  • Ja, danke, das wird noch eingebaut das symlinks vorher entfernt werden (dann tue ich mir auch leichter mit dem hdd symlink, den ich im Moment bei der installation entferne.


    Die erste version war ja primär dazu da, um zu zeigen das es geht und um auszutesten ob es auf allen enigma2 boxen funktioniert trotz underschiedlicher Anschlüsse und Devicenamen.


    Und nein, du solltest keine BA devices umlabeln, das sollte so bleiben wie es ist !


    Wenn du mountie behalten willst ändere einfach den /media/ba link:


    ln -sfn /media/BA /media/ba


    und für die WW Partition:


    ln -sfn /media/WW /media/usb (oder cf)


    LG
    gutemine

    5 Mal editiert, zuletzt von gutemine ()