Bildschirm schlägt mit "WriteMessage: Ungültiger Dateideskriptor" fehl


10

Ich habe Bildschirmsitzung "main", gestartet in /dev/ttySAC0und sh, gestartet in /dev/ttySAC0(außerhalb der Bildschirmsitzung) mit Eingabe-, Ausgabe- und Fehlerströmen, umgeleitet auf Pseudoterminal /dev/pts/1. Wenn ich an das Terminal / dev / pts / 1 anschließe und versuche, es auszuführen screen -r main, schlägt dies fehl mit:

WriteMessage: Bad file descriptor

Das Erstellen einer neuen Bildschirmsitzung mit screenfunktioniert jedoch einwandfrei. Wenn ich screen -r mainin dieser Bildschirmsitzung ausgeführt werde, wird außerdem der Bildschirm mit meiner gespeicherten Sitzung in einer anderen Bildschirmsitzung angezeigt. Es ist nicht nützlich, aber es funktioniert.

Selbst wenn ich eine neue Sitzung in /dev/pts/1beginne, mich von ihr entferne und versuche, sie wiederzubeleben, habe ich den gleichen Fehler erhalten.

Antworten:


7

Laufen screen -d, die Bildschirme finden und laufen screen -R [screen_name].


4

Versuchen Sie, die Zeile defnonblock onzu Ihrer ~ / .screenrc-Datei hinzuzufügen.

Als ich anfing, das gleiche Problem zu haben, fand ich einige Beiträge, in denen erwähnt wurde, dass es ihre Probleme behebt. Es hat meins repariert.


Es hat nicht geholfen.
Paboka

0

Es passiert, wenn ich einen Bildschirm mit dem gleichen Namen wie ein anderer Bildschirm + mehr Text danach habe, der Bildschirmname ohne den zusätzlichen Text bricht, dh

~$ screen -ls
        7385.foo-screen      (02/27/2020 12:03:41 AM)        (Detached)
        7296.foo-screen-2    (02/27/2020 12:00:48 AM)        (Detached)

funktioniert:

~$ screen -r foo-screen-2 

schlägt fehl:

~$ screen -r foo-screen 
WriteMessage: Bad file descriptor

funktioniert:

~$ screen -r 7385.foo-screen 
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.