Hi
ich habe 2 Fragen:
1. NFS-Mount: ich habe einen Zotac-ION2-Netclient im Schlafzimmer - gerade auf yaVDR aufgerüstet (weil ich die Distri wirklich genial finde).
Dieser muss nicht aufzeichen - ich will aber das Verzeichniss des Haupt-VDRs einbinden um die Aufnahmen dort abzuspielen.
ein manuelles "mount hdvdr:/video /srv/vdr/video.00" ist da halbwegs passend. Wie binde ich das am besten in die offizielle yaVDR konfiguration ein?
Geht auch ein einbinden als /srv/vdr/vide0.01? Per Webinterface tut sicht nicht viel wenn ich dort "hdvdr:/video" einbinde - mehr kann man da ja nicht eingeben.
Oder wie hier in fstab: link
2. Eigener Shutdown-Befehl
Ich möchte beim Shutdown einen eigenen Befehl absetzen (groupswrite aus dem EIBD-Umfeld - damit kann ich die Steckdose Zeitverzögert Abschalten).
Wie und wo Pflege ich den am besten yaVDR-Konform ein?
Danke im Voraus
Gruß
Thorsten
2 Fragen: NFS-Mount und eigenen Shutdown-Befehl
-
-
1. NFS-Mount: ich habe einen Zotac-ION2-Netclient im Schlafzimmer - gerade auf yaVDR aufgerüstet (weil ich die Distri wirklich genial finde).
Dieser muss nicht aufzeichen - ich will aber das Verzeichniss des Haupt-VDRs einbinden um die Aufnahmen dort abzuspielen.
ein manuelles "mount hdvdr:/video /srv/vdr/video.00" ist da halbwegs passend. Wie binde ich das am besten in die offizielle yaVDR konfiguration ein?
Geht auch ein einbinden als /srv/vdr/vide0.01? Per Webinterface tut sicht nicht viel wenn ich dort "hdvdr:/video" einbinde - mehr kann man da ja nicht eingeben.
Oder wie hier in fstab: link
Hast du im WFE auch "Speichern" gedrückt? Dann sollte der Avahi-Mounter das als Unterverzeichnis des eigentlichen VDR-Aufnahmeverzeichnisses mounten (spätestens wenn er neu gestartet wird). Falls auf deinem Haupt-VDR die NFS-Freigaben über Avahi angekündigt werden sollten sie automatisch eingebunden werden (bei einem Rechner mit yaVDR automatisch der Fall), kann aber auch leicht nachgerüstet werden: http://www.yavdr.org/tutorials…-vdr-addon-avahi-mounter/
/srv/vdr/video.01 geht nicht als mount-Punkt für ein entferntes Aufnahmeverzeichnis, weil der VDR seit jeher nur Aufnahmen berücksichtigt, die in /srv/vdr/video.00 liegen (auch wenn es nur Symlinks sind).
NFS-Freigaben lassen sich über die fstab nicht ohne weiteres als Haupt-Aufnahmeverzeichnis einbinden, da der VDR schon gestartet sein kann, bevor das Netzwerk verfügbar ist - da muss man dann sein System ein bisschen anpassen.2. Eigener Shutdown-Befehl
Ich möchte beim Shutdown einen eigenen Befehl absetzen (groupswrite aus dem EIBD-Umfeld - damit kann ich die Steckdose Zeitverzögert Abschalten).
Wie und wo Pflege ich den am besten yaVDR-Konform ein?
Die Shutdown-Hooks liegen wie von den e-Tobi Paketen gewohnt unter /usr/share/vdr/shutdown-hooks/ und werden beim Auslösen des Herunterfahrens ausgeführt. Am besten das Template für /usr/share/vdr/shutdown-hooks/S99.shutdown durch ein eigenes Template abändern. -
PERFEKT! Danke.
Der Shutdown-Hook klappt wie er soll (ich musste mir noch die "eibd-pakete" kompilieren - aber das ist nicht VDR-Relevant) - jetzt wird die Steckdose wenige Sekunden nachdem der VDR-Client heruntergefahren ist ausgeschaltet.
(Der die Dose geht per Tastendruck auch wieder an - der VDR ist auf Autostart konfiguriert und der TV geht bei Spannungswiederkehr auch automatisch an).Der NFS-Share wird auch automatisch gemountet - da hatte ich gestern wohl einen Schreibfehler.
ABER: nach dem Reinmounten des NFS-Shares muss ich manuell die VDR-Aufnahmen neu einlesen (über das Menü).
Ist das ein Bug - oder warum ist das nicht automatisiert?Gruß
Thorsten -
Gute Frage, das scheint tatsächlich zu fehlen: https://github.com/yavdr/vdr-a…master/avahi-mounter#L297
Am besten mal als Bug in den Bugtracker schreiben (https://bugs.yavdr.com/projects/avahi-mounter) und hinter der for-Schleife in https://github.com/yavdr/vdr-a…master/avahi-mounter#L288 das try ... except zur Aktualisierung des Aufnahmeverzeichnisses aus https://github.com/yavdr/vdr-a…master/avahi-mounter#L214 als Workaround einbauen.
-
-
Ach ja - noch eine kleinigkeit - keine Ahnung ob man das als Bug oder "unschönheit" Bezeichnen würde.
Wenn ich den NFS-Share eingebunden habe - kann ich den VDR nicht mehr regulär runterfahren.
Der LiveGuard bricht den Shutdown ab.
Sollte man nicht beim Einbinden von NFS-Mounts per Weboberfläche automatisch den LiveGuard für NFS deaktivieren?
(klar kann ich das auch per Hand machen...)Gruß
Thorsten -
Wenn ich den NFS-Share eingebunden habe - kann ich den VDR nicht mehr regulär runterfahren.
Der LiveGuard bricht den Shutdown ab.
Sollte man nicht beim Einbinden von NFS-Mounts per Weboberfläche automatisch den LiveGuard für NFS deaktivieren?
(klar kann ich das auch per Hand machen...)
Zeig für den Fall bitte mal die Ausgabe vonCodesudo netstat -t | grep -e "^tcp" | grep -ve "CLOSE_WAIT[ \t]*$" | sed -re "s/ +/ /g" | cut -d " " -f 4
IMHO darf das Lifeguard-Skript in dem Fall nicht abbrechen, auch wenn du NFS-Freigaben gemountet hast (und bei mir tut es das auch nicht).soll jetzt wo genau hin? Einfach copy/paste nach 315 (genau vor dem "class Config:" in 316) ?
Die Syntax von Python muss man schon beachten. Die __call__ Funktion ab Zeile 287 sollte dann so aussehen (die Leerzeichen am Zeilenanfang sind essentiell, nicht mit Tabs mischen!):Code
Alles anzeigendef __call__(self): for i in range(0,999): path = "%s.%03d" % (self.hdf_path, i) dest = subprocess.Popen(["dbget",path], stdout=subprocess.PIPE).communicate()[0] if "%s" % dest != '': self.mount(dest, i) else: try: bus = dbus.SystemBus() dbus2vdr = bus.get_object('de.tvdr.vdr', '/Recording') dbus2vdr.Update(dbus_interface = 'de.tvdr.vdr.recording') except: try: syslog("dbus unavailable, fallback to update /srv/vdr/video.00/.update") os.utime("/srv/vdr/video.00/.update", None) except: syslog("Create /srv/vdr/video.00/.update") open("/srv/vdr/video.00/.update", 'a').close() os.chown("/srv/vdr/video.00/.update",vdr) return
-
Moin!
Nur als Hinweis: "/Recording" gibt's aktuelle nicht mehr (in stable schon noch), also besser "/Recordings" nehmen. Müsste hoffentlich auch schon in stable gehen.
"/Recording" ist deprecated.Lars.
-
Hi
sorry - hab die Antworten übersehen. Werde das heute Abend testen und nachliefern.Gruß
T. -
Hi
hier meine Netstat-Infos:Coderoot@zotac2:~# netstat -tAktive Internetverbindungen (ohne Server)Proto Recv-Q Send-Q Local Address Foreign Address Statetcp 0 9588 localhost:37890 localhost:42098 VERBUNDENtcp 0 0 localhost:42098 localhost:37890 VERBUNDENtcp 0 0 zotac2.gehrig.lan:43277 hdvdr.gehrig.lan:2004 VERBUNDENtcp 0 0 zotac2.gehrig.lan:41575 hdvdr.gehrig.lan:38832 VERBUNDENtcp 0 0 localhost:37890 localhost:42097 VERBUNDENtcp 0 0 zotac2.gehrig.lan:42450 hdvdr.gehrig.lan:36511 VERBUNDENtcp 0 132 zotac2.gehrig.lan:ssh x201.gehrig.lan:62594 VERBUNDENtcp 0 0 localhost:42097 localhost:37890 VERBUNDEN root@zotac2:~# sudo netstat -t | grep -e "^tcp" | grep -ve "CLOSE_WAIT[ \t]*$" | sed -re "s/ +/ /g" | cut -d " " -f 4localhost:37890localhost:42098zotac2.gehrig.lan:43277zotac2.gehrig.lan:41575localhost:37890zotac2.gehrig.lan:42450zotac2.gehrig.lan:sshlocalhost:42097
was mich wundert: bei diesen Netstat-Verbindungen ist die NFS-Verbindung zum "hdvdr" nicht angegeben - diese ist aber vorhanden:
Coderoot@zotac2:~# mount/dev/sda1 on / type ext4 (rw,errors=remount-ro)proc on /proc type proc (rw,noexec,nosuid,nodev)sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)none on /sys/fs/fuse/connections type fusectl (rw)none on /sys/kernel/debug type debugfs (rw)none on /sys/kernel/security type securityfs (rw)udev on /dev type devtmpfs (rw,mode=0755)devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)none on /run/shm type tmpfs (rw,nosuid,nodev)/srv/vdr/video.00 on /srv/share/vdr type none (rw,bind)rpc_pipefs on /run/rpc_pipefs type rpc_pipefs (rw)nfsd on /proc/fs/nfsd type nfsd (rw)hdvdr:/video on /srv/vdr/video.00/hdvdr.000 type nfs (rw,addr=192.168.0.109)
Jetzt hab ich gerade den NFS-LiveGuard wieder aktiviert - und die Kiste ist trotzdem sauber runtergefahren. Komisch....
Ich werde das mal genauer beobachten - und versuchen im Fehlerfall den passenden Netstat zu liefern. Dauert aber da ich erstmal ne Woche im Ausland unterwegs bin - und das "nur" der Schlafzimmer-VDR ist...
Gruß
Thorsten -
was mich wundert: bei diesen Netstat-Verbindungen ist die NFS-Verbindung zum "hdvdr" nicht angegeben - diese ist aber vorhanden:
Die Idee dieser Abfrage (die ja teil des Lifeguard-Skripts ist) ist nur entfernte NFS-Mounts durch andere Rechner zu erkennen und dann einen Shutdown zu verhindern. Man sieht in dem Fall auch eine entsprechende OSD-Meldung.
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!