Posts by JurKub
-
-
your work around didn't work
This one is working after the above console command but may not follow the rules of systemd
Code: /storage/.config/system.d/lockdev.service[Unit] Description=Workaround for LIRC issue After=lircd.service [Service] ExecStart=/usr/bin/mkdir -p /var/lock/lockdev [Install] WantedBy=multi-user.target
How did you find out, that the lock file is missing, are there any logs for lirc in libreelec?
If you are looking for logs have a look at this folder:
smb share: Logfiles
or
/storage/logfiles
-
How did you find out, that the lock file is missing, are there any logs for lirc in libreelec?
Hi lwing
good to hear my investigations helped to get your system working.
I opened a PuTTY session:
Codekillall -9 eventlircd killall -9 lircd /usr/sbin/lircd -O /storage/.config/lirc_options.conf --nodaemon /storage/.config/lircd.conf
In another PuTTY session I'ved started:
After that I got an error message about the lock file in the first PuTTY session.
Cheers
JurKub -
If you're already using the autostart.sh file, you might as well add the workaround there too, no?
I'm only using it to create the missing folder
-
Hi all,
need to come back to this old thread because of issue when upgrading from LibreELEC 10.0.4 to 12.0.1.
The driver tries to creates lock files in /var/lock/lockdev which is not existing.
In LibreELEC 10.0.4 the drives uses /var/lock
Workaround is to create it using autostart.sh.
Any ideas how to fix it without workaround using autostart.sh ?
Thx
JurKur -
2. you said running SMB is fine, why don't run SMB [3.1 ?!] only ?
in the meantime I changed to Samba on all machines.
But I'll still try to find the NFS issue
-
Based on https://github.com/torvalds/linux/search?q=RPCSVC_MAXPAYLOAD the kernel is set to 1MB for TCP
So what are the tcp window sizes? And the latency?
nuc11:~ # cat /proc/sys/net/ipv4/tcp_wmem
4096 16384 4194304
nuc11:~ # cat /proc/sys/net/ipv4/tcp_rmem
4096 131072 6291456
nuc11:~ # cat /proc/sys/net/ipv4/tcp_window_scaling
1
fhemraspi:~ # cat /proc/sys/net/ipv4/tcp_wmem
4096 16384 4194304
fhemraspi:~ # cat /proc/sys/net/ipv4/tcp_rmem
4096 131072 6291456
fhemraspi:~ # cat /proc/sys/net/ipv4/tcp_window_scaling
1
-
Guys thx for your passion
I believe it's an rsize / wsize issue of the Raspi NFS Server
Nevertheless what I enter on client site using mount for rsize and wsize the value don't change
For me it looks like it is hard coded into the Raspi NFS Server or I'm to stupid to find the way to change it
NFS mount (rsize=131072,wsize=131072)
Code10.0.0.53:/srv/vdr/video on /storage/videos type nfs (rw,relatime,vers=3,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=10.0.0.53,mountvers=3,mountproto=tcp,local_lock=none,addr=10.0.0.53)
Samba mount (rsize=1048576,wsize=1048576)
-
the Ethernet interface is not the issue
using Samba everything works fine
-
- just my 2 ct -
would playing with wsize and rsize have an affect ?
see:
https://linux.die.net/man/5/nfs
moons ago I played with it to see how to get the best throughput.
it turned out that the defaults were not that ideal.
at that time the defaults were: rsize=1048576,wsize=1048576
I got the best with: rsize=32768,wsize=32768
but -as said - it's years ago: old NFS server (3.x ?), old disk, ...
write: read: in MB/s
=================
6,91 49,68 NFS-default wsize, rsize)
35,31 81,45 rsize=8192,wsize=8192
34,90 101.75 rsize=16384,wsize=16384
49.86 110.62 rsize=32768,wsize=32768 (nearly full GB-LAN speed [ 125 MB/s (theoretically)]
rsize and wsize don't change nevertheless what I'm entering
-
One other thing to consider here is perhaps NFS locking is an issue, especially if you are trying to watch a file that is being written to (i.e. trying to watch a live recording being written by VDR). Probably worthwhile to ask this question on the VDR forums, as you will probably find someone with similar setups. Tvheadend & MythTV work completely differently, everything is streamed by Tvheadend or MythTV, client doesn't access the recorded media files directly.
There is just too much opportunity for speculation here with very little data, unfortunately.
I don't try to watch a live recording being written by (another) VDR.
It doesn't matter if I watch a VDR recording or another mp4 video, same issue.
I'm more than happy to provide as much data you like, just ask for what you need to see
-
I am running Tvheadend with 6 tuners (2 tuners are over Ethernet, and 4 tuners are in a PCI card in the computer) on an AMD 8-Core machine with 20TB storage, it has no problem recording all tuners at the same time, plus serving 2 medacenter devices over NFS. It serves both my media library and Tvheadend content (which is over HTSP [TCP]).
Have you ran bcmstat.sh on your Pi to get more insight? I would run it with: "bcmstat.sh xce ieth0", you might need to change the eth0 to your network device. I would run that on your Pi hosting the storage, it will give you good visibility to your RX/TX network plus CPU/MEM usage. You might need to check your kernel settings for the number of NFS daemons running (on a Debian based system this is in /etc/default/nfs-kernel-server, changing RPCNFSDCOUNT). I run with 8 myself which is probably overkill since I don't have the overhead of writing to NFS over the network from Tvheadend like you do.
This article has some advice on tuning nfsd threads:
I don't think the Ethernet port is the issue, because using NFS for recording and Samba for replay at the same time everything woks fine
/etc/default/nfs-kernel-server
Code
Display More# Number of servers to start up RPCNFSDCOUNT=8 # Runtime priority of server (see nice(1)) RPCNFSDPRIORITY=0 # Options for rpc.mountd. # If you have a port-based firewall, you might want to set up # a fixed port here using the --port option. For more information, # see rpc.mountd(8) or http://wiki.debian.org/SecuringNFS # To disable NFSv4 on the server, specify '--no-nfs-version 4' here RPCMOUNTDOPTS="--manage-gids" # Do you want to start the svcgssd daemon? It is only required for Kerberos # exports. Valid alternatives are "yes" and "no"; the default is "no". NEED_SVCGSSD="" # Options for rpc.svcgssd. RPCSVCGSSDOPTS=""
I've tied sync and async as well in
/etc/exports
Code
Display More################################################################################# # # # The following configuration file is generated automatically by the yaVDR # # system. Don't change this file as every update of yaVDR will overwrite # # the local changes. Instead put your required customizations # # into /etc/yavdr/templates_custom/ based on the original templates # # under /usr/share/yavdr/templates. # # # # http://www.yavdr.org/developer-zone/template-overview/ # # # # # ################################################################################# # /etc/exports: the access control list for filesystems which may be exported # to NFS clients. See exports(5). # # Example for NFSv2 and NFSv3: # /srv/homes hostname1(rw,sync,no_subtree_check) hostname2(ro,sync,no_subtree_check) # # Example for NFSv4: # /srv/nfs4 gss/krb5i(rw,sync,fsid=0,crossmnt,no_subtree_check) # /srv/nfs4/homes gss/krb5i(rw,sync,no_subtree_check) # /srv *(rw,fsid=0,sync,no_subtree_check,no_root_squash,anongid=666,anonuid=666) # # /srv *(rw,fsid=0,sync,no_subtree_check,all_squash,anongid=666,anonuid=666) /srv/share/vdr *(rw,fsid=0,async,no_subtree_check,all_squash,anongid=666,anonuid=666) /srv/audio *(rw,fsid=1,async,no_subtree_check,all_squash,anongid=666,anonuid=666) /srv/video *(rw,fsid=2,async,no_subtree_check,all_squash,anongid=666,anonuid=666) /srv/picture *(rw,fsid=3,async,no_subtree_check,all_squash,anongid=666,anonuid=666)
-
Sure... But "if it looks stupid but it works, then it isn't stupid".
OK I give up
-
using NFS for recording and Samba for replay at the same time everything woks fine.
this feels like a workaround but not like a solution
-
There is only one way to find that out.
would you tell me how
-
What OS is running on the RPi4 server with 4TB?
Linux fhemraspi 5.10.63-v7l+ #1459 SMP Wed Oct 6 16:41:57 BST 2021 armv7l GNU/Linux
Handling files is a relatively demanding job on a CPU for a RPi, both USB30 and Gigabit ports really only work at half speeds in my experience. So depending on the overall bitrate of the VDR streams, it's possible that the RPi4 is simply not up to the task, despite having set up NFS correctly.
I wondering using NFS for recording and Samba for replay at the same time everything woks fine.
The problem exists only when using NFS for recording and for replay at the same time !
-
Hi guys,
when VDR-Office is doing more the 2 recordings at the same time replay on VDR-Living is chopping, both using NFS.
If I do the repay on VDR-Living using Samba it works fine.
This is a rough drawing of my LibreELEC setup.
NFS mountings:
VDR-Office:
/storage/videos -> FhemRaspi:/srv/vdr/video
VDR-Living:
/storage/videos -> FhemRaspi:/srv/vdr/video
FhemRaspi /etc/exports:
Code
Display More################################################################################# # # # The following configuration file is generated automatically by the yaVDR # # system. Don't change this file as every update of yaVDR will overwrite # # the local changes. Instead put your required customizations # # into /etc/yavdr/templates_custom/ based on the original templates # # under /usr/share/yavdr/templates. # # # # http://www.yavdr.org/developer-zone/template-overview/ # # # # # ################################################################################# # /etc/exports: the access control list for filesystems which may be exported # to NFS clients. See exports(5). # # Example for NFSv2 and NFSv3: # /srv/homes hostname1(rw,sync,no_subtree_check) hostname2(ro,sync,no_subtree_check) # # Example for NFSv4: # /srv/nfs4 gss/krb5i(rw,sync,fsid=0,crossmnt,no_subtree_check) # /srv/nfs4/homes gss/krb5i(rw,sync,no_subtree_check) # /srv *(rw,fsid=0,sync,no_subtree_check,no_root_squash,anongid=666,anonuid=666) # # /srv *(rw,fsid=0,sync,no_subtree_check,all_squash,anongid=666,anonuid=666) /srv/share/vdr *(rw,fsid=0,async,no_subtree_check,all_squash,anongid=666,anonuid=666) /srv/audio *(rw,fsid=1,async,no_subtree_check,all_squash,anongid=666,anonuid=666) /srv/video *(rw,fsid=2,async,no_subtree_check,all_squash,anongid=666,anonuid=666) /srv/picture *(rw,fsid=3,async,no_subtree_check,all_squash,anongid=666,anonuid=666)
Any idea what I need to change to get it working all using NFS ?
Thx
JurKub
-
did the update on a Pi4 and a Generic Intel machine
both are working very well
Thx a lot guys