ich installierteBlickeauf meinem Remote-Server und versuche nun, von meinem lokalen Rechner aus eine Verbindung dazu herzustellen und es wie folgt auszuführen:
ssh user@host glances
was mir den folgenden Fehler gibt:
Traceback (most recent call last):
File "/usr/bin/glances", line 9, in <module>
load_entry_point('Glances==1.7.3', 'console_scripts', 'glances')()
File "/usr/lib/python2.7/dist-packages/glances/glances.py", line 4644, in main
use_bold=use_bold)
File "/usr/lib/python2.7/dist-packages/glances/glances.py", line 1937, in __init__
self.screen = curses.initscr()
File "/usr/lib/python2.7/curses/__init__.py", line 33, in initscr
fd=_sys.__stdout__.fileno())
_curses.error: setupterm: could not find terminal
Was vermisse ich ?
Antwort1
Da Sie nur einen einzigen Befehl für die Remote-Ausführung angegeben haben ssh
, hat ssh kein Pseudo-Terminal für Glances reserviert. Fügen Sie einfach die -t
Option zu ssh hinzu, um dies zu erzwingen:
ssh -t user@host glances
Referenz:
Wenn die Identität des Benutzers vom Server akzeptiert wurde, führt der Server den angegebenen Befehl entweder in einer nicht-interaktiven Sitzung aus
...
Wenn eine interaktive Sitzung angefordert wird, fordert ssh standardmäßig nur dann ein Pseudoterminal (pty) für interaktive Sitzungen an, wenn der Client eines hat. Mit den Flags -T und -t kann dieses Verhalten außer Kraft gesetzt werden.