OE2.5 (dm900) - bug im samba sysVinit start/stop script

  • Mir ist aufgefallen, dass in /etc/init.d auch ein samba start|stop script enthalten ist. Du stop Funktion ist buggy. Da werden die ausführbaren binaries im falschen Order gesucht




    Wofür wird das script benötigt? Samba kann auch über systemctrl gestartet/gestoppt werden. Das Script ist lt. maintainer info doch schon etwas älter und das liese sich heutzutage auch etwas moderner lösen, aber wenn man die Pfade anpasst funktioniert es.

    Gruß Fred

    Die Dreambox ist tot, es lebe die Dreambox

    2 Mal editiert, zuletzt von Fred Bogus Trumper ()

  • Wobei das im systemd nicht auch ganz sauber zu laufen scheint
    status meldet läuft nicht, aber der share ist definitiv erreichbar, nmbd und smbd laufen




    nur mit dem angepassten initV script lässt sich samba stoppen/starten

    Gruß Fred

    Die Dreambox ist tot, es lebe die Dreambox

    5 Mal editiert, zuletzt von Fred Bogus Trumper ()

  • naja, dann ist auch das service samba obsolet, da wird nach einer /usr/sbin/samba gesucht, die es nicht gibt

    Code
    Jan 22 01:00:22 dm900 systemd[1]: Starting Samba AD Daemon...
    Jan 22 01:00:22 dm900 systemd[990]: samba.service: Failed at step EXEC spawning /usr/sbin/samba: No such file or directory
    Jan 22 01:00:22 dm900 systemd[1]: samba.service: Main process exited, code=exited, status=203/EXEC
    Jan 22 01:00:22 dm900 systemd[1]: Failed to start Samba AD Daemon.
    Jan 22 01:00:22 dm900 systemd[1]: samba.service: Unit entered failed state.
    Jan 22 01:00:22 dm900 systemd[1]: samba.service: Failed with result 'exit-code'.

    Dann kann man es auch gleich weglassen, damit es keine Verwirrung stiftet.


    Auf die Idee muss man erst kommen, smb.service und nmb.service zu stoppen und neu zu starten, wenn man den samba-sever neu starten möchte obwohl es das service samba gibt. Da sehe ich keinen Vorteil zu sysVinit.


    so gesehen würde das initV script Sinn machen, wenn es out of the box funktionieren würde - das macht auch nichts anderes. Aber da könnte man stattdessen auch gleich die systemctrl Befehle reinmachen um den restart mit einem Befehl zu erledigen.


    Aber gut, wenn man es weiß ...

    Gruß Fred

    Die Dreambox ist tot, es lebe die Dreambox

    4 Mal editiert, zuletzt von Fred Bogus Trumper ()

  • hmm, kannst du das mal prüfen?


    Das Script ist im samba-base enhalten, gerade am feed nachgesehen.



    ich würde das angepasste bzw. optimierte script nach /usr/local/bin legen

    Gruß Fred

    Die Dreambox ist tot, es lebe die Dreambox

    6 Mal editiert, zuletzt von Fred Bogus Trumper ()

  • Imho ist bei uns in den images aber standardmässig auch nur samba-base installiert... und da gibts dann deine Scripte da auch nicht :winking_face:


    just 4 info


    das Thema ist zwar als erledigt markiert, aber das buggy script /etc/init.d/samba ist auch im aktuellen update weiterhin enthalten
    samba-base_4.4.5-r0.6_armhf.deb


    man muss nur die Pfade anpassen, damit es funktioniert, wobei man das ganze Script überarbeiten könnte/sollte - oder ganz entfernen

    Gruß Fred

    Die Dreambox ist tot, es lebe die Dreambox

    Einmal editiert, zuletzt von Fred Bogus Trumper ()

    • Offizieller Beitrag

    Wer Initscripts direkt benutzt muss mit Problemen bei Software-Updates rechnen. Dass SysV-Initscripts vorhanden sind ist durch die Build-Konfiguration bedingt, hat aber keinen Zweck im OS (sofern das jeweilige Paket systemd Units mitbringt). Der Rescue-Loader benutzt SysV-Init aber kein Samba. Bitte nicht noch mehr Zeit damit verschwenden.

  • Sorry, wenn ich das Thema noch einmal anspreche, ich hätte noch eine Frage zu Sambe im OE2.5:


    Neben dem init start/stop script gibt ein smb.service und eine samba.service, smb.service ist aktiv und enabled und samba über systemctrl steuerbar. (neu)starten, stoppen en/disablen etc.
    samba.service funktioniert nicht (missing /usr/bin/samba)



    Hat es einen bestimmten Grund, dass das service zweimal vorhanden ist? Ich will natürlich aus Gewohnheit immer samba(.service) neu starten :winking_face:


    Die .service files sind fast identisch

    Gruß Fred

    Die Dreambox ist tot, es lebe die Dreambox