[vdr4arch] Nach dem Booten immer "No Signal", bis ich den vdr.service restarte

  • Hallo,


    Schon seit einiger Zeit (nicht von Anfang an) habe ich das Problem, dass der VDR immer nach dem Booten kein Signal hat. Auch nicht wenn ich eine Stunde warte - hab's gestern mal ausprobiert. :)
    Wenn ich dann

    Code
    systemctl restart vdr


    aufrufe, klappt es dann.


    Ich habe das auf die lange Bank geschoben, weil ich den VDR normalerweise monatelang durchlaufen lasse und da hat's mich nicht genug gestört, um es anzugehen.


    In letzter Zeit habe ich aber öfter rebootet, unter anderem das Mainboard getauscht, und dann ein bisschen am Grundsystem getunt, bis wieder alles lief. Und da ich nun eh am Rumfummeln war, könnte man das doch auch mal fixen ... :)


    So sieht mein unit file /etc/systemd/system/vdr.service aus:


    also eigentlich die Standard-Version, wie sie auch in /usr/lib/systemd/system/vdr.service steht. Ich habe lediglich das

    Code
    After=dev-ddbridge-card0.device


    hinzugefügt, um mal auszuprobieren, ob vielleicht die Karte zu lange braucht, um zu initialisieren.


    Ich habe auch noch ausprobiert, den service zu disablen und den VDR immer manuell zu starten. Das hat auch geklappt.
    -> Es ist also nicht so, dass immer der erste Start schiefgeht, sondern der Start muss nur spät genug sein.


    Und bevor ich jetzt anfange, mich in systemd-timer einzulesen, dachte ich, ich frag mal hier nach, ob man es einfacher hinkriegt.


    Noch etwas Info zu meinem System:

    • Tuner von Digital Devices
    • XFCE als Desktop
    • LXDM als Login-Manager mit Auto-Login
    • und eine kleine Besonderheit in der VDR-Konfig: Der läuft unter meinem user.


    Ist solch ein Problem bekannt ? In der SuFu habe ich nichts gefunden.


    Vielen Dank und noch mehr Grüße,
    12-Monkeys

  • Ah, Mist !


    Das muss beim Umzug auf die neue Platte (schon ne Weile her) verlorengegangen sein !


    Man muss dazu sagen, dass der Anlass für dem Umzug ein Plattencrash war und ich einfach alles, was noch zu retten war, rüberkopiert und mit einem (nicht mehr ganz aktuellen) Backup ergänzt habe. Dann alle Pakete neu installiert und in den vielen Meldungen ist das dann untergegangen. Ich hätte mir also doch mehr Zeit nehmen sollen ...


    Muss ich das noch irgendwo eintragen oder sollte systemd das automatisch über eine Namenskonvention finden ?
    Nur die Datei allein hat leider nicht geholfen.


    Und angenommen, ich würde mal noch mehr Geräte an die Octopus Bridge stecken, muss ich dann das vdr-gensddropin noch mal machen ?

  • Muss ich das noch irgendwo eintragen oder sollte systemd das automatisch über eine Namenskonvention finden ?

    Nein. Das Skript einmal ausführen und fertig. Spätestens bei nächsten Reboot weiß systemd Bescheid.

    Und angenommen, ich würde mal noch mehr Geräte an die Octopus Bridge stecken, muss ich dann das vdr-gensddropin noch mal machen ?

    Theoretisch: Ja. Praktisch: Nicht unbedingt. Also nur wenn die neuen Karten nicht langsamer sind als die vorhandenen.


    OT: Ich bin teilweise echt verwundert, wie viele Tuner ihr braucht. So toll ist doch das deutsche Fernsehprogramm überhaupt nicht.

  • Das Skript einmal ausführen und fertig. Spätestens bei nächsten Reboot weiß systemd Bescheid.


    Hm ... hat leider nicht funktioniert. Gerade noch mal neu gebootet, und wieder "No Signal".


    Es hat auch nicht geholfen, das direkt in die Datei vdr.service einzutragen. Anscheinend braucht er noch etwas zum Starten.
    D.h. ich muss da weiter forschen. Aber erst morgen, ich muss jetzt ins Bett.


    Dir schon mal vielen Dank für die Hilfe bisher.


    Theoretisch: Ja. Praktisch: Nicht unbedingt. Also nur wenn die neuen Karten nicht langsamer sind als die vorhandenen.


    OT: Ich bin teilweise echt verwundert, wie viele Tuner ihr braucht. So toll ist doch das deutsche Fernsehprogramm überhaupt nicht.


    Naja, die Frage war mehr zum Verständnis der Sache.

  • Bei meinen VDRs half hier immer ein After=network.service in vdr.service. Auch bei denen, die gar kein Netz benötigen - dadurch werden sie etwas ausgebremst. Aber vielleicht liegt bei Dir ja noch ein anderer Grund vor.


    Stefan

  • Wie sieht denn die /etc/systemd/system/vdr.service.d/wait-for-devices.conf aus, die du angelegt hast?

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • 447377: Das kann so nicht ganz richtig sein. Erstmal sollt es gar kein network.service geben. Es gibt ein network.target. Dieses zeigt aber nur an, dass jetzt ein Service da ist, der sich um das Netzwerk kümmert. Das network-online.target zeigt an, dass jetzt auch tatsächlich Netzwerk da ist.

  • Das ist die angelegte Datei:



    Also wenn es nicht mit vertretbarem Aufwand zu lösen ist, werde ich halt als Notlösung doch den Weg über systemd-timer gehen und den VDR einfach immer 5 min. nach dem Booten starten.

    Danke und Gruß,
    Markus

    Einmal editiert, zuletzt von 12-monkeys () aus folgendem Grund: Tippfehler

  • 447377: Das kann so nicht ganz richtig sein. Erstmal sollt es gar kein network.service geben. Es gibt ein network.target. Dieses zeigt aber nur an, dass jetzt ein Service da ist, der sich um das Netzwerk kümmert. Das network-online.target zeigt an, dass jetzt auch tatsächlich Netzwerk da ist.

    Stimmt, es muss network.target und nicht network.service heißen. Sorry und danke
    Stefan

  • Ich hab's jetzt mit dem timer hinbekommen. War sogr einfacher als gedacht.


    Meine Original-Datei /etc/systemd/system/vdr.service wollte ich behalten, daher habe ich eine zweite erstellt.


    Vorgehensweise:

    • Die Datei /etc/systemd/system/vdr.service nach /etc/systemd/system/vdr-timed.service kopieren
      (falls nicht vorhanden, /usr/lib/systemd/system/vdr.service kopieren)
    • In der Kopie den Abschnitt [Install] löschen
    • Neue Datei /etc/systemd/system/vdr-timed.timer erstellen (Inhalt siehe unten)
    • systemctl daemon-reload
    • systemctl disable vdr.service
    • systemctl enable vdr-timed.timer (wichtig: den timer, nicht den service)
    • rebooten


    Wichtig: Es dürfen nie gleichzeitig vdr.service und vdr-timed.timer enabled sein !!!



    Inhalt von /etc/systemd/system/vdr-timed.timer:

    Code
    [Unit]
    Description=Startup timer for Video Disk Recorder
    
    
    [Timer]
    OnBootSec=5min
    
    
    [Install]
    WantedBy=timers.target

Jetzt mitmachen!

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