SSH Verbindung aktives Terminal anzeige

  • Hallo zusammen,
    Ich habe folgendes Problem und wollte mal eine Frage an die Profis richten.
    Auf meinem raspi wird in der RC.LOKAL mit folgendem Befehl: /home/pi/pvlogger/samples/sample1/sl &
    ein C Programm in einem Terminal gestartet.
    Wenn ein Monitor am Raspi angeschlossen ist sieht man die Ausgaben des Programms im Terminal.
    Nun möchte ich mich mit dem Raspi über SSH oder VNC verbinden um die Ausgaben des laufenden Programms zu sehen. Verbindung mit xrdp und x11vnc funktionieren leider sehe ich aber nicht die Ausgaben meines Programms in einem Terminal. Über den Befehl PS -e sehe ich aber das es läuft.
    Gibt es eine Möglichkeit sich so mit dem Raspi zu Verbinden das man das laufende Terminal sieht ?
    Danke für eure Hilfe.

    Gruß
    Christian

  • Statt solcher Workarounds sollte man lieber das Problem an der Wurzel anpacken:

    - die Logausgaben im Programm so machen, dass sie via einer log-library konfigurierbar an einem definierten Ort, zB einem rotierenden FileHandler im Temp-Verzeichnis landen.
    - wenn die Logausgaben nicht anpassbar sind, ein Tool wie http://linux.die.net/man/1/cronolog benutzen.

    In beiden Faellen kannst du dich dann nach belieben auf deinen Rechner begeben, und an die Daten kommen. Ohne Tricks. So, wie es auch Anwendungen wie zB Apache machen.

  • Als Trick würde ich den Einsatz von screen nicht bezeichnen. Das ist der Einsatz eines mächtigen Tools um das Problem des TEs zu lösen. Klar ist Dein Vorschlag auch eine Möglichkeit der Problemlösung. Ist aber nicht jedermans Sache ein Programm zu ändern.

    Dabei fällt mir gerade ein dass es noch einen anderen einfacheren Weg gibt: Einfach die Ausgabe des Programms per 'tee' noch zusätzlich in ein bestimmtes Verzeichnis schreiben lassen :)

    chris74: Einfach die Zeile

    Code
    /home/pi/pvlogger/samples/sample1/sl &

    wie folgt ändern:

    Code
    stdbuf -oL /home/pi/pvlogger/samples/sample1/sl | tee /home/pi/pvlogger/samples/sample1/sl.log &


    Dann per ssh einfach ein

    Code
    less +F /home/pi/pvlogger/samples/sample1/sl.log

    eingeben und gut ist ;)

  • framp eine Kettensaege ist ein maechtis Tool um Baeume umzulegen. Duenne Bretter bohre ich trotzdem lieber mit einer Bohrmaschine.

    Ich bin durchaus ein Freund von screen, gerade in Verbindung mit SSH. Aber das dient dazu, eine laenger laufende Shell-Session zu unterstuetzen. Ein automatisch gestarteter Service wie vom OP hier angesprochen ist aber ueblicherweise mit einem Logging ausgestattet, weil screen uA auch nicht besonders viel buffert.

    Und mein zweiter Ansatz entspricht in weiten Teilen deinem mit "tee", nur das cronlog auch noch das rotieren von logs erlaubt - angesichts des PI und seiner notorisch schwachen SD-Kartenunterstuetzung wuerde ich zumindest Logfiles wenn moeglich in /tmp oder eine RAM-Disk laufen lassen.

    Der einzige Vorteil des tee ist die parallel Ausgabe im Terminal. Wenn man sich das Log aber eh per less/tail anschauen will, ist das eher vernachlaessigbar.

  • Hallo zusammen,

    Danke für eure Infos ich werde sie testen und mich dann bei bedarf nochmal melden.
    Mit screen habe ich schon getestet leider ohne erfolg.

    Gruß
    Christian

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!