xxv und ramdisk (PANIK Warnung)?

  • Hallo *,


    in meinem linVDR läuft seit kurzer Zeit XXV statt vdradmin. Schön, aber...
    ich habe festgestellt, dass die Größe (4MB) vom /ramdisk nicht ausreichend ist. Daraufhin habe ich die Größe auf 16MB gesetzt, aber auch diese Größe scheint nicht ausreichend zu sein.


    Das komische dabei ist, dass die Summe von Grössen von allen Dateien aus dem Bereich /ramdisk - gezeigt beim Kommando du - deutlich kleiner ist, als die Größe, die bei dem Kommando df angezeigt wird, und zwar sind es sehr deutliche Unterschiede:
    df

    Code
    linvdr:~# df -h
    Filesystem            Size  Used Avail Use% Mounted on
    ...
    /dev/shm               16M   16M     0 100% /ramdisk


    du


    und zusätzlich noch ls


    Löschen von allen Logdateien in /ramdisk bringt auch fast keine Verbesserung. Erst ein Reboot säubert die /ramdisk und bewehrt mein linVDR vor den wiederholten PANIK-Warnungen in der Art:

    Code
    SVDRP message: 'PANIK! Nur noch 0% freier Platz auf Gerät /dev/shm'


    Hat jemand von Euch eine Idee, was dabei falsch läuft, oder was man machen kann?


    Viele Grüße
    Wlodek

  • Hallo *,


    es hat wahrscheinlich mit dem ramdisk-Problem nicht viel zu tun, aber folgende Meldung wurde ständig auf die Konsole ausgeworfen:


    Code
    Invalid conversion in sprintf: "%"" at /opt/XXV/bin/../lib/Tools.pm line 110


    Deswegen habe ich die Zeile 110 verändert. Die neue Zeile:

    Code
    my $msg = sprintf("%s",(shift, @_));


    Analog für die Warnung:

    Code
    AUTOTIMER: Invalid conversion in sprintf: "%a" at /opt/XXV/bin/../lib/XXV/MODULES/AUTOTIMER.pm line 329.


    habe ich die Zeile 329 in

    Code
    $search = sprintf(' %s ',$search) ." AND DATE_FORMAT(e.starttime, '%a') in ".sprintf('(%s)',  join(',', @weekdays));


    geändert - mit der Annahme, dass es sich bei dem "%a" nicht um einen Parameter von sprintf, sondern um einen von DATE_FORMAT handelt.


    In dem Modul /opt/XXV/bin/../lib/XXV/MODULES/STATUS.pm gibt es noch einige Zeilen, die in der Logdatei xxvd.log bemengelt werden.


    Zusätzlich habe ich noch die Umstellung der Variablen LOGDATEI in /opt/XXV/etc/xxvd von LOGDATEI=/var/log/xxvd.log auf /tmp/xxvd.log vorgenommen. Der Inhalt von /ramdisk wächst nicht mehr so rasant, bzw. gar nicht rasant. Das muss noch aber nach ein paar Stunden geprüft werden.


    Viele Grüße
    Wlodek

  • hallo wlodek,


    ich nehme an du hast "mein" xxv drauf - zwar bekomme ich beim starten nicht
    die von dir gemeldeten fehler, aber die ramdisk (128MB) lief bei mir auch recht
    schnell voll, deshalb habe ich bei mir der einfachkeit halber die logs von xxv & mysql abgestellt - solange alles läuft & man nicht auf fehlersuche gehen muss
    ist das doch eine einfache und schnelle lösung.


    gruß
    Thomas

    P3-1333 - 512 MB - Siemens DVB-C
    Debian Etch - Kernel 2.6.23 - VDR 1.3.47 (selber kompiliert)

  • Vielleicht kurz zur Hilfe von mir - hatte das selbe Problem. Unschöner Nebeneffekt: wenn dir die Logs die Ramdisk vollmüllen, kann die epg.data nicht mehr aktualisiert werden. Erkennbar daran, daß du irgendwann nur noch alte Einträge siehst, aber nichts neues/aktuelles mehr dazu kommt. Spätestens dann sollte man handeln, und zwar


    - logs von MySQL in /etc/mysql/my.cnf und XXV in /opt/XXV/etc/xxvd abstellen oder umstellen. Das MySQL-Log hab ich auf reines error- und Log für sehr langsame Optionen (grad nicht zur Hand, wie diese Option heißt) umgestellt, XXV-Log komplett abgestellt. Alternativ: Logs beim Starten löschen lassen oder als cronjob.
    und/oder
    - Ramdisk vergrößern. Entweder per setup auf der Konsole (zwischen 4 und 16 MB möglich) oder in /etc/sysconfig die RAMDISK_SIZE (Angabe in MB) erhöhen. Geeignet sind hier maximal der halbe Arbeitsspeicher, wobei die Ramdisk automatisch vergrößert wird - wenn du also 128 MB einstellst, aber nur 30 MB Daten auf der Ramdisk lagern, nimmt die Ramdisk auch nur 30MB vom Speicher in Beschlag.


    Neustart nach allen Änderungen kann nicht schaden ;)



    Bei mir hats das geholfen.


    Elian

    Server: FSC Scenic i815 - P3-866, 250 GB Samsung und gepanschtes LinVDR 0.7 mit VDR 1.3.37 und XXV-Resten :-0
    Client: FSC Activy 300 mit Mahlzeit 4.0ß2
    Client2: IBM NetVista P3-866...

  • Hallo Elian und NoFutureKid,


    danke Euch für die Antworten. Die haben ein Verdach bestätigt, dass das schnelle wachsen von ramdisk-Belegung bzw. die ramdisk-Größe in sich, sehr stark von der Logdateien abhängig sind.
    Meine ganz kleine Änderungen in der Perl-Modulen, die ich in zweiten Beitrag zu dem Thema beschrieben habe, haben die Lage drastisch verbessert. Heute war mein ramdisk immer noch um 1% belegt und die Logdatei /tmp/xxvd.log ist auch nur gering gewachsen. Deswegen habe ich mich weiter in die Richtung "Behebung der Ursachen" bewegt. So habe ich jetzt versucht die Warnung

    Code
    STATUS: Argument "18%" isn't numeric in int at /opt/XXV/bin/../lib/XXV/MODULES/STATUS.pm line 714

    zu beseitigen. Diese Warnung kommt daher, dass die Ausgaben vom df-Kommando in ihren 5 Parameter eben die Prozente ausgeben und nicht nur die Zahlen. Es reicht also eine zusätzliche Zeile zwischen die Zeilen 650 und 652 einzuführen

    Code
    $data[0] =~ s/[\-\s]/_/sg; # die Zeile 650
    $data[5] =~ s/^(\d+).*$/$1/; # die neue Zeile 651 (es war eine Leere Zeile) 
    if($clr) { # die Zeile 652

    die das Problem beseitigt.


    Nebenbei gesagt, es lohnt sich die xxvd.log zu lesen. Dort habe ich z.B. einen Hinweis gefunden, dass bei mir das Modul GD noch nicht installiert ist. Und es ist wahrscheinlich die Ursache, warum bei der xxv-Fernbedinung keine Fernseh-Bilder dargestellt wurden :)


    Viele Grüße
    Wlodek

  • Ja, siehste mal. Dann werd ich mich doch auch mal ans Log bzw. GD machen - das Problem hab ich auch. Danke für die Info!

    Server: FSC Scenic i815 - P3-866, 250 GB Samsung und gepanschtes LinVDR 0.7 mit VDR 1.3.37 und XXV-Resten :-0
    Client: FSC Activy 300 mit Mahlzeit 4.0ß2
    Client2: IBM NetVista P3-866...

    Einmal editiert, zuletzt von Elian ()

  • also das mit gd kann ich nicht nachvollziehen - wenn ihr das paket von mir
    benutzt - da bei mir alles auf anhieb funzt - wie in dem thread zu xxv von mir
    beschrieben sind als vorraussetzungen:


    1. Mark-Twain
    2. Tarandor Libs
    3. Cody


    und dann XXV - dann sollte auch gd richtig drauf sein und der Remote-Fernseher funzen.


    Gruß
    Thomas

    P3-1333 - 512 MB - Siemens DVB-C
    Debian Etch - Kernel 2.6.23 - VDR 1.3.47 (selber kompiliert)

  • Zitat

    Original von wlodek
    Nebenbei gesagt, es lohnt sich die xxvd.log zu lesen. Dort habe ich z.B. einen Hinweis gefunden, dass bei mir das Modul GD noch nicht installiert ist. Und es ist wahrscheinlich die Ursache, warum bei der xxv-Fernbedinung keine Fernseh-Bilder dargestellt wurden :)


    Haben wir ja gerade bei Deiner Installation gemacht, aber evtl. hilft es auch den einen oder anderen weiter:

    Code
    debtool -i libgd2
    debtool -i libgd-perl


    Danach konnte man mit der "Fernbedienung" in XXV auch das aktuelle Fernsehbild sehen.


    Ich werde das mal mit in das Skript aufnehmen, muss da eh noch die Verzeichnisse in xxvd.conf an LinVDR anpassen.

  • Hmm. Hat auch nichts gebracht, deine debtool-Sachen bei mir. Kein Bild im XXV-Fernseher.
    Fehlermeldung:

    Code
    24 (550) [16:44:27] DynaLoader: Can't load '/usr/lib/perl5/auto/GD/GD.so' for module GD: libXpm.so.4: cannot open shared object file: No such file or directory at /usr/lib/perl/5.6.1/DynaLoader.pm line 202.   at (eval 101) line 2


    Vielleicht sollte ich nochmal mit einem richtigen, PlainVanilla 0.7 anfangen. Mal sehn, wann ich dazu Zeit habe. Oder hat hier jemand noch nen Tipp?

    Server: FSC Scenic i815 - P3-866, 250 GB Samsung und gepanschtes LinVDR 0.7 mit VDR 1.3.37 und XXV-Resten :-0
    Client: FSC Activy 300 mit Mahlzeit 4.0ß2
    Client2: IBM NetVista P3-866...

  • Zitat

    Original von Elian
    Hmm. Hat auch nichts gebracht, deine debtool-Sachen bei mir. Kein Bild im XXV-Fernseher.
    Fehlermeldung:

    Code
    24 (550) [16:44:27] DynaLoader: Can't load '/usr/lib/perl5/auto/GD/GD.so' for module GD: libXpm.so.4: cannot open shared object file: No such file or directory at /usr/lib/perl/5.6.1/DynaLoader.pm line 202.   at (eval 101) line 2


    Vielleicht sollte ich nochmal mit einem richtigen, PlainVanilla 0.7 anfangen. Mal sehn, wann ich dazu Zeit habe. Oder hat hier jemand noch nen Tipp?


    Ja, nach langem suchen habe ich was gefunden nur leider keine Loesung. habe nun genau das gleiche problem. hast du inzwischen eine loesung gefunden?


    gruss
    scatty

    Hardware :: | Epia MII-10000 | 256 MB DDR-RAM | TT 1.5 | SkyStar2 | EXTB | 250GB | LG GSA-4163B |
    Software :: | Mahlzeit 4.0b2|
    PlugIns :: | burn | cdda | dvd | extb | graphlcd | mp3ng | mplayer | osdteletext | radio | savechannel | setup | streamdev-server | text2skin | vcd | vdrcd |

Jetzt mitmachen!

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