どうすればssh経由でglanceを実行できますか?

どうすればssh経由でglanceを実行できますか?

インストールしました視線リモート サーバー上で、ローカル マシンから接続して実行しようとしています。次のようにします。

ssh user@host glances

次のようなエラーが発生します。

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

何が足りないのでしょうか?

答え1

リモートで実行するための単一のコマンドを指定しているためssh、ssh は Glances が使用する疑似端末を割り当てませんでした。-t強制するには、ssh にオプションを追加するだけです。

ssh -t user@host glances

参照:

ssh マニュアルページ

ユーザーのIDがサーバーに受け入れられると、サーバーは非対話型セッションで指定されたコマンドを実行するか、

...

対話型セッションが要求された場合、ssh はデフォルトで、クライアントが疑似端末 (pty) を持っている場合にのみ対話型セッション用に疑似端末 (pty) を要求します。フラグ -T および -t を使用して、この動作をオーバーライドできます。

関連情報