[erledigt] Problem bei HD-Aufnahmen, MLD5.1 testing, RPI3, USB-Stick als "Datengrab"

  • Hallo zusammen und noch ein frohes Neues,


    nachdem ich meine beiden RPI3 mit Sundtek-Stick, MLD5.1 testing mittels neuem LNB jetzt prinzipiell am laufen habe (siehe hier: [geloest, neuer LNB] Komisches Problem mit Pi3, MLD, Sundtek DVB-S2...?), kommt jetzt das naechste Problem...
    Bei HD-Aufnahmen zerlegt es mir den 'mld90'. Permanent Artefakte in der Aufzeichnung auf dem 64GB USB-Stick. Bei "top" sehe ich oefters eine hohe CPU-Last (ca. 20%) beim Prozess "mount.mergerfs /mnt/data /data -o..."
    Beim 2. PI3 ('mld89') habe ich das Problem nicht.


    Die jeweiligen /etc/fstab:
    * mld89 (funktioniert)


    * mld90 (Artefakte)


    * Wenn ich die letzte Zeile "/mnt/data /data mergerfs defaults,category.create=mfs 0 0" rauskommentiere, dann bootet der 'mld90' garnicht mehr.


    Preisfrage: Wie kriege ich 'mld90' ans laufen? Oder liegt das gar nicht an der /etc/fstab, sondern evtl. am USB-Stick?
    Wieso bootet das Teil nicht, wenn ich die letzte Zeile der /etc/fstab kommentiere?


    Sorry, steh' gerade auf dem Schlauch...

  • achso, was ich eigentlich haben will:
    * 2 identische RPI3 mit Sundtek-DVBS2-Stick, 64GB USB-Stick als Datengrab fuer Aufnahmen
    * Die Aufnahmen kommen zum schneiden/archivieren auf die NFS-Freigaben, das ist mein Desktop-Rechner im Arbeitszimmer, der per WoL geweckt wird, die Platten werden gemounted (read-only). Wenn die Clients 'weg sind', dann legt sich auch der Desktop-Rechner wieder schlafen nach 15 Minuten.
    * Ich habe jetzt versucht, die beiden RPI3 'from scratch' identisch aufzusetzen. Ist mir offensichtlich nicht gelungen (siehe unterschiedliche /etc/fstab). Das 'merger-Gedoens' habe ich echt noch nicht durchschaut, ich brauche es auch nicht. Die 2 PIs sind prinzipiell stand-alone, sollen nur 1. Live-TV 2. Aufzeichnungen abspielen 3. Aufnehmen koennen.
    Den Rest erledige ich per 'ssh' vom Desktop aus

  • mergerfs ist ein FUSE-Dateisystem und wenn es an CPU-Power fehlt, dürften die Schreibraten noch schlechter sein als sie es bei FUSE-Dateisystemen ohnehin schon sind. Ich weiß nicht, ob der Kernel bei der MLD entsprechend gepatcht wurde (IIRC können die Ubuntu-Kernel das), aber ich würde da eher in Richtung aufs denken, wenn es darum geht ein Overlay-Dateisystem mit schwacher Hardware zu nutzen.


    Wieso bootet das Teil nicht, wenn ich die letzte Zeile der /etc/fstab kommentiere?

    Vermutlich liegen auf /data (was ja dem darunterliegenden /mnt/data entspricht) für den Betrieb relevante Daten. Hast du mal einen mount-bind probiert? Und danach könnte man einzelne Ordner des USB-Stick oder von NFS-Freigaben (wie z.B. fürs Videoverzeichnis des VDR) an der passenden Stelle einbinden.

    Code
    /mnt/data  /data  none  bind  0  0

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • seahawk1986 und paulpanther


    Ups, danke fuer's schnelle Feedback. Ich moechte da eigentlich gar nix dynamisch oder sonstwie mounten/zusammen bauen. MLD soll komplett auf die SD-Karte, Video-Aufnahmen sollen komplett auf den USB-Stick unter /mnt/data, sonst nix.


    MLD kommt selber mit
    * /dev/mmcblk0p1
    * /dev/mmcblk0p2
    Ein 'df -h' auf dem laufenden System (/etc/fstab der mld90 oben) sieht so aus:

    Code
    mld90> df -h
    Filesystem                Size      Used Available Use% Mounted on
    /dev/mmcblk0p2            7.3G    298.6M      6.8G   4% /
    tmp                     366.3M      4.0K    366.3M   0% /tmp
    run                     366.3M    264.0K    366.1M   0% /run
    dev                     360.4M         0    360.4M   0% /dev
    log                     366.3M     52.0K    366.3M   0% /var/log
    /dev/mmcblk0p1           95.8M     10.2M     85.6M  11% /boot
    /dev/sda1                56.7G     11.9G     44.8G  21% /mnt/data
    /mnt/data                56.7G     11.9G     44.8G  21% /data


    Das generiert mir die Artefakte bei den Aufnahmen, man sieht ja den 64GB Stick (56.7G) 2x
    Ich haette es gerne 'einfacher/klassisch'. Wie finde ich die passenden Eintraege in der /etc/fstab dazu raus? Und muss ich da noch sonstige Verzeichnisse auf der SD-Karte anlegen?


    Sorry, aber ich steh' immer noch auf dem Schlauch...


    [EDIT] Ich verstehe einfach die letzte, notwendige Zeile in der /etc/fstab nicht und auch nicht, was mir da bei 'df -h' angezeigt wird. Was sagt mir das, und was bewirkt das?[/EDIT]

  • so, naechste Runde. In der /etc/fstab die letzte Zeile geaendert (mld90):
    * /mnt/data /data mergerfs defaults,direct_io,category.create=mfs 0 0
    Dann eine Aufnahme (HD) programmiert. Mit 'top' sehe ich waehrend der Aufnahme (nur dann, wenn die Aufnahme laeuft) ein "mount.mergerfs ...." (siehe Post oben) zwischen 0...20% CPU-Last. Und dann habe ich in der Aufnahme Aussetzer/Artefakte.
    Breche ich die Aufnahme ab, dann ist der Prozess "mount.mergerfs ...." immer bei 0% CPU-Last.


    Vlt. liegt es ja auch an dem 64GB USB-Stick oder dessen FS (ext4), aber es scheint mir so, dass dieser Prozess "mount.mergerfs ...." mir die Aufnahmen killt.


    Preisfrage: Wie werde ich diesen Prozess los? Wie gesagt brauche ich irgendwelche dynamischen mount-Geschichten nicht, am PI3 haengt die SD mit dem OS sowie der Stick fuer die Aufnahmen. Uebrigens, abspielen ueber Netzwerk (siehe /etc/fstab) funktioniiert problemlos, allerdings im Moment dort alles nur SD...
    [EDIT] Ergaenzung: Abspielen einer HD-Aufnahme ueber nfs-mount funktioniert auch problemlos, "mount.mergerfs ..." ist da immer bei 0% CPU-Last [/EDIT]

  • ja klar, sooft wie ich da re-bootet habe kann ich schon nicht mehr zaehlen...
    Hab's aber gerade nochmal probliert, reboot, Start einer HD-Aufnahme. Dort "mount.mergerfs ..." wieder zwischen 0 und 17%. Beim abspielen wieder Artefakte.


    Saubloede Frage: Was macht dieser Prozess? Und wie werde ich ihn los?

  • ich habe jetzt auch spasseshalber mal das Paket "mergerfs" im Web-IF abgewaehlt. Beim reboot haengt die Kiste, tut sich ausser dem MLD-Logo nix auf dem Bildschirm. Die /etc/fstab hat sich auch nicht geaendert (nachgeprueft via ssh). Waehle ich dann im Web-IF das Paket "mergerfs" wieder an, dann habe ich wieder Bild+Ton auf dem Fernseher.

  • Hi,


    ich wollte dich auch schon fragen, wofür Du das mergerfs Paket überhaupt installiert hast, da Du ja gar nichts zusammen fasst.
    Du kannst also auf das mergerfs Paket verzichten. Normalerweise wird beim deinstallieren alles nötige wieder so hergerichtet, dass das System auch ohne reibungslos arbeitet. In Deinem Fall scheint da etwas schief zu laufen. Um das zu korrigieren, musst Du nach dem entfernen von mergerfs Softlinks von allen Ordnern unter /mnt/data nach /data anlegen.
    Sag Bitte Bescheid, wenn Du eine genauere Anleitung brauchst.


    Claus



    PS.: Bei unseren Tests mit mergerfs hatten wir keine Probleme feststellen können wenn wir die Mount Option direct_io hinzugefügt haben.

    MLD 5.5 mit vdr 2.6 - lirc yaUSBir - Octopus NET S2 - SCR - XFX GeForce 9300 mit Intel E3200 - 2GB RAM - WD Green 12TB HDD - SanDisk 64GB SSD - Lian Li PC-C37B - Samsung LE40A559
    MLD 5.5 mit vdr 2.4 - Raspberry Pi 3 - rpihddevice
    MLD 5.5 mit Squeeze Play - Raspberry Pi 2 - 32GB SD - 7" Touch TFT

  • seahawk1986,


    kannst Du mir ein wenig mehr Infos zum Thema mergerfs, fuse, IIRC und Kernel Patch zur Performance Verbesserung geben?


    Claus

    MLD 5.5 mit vdr 2.6 - lirc yaUSBir - Octopus NET S2 - SCR - XFX GeForce 9300 mit Intel E3200 - 2GB RAM - WD Green 12TB HDD - SanDisk 64GB SSD - Lian Li PC-C37B - Samsung LE40A559
    MLD 5.5 mit vdr 2.4 - Raspberry Pi 3 - rpihddevice
    MLD 5.5 mit Squeeze Play - Raspberry Pi 2 - 32GB SD - 7" Touch TFT

  • Hi Claus,
    danke fuer die Infos, das bringt mich ja schon mal weiter.


    Also, jetzt im Moment, mit dem installierten Paket 'mergerfs' sieht das so aus:

    Code
    mld90> ls -l /data/
    drwxrwxr-x    2 root     root          4096 Jan  7 12:23 cache
    drwx------    2 root     root         16384 Dec 10 13:46 lost+found
    drwxr-xr-x    6 root     root          4096 Jan  8 17:16 tv
    mld90> ls -l /mnt/data/
    drwxrwxr-x    2 root     root          4096 Jan  7 12:23 cache
    drwx------    2 root     root         16384 Dec 10 13:46 lost+found
    drwxr-xr-x    6 root     root          4096 Jan  8 17:16 tv
    mld90>


    Damit laeuft jetzt gerade Live-TV vom DVB-S2-Stick. Jetzt mal 'mergerfs' deinstallieren, dann kommt im Web-IF folgendes:

    Code
    (Reading database ... 3133 files and directories currently installed.)
    Removing mergerfs (2016.10.22-10) ...
    mv: can't rename '/var/spool/data.bak/*': No such file or directory
    Reading package lists...
    Building dependency tree...
    Reading state information...
    0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
    done


    Jetzt ein 'reboot' in der ssh-shell:
    * haengt im Anmeldeschirm (MLD-Logo). Mit 'ssh' komme ich auf den Rechner, aber es tut sich am Fernseher nix...
    Ein 'df -h' zeigt mir jetzt:

    Code
    mld90> df -h
    Filesystem                Size      Used Available Use% Mounted on
    /dev/mmcblk0p2            7.3G    297.5M      6.8G   4% /
    tmp                     366.3M      4.0K    366.3M   0% /tmp
    run                     366.3M    264.0K    366.1M   0% /run
    dev                     360.4M         0    360.4M   0% /dev
    log                     366.3M     56.0K    366.3M   0% /var/log
    /dev/mmcblk0p1           95.8M     10.2M     85.6M  11% /boot
    /dev/sda1                56.7G     11.9G     44.8G  21% /mnt/data
    mld90>


    Also mein Stick ist da. Was muss ich denn jetzt wo/wie anlegen, damit das System hochkommt?


    [EDIT] Das Paket 'mergerfs' wieder installiert per Web-IF, dann kommt auch wieder Live-TV am System. Fehlen mir da einfach ein paar Verzeichnisse/Links? [/EDIT]

  • Ok, mache das so:
    - deinstalliere mergerfs
    - rebooten
    - per ssh einloggen

    Code
    ln -s /mnt/data/tv /data/tv


    Jetzt sollte in den nächsten 20 Sekunden das TV Bild kommen.


    Claus

    MLD 5.5 mit vdr 2.6 - lirc yaUSBir - Octopus NET S2 - SCR - XFX GeForce 9300 mit Intel E3200 - 2GB RAM - WD Green 12TB HDD - SanDisk 64GB SSD - Lian Li PC-C37B - Samsung LE40A559
    MLD 5.5 mit vdr 2.4 - Raspberry Pi 3 - rpihddevice
    MLD 5.5 mit Squeeze Play - Raspberry Pi 2 - 32GB SD - 7" Touch TFT

  • Das mergerfs ist leider nur aufgrund eines Missgeschicks in die vorgefertigten Installationen hinein geraten. Ich hab den Grund jetzt gefunden und behebe das gerade.


    Claus

    MLD 5.5 mit vdr 2.6 - lirc yaUSBir - Octopus NET S2 - SCR - XFX GeForce 9300 mit Intel E3200 - 2GB RAM - WD Green 12TB HDD - SanDisk 64GB SSD - Lian Li PC-C37B - Samsung LE40A559
    MLD 5.5 mit vdr 2.4 - Raspberry Pi 3 - rpihddevice
    MLD 5.5 mit Squeeze Play - Raspberry Pi 2 - 32GB SD - 7" Touch TFT

  • kannst Du mir ein wenig mehr Infos zum Thema mergerfs, fuse, IIRC und Kernel Patch zur Performance Verbesserung geben?

    FUSE-Dateisysteme laufen im Userspace und exportieren das Dateisystem an den Kernel, was je nach Nutzungsszenario und Hardware spürbar langsamer sein kann, als wenn das direkt von einem Kernel-Modul umgesetzt wird. Wenn man ein schreibbares Dateisystem über einem nicht-schreibbarem Dateisystem haben will, dürfte Overlayfs die Lösung mit der besten Geschwindigkeit sein. aufs bietet Unterstützung für mehrere schreibbare Verzeichnisse und ist eine Mischung aus Kernel-Treiber und Userspace-Teil (es wurde trotz mehrfacher Anläufe nicht in den Kernel aufgenommen, weshalb es nur über Patches genutzt werden kann): http://aufs.sourceforge.net/ - in der Dokumentation wird erklärt, was von den Operationen im Kernel und was im Userspace stattfindet: http://kernel.ubuntu.com/git/u…entation/filesystems/aufs


    IIRC = If I Remember Correctly


    Zur Geschwindigkeit schreibt der mergerfs-Entwickler selbst:

    While aufs can offer better peak performance mergerfs offers more configurability and is generally easier to use. mergerfs however doesn't offer the same overlay features (which tends to result in whiteout files being left around the underlying filesystems.)

    yaVDR-Dokumentation (Ceterum censeo enchiridia esse lectitanda.)

  • - deinstalliere mergerfs
    - rebooten
    - per ssh einloggen
    - ln -s /mnt/data/tv /data/tv
    Jetzt sollte in den nächsten 20 Sekunden das TV Bild kommen.
    Claus


    Hallo Claus, funktioniert genau so! Danke!
    Jetzt teste ich mal ein paar HD-Aufnahmen...


    [EDIT] Scheint zu funktionieren! Jetzt kommt das Teil mal ins Wohnzimmer, zum "Normalbetrieb". Danke an alle fuer die Tipps, ich waere da ansonsten mal wieder komplett aufgeschmissen gewesen... Ich setze den Thread mal auf "erledigt"[/EDIT]

Jetzt mitmachen!

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