Autor Thema: Mediasrv & systemd  (Gelesen 9521 mal)

TheRulor

  • Newbie
  • *
  • Beiträge: 3
    • Profil anzeigen
Mediasrv & systemd
« am: September 12, 2017, 11:03:37 Nachmittag »
Hallo liebes Sundtek-Team.
Gibt es eine Möglichkeit den mediasrv-Prozess direkt unter die Kontrolle von Systemd zu stellen, statt den mediaclient als Steuerung zu nutzen?
Für den mediasrv habe ich einen Systemd-Parameter gefunden, dessen Ausführung aber nicht genauer beschrieben steht.
Einige Tests führten dazu das systemctl einen Prozess findet, aber diesen nach dem Start nicht mehr aktuell hält.  ???
Ich konnte sowohl meinen DVBS2-USB-Empfänger entfernen und den mediasrv beendet ohne dass das systemctl gemerkt hat.

Kurze Erläuterung warum ich diese Frage stelle:
Wir würden gerne beim Start eines VDRs nicht darauf warten wollen, bis alle DVB-Geräte betriebsfähig sind. Es wäre wünschenswert eine Meldung zu erhalten wenn das Gerät betriebsbereit ist, der mediasrv noch läuft und aktive Teilnehmer hat usw. z.b. über eine udev-Regel oder eine andere Art von Signalisierung.

Vielen Dank im Voraus.
Mfg

Sundtek

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 8604
    • Profil anzeigen
Re:Mediasrv & systemd
« Antwort #1 am: September 13, 2017, 01:00:10 Vormittag »
Hallo,

also der Mediasrv hat einen Parameter in der Konfiguration
device_attach=/pfad/zu/einem/skript DEVID
Wobei DEVID durch die Device ID des hinzugefügten Gerätes ersetzt wird, das Gleiche geht auch mit device_detach (also wenn ein Gerät abgesteckt wird).

Ob noch Applikationen auf den Mediasrv zugreifen sieht man mit
/opt/bin/mediaclient --lc

Den Mediasrv und wie er gestartet wird würde ich nicht antasten, das Problem ist hier eher das es mit sehr vielen Linux Distributionen läuft und das schon seit 10 Jahren. Viele Distributionen haben so ihre Eigenheiten, wir starten also einfach nur den Treiber-Server und dieser arbeitet dann losgelöst vom restlichen System.
Failure is a good thing! I'll fix it

TheRulor

  • Newbie
  • *
  • Beiträge: 3
    • Profil anzeigen
Re:Mediasrv & systemd
« Antwort #2 am: September 13, 2017, 10:34:32 Vormittag »
Hi,
danke für die schnelle Antwort.
device_attach & device_dettach hate ich in der Config-File schon gefunden.
Wann genau wird das Event ausgelöst? Wenn das Gerät im System erkannt ist also unmittelbar nach dem einstecken oder wenn das Gerät betriebsbereit ist idR. dauert das ja ca. 10s.

Wenn ich dich richtig verstehe würdest du mir eher dazu Raten 'Listed Connections' zu nutzen nachdem device_attach bzw. device_dettach erkannt wurde?

Sundtek

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 8604
    • Profil anzeigen
Re:Mediasrv & systemd
« Antwort #3 am: September 13, 2017, 10:37:02 Vormittag »
device_attach wird ausgelöst wenn das Gerät betriebsbereit ist.
Failure is a good thing! I'll fix it

TheRulor

  • Newbie
  • *
  • Beiträge: 3
    • Profil anzeigen
Re:Mediasrv & systemd
« Antwort #4 am: September 13, 2017, 10:52:45 Vormittag »
Ok somit wäre es möglich
./mediaclient --start auszuführen (ohne auf die Geräte zu warten)
device_attach teilt mir zu Laufzeit dann mit, welches Gerät (durch die DEVICE_ID) nun Empfangsbereit wäre.

Nach einem device_detach führe ich /opt/bin/mediaclient --lc aus um ggf. zu prüfen ob ich den Server stoppen kann weil keine weiteren Gerät mehr gekoppelt sind.(Ohne eine eigene Liste von verfügbaren Geräten zu pflegen)

Sundtek

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 8604
    • Profil anzeigen
Re:Mediasrv & systemd
« Antwort #5 am: September 13, 2017, 12:17:20 Nachmittag »
/opt/bin/mediaclient --start ruft im Hintergrund /opt/bin/mediaclient -d -p /opt/bin/dvb auf.
Das wartet nicht auf Geräte sondern startet durch.

/opt/bin/mediaclient --start --wait-for-devices wird solange blockieren bis alle vorhandenen Tuner initialisiert wurden.
Failure is a good thing! I'll fix it