vdr uid gid ändern Shutdown klappt nicht

  • Ich muss ja zu geben das ich eine bisschen an meiner yavdr Installation "rumgebastelt" habe. Und ich auch nicht mehr so genau weis wann der shutdown aufgehört hat zu bisschen.


    Also zum einen ist es eine Installation mit nfs root fs. Da ich aber noch module für meinen Bluetooth Empfänger brauchte hatte ich ein par Probleme diese zu installieren (mit nfs root kein grub dadurch Probleme bei der installation der module). Es hatte zwar geklappt aber ich weis nicht mehr was ich alles gemacht hatte. Dann habe ich die uid gid des VDR users angepasst damit diese zu meinen anderen VDR Installationen passt. Dann habe ich wieder von xine auf xineliboutput umgestellt nach dem ich zuvor xbmc als standard Frontend eingestellt hatte.
    Ich weis nicht bei welcher dieser Modifikationen ich denn shutdown hätte kaput machen hätte können.


    Wenn ich s2ram nutze schaltet sich mein Rechner aus, auch wenn er nicht richtig aufwacht aber bei einem diskless-system nicht weiter verwundernd.
    Wenn ich shutdown einstelle kommt nur das im log

    Code
    Nov 27 19:08:55 ion vdr-shutdown: executing /usr/share/vdr/shutdown-hooks/S50.noad as shell script
    Nov 27 19:08:55 ion vdr-shutdown: executing /usr/share/vdr/shutdown-hooks/S90.acpiwakeup as shell script
    Nov 27 19:08:55 ion vdr-addon-acpiwakeup: ACPIWakeup functionality is disabled
    Nov 27 19:08:55 ion vdr-shutdown: executing /usr/share/vdr/shutdown-hooks/S90.custom as shell script
    Nov 27 19:08:55 ion vdr-shutdown: executing /usr/share/vdr/shutdown-hooks/S90.nvram-wakeup as shell script
    Nov 27 19:08:55 ion vdr-nvram-wakeup: nvram-wakeup functionality is disabled
    Nov 27 19:08:55 ion vdr-shutdown: executing /usr/share/vdr/shutdown-hooks/S90.shutdown
    Nov 27 19:08:55 ion vdr-shutdown: executing /usr/share/vdr/shutdown-hooks/S91.lifeguard as shell script
    Nov 27 19:08:56 ion vdr-shutdown: executing /usr/share/vdr/shutdown-hooks/S92.imonlcd


    [edit]
    Ich habe meine Änderungen nun an einer vm noch mahl nach gespielt und bin mir nun sicher das es daran liegt das ich für den vdr user eine andere uid gid verwenden will. Nach dem ich die uid und gid geändert habe kann ich als user vdr /usr/lib/vdr/vdr-shutdown.wrapper nicht mehr erfolgreich nutzen.


    Um die uid und gid zu ändern habe ich diese in /etc/passwd und /etc/group angepasst und dann mit find die Dateiberechtigungen angepasst. Allerdings tauchen die alten uid gid noch in /var/lib/yavdrdb.hdf auf.

  • Ich habe zwar nicht herumgebastelt, aber das System auf den neuesten Stand gebracht, inklusive eines apt-get dist-upgrade, bei dem auch der Kernel getauscht wurde.


    Seit dem fährt das System nicht mehr richtig herunter.
    Die Festplatten-LED leuchtet dauerhaft, aber mehr geht nicht mehr :(

    :] Lutz

    yaVDR 0.6, VDR 2.2.0
    Asus P5N7A-VM, 4 GB, 1TB HD, 2x Satelco KNC 1 DVB-C, NetCologne Köln

  • Ich weis zwar jetzt wie ich den shutdown kaputt bekommen habe, nur funktioniert er nach dem zurücknehmen der Änderungen immer noch nicht.
    Nach dem ich die uid und gid des VDR users mit einem Editor in /etc/passwd und /etc/group geändet habe. Scheitert der Aufruf von "/usr/lib/vdr/vdr-shutdown.wrapper 0" mit der Meldung man benötige Root rechte um shutdown auszuführen. Das verhalten bleibt gleich auch wenn man die uid und gid wieder in den ursprünglichen Zustand bringt.


    Um das Problem zu lösen habe ich nun dafür gesorgt das shutdown über sudo aufgerufen wird. Nun Frage ich mich dennoch, wie es dem vdr User möglich war shutdown ohne root rechte auszuführen?

  • Es gibt im Dateisystem ein Flag das man als root setzen kann. Dann darf diese Datei als nicht root mit root rechten ausgeführt werden. Das Flag wird aber gelöscht wenn die Datei angefasst wird.
    Fält aber gerade der Namen von dem Flag nicht mehr ein.
    Ich weiß aber nicht ob es in diesem Fall verwendet wurde.


    //EDIT
    »chmod u+s« das Setuid-Bit.

  • Bei mir war es nicht das suid. Bei mir war die Gruppe falsch, nachdem ich den vdr.vdr an meine vorhandenen angepasst hatte.


    Loesung:
    chown root.vdr /usr/lib/vdr/ctwrapper
    chown root.vdr /usr/lib/vdr/vdr-shutdown.wrapper

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!