SSHクライアントがTERM環境変数をサーバーに渡すのを防ぎますか?

SSHクライアントがTERM環境変数をサーバーに渡すのを防ぎますか?

私は現在使用していますFedoraの帽子18GNOME端末、そしてスタートtmuxマルチプレクサがその一つです。つながると中央オペレーティングシステムコマンド5 serverを介して次のものがssh見つかりました。

  • ls結果は色がありません
  • tmux、、、、screenすべて開始できませんhexedithtopエラーメッセージは次のとおりです。
    端末を開けませんでした:端末が存在しないか不適切です:screen-256color

$ TERM環境変数がサーバーに渡されるようですが、sshFedora 18のドキュメントにはありません。/etc/ssh/ssh_config

サーバーで$ TERM変数を手動で変更できますが、接続するたびにこれが再発生します。それでは、このようなことが起こらないように、どのように防ぐことができますか?

ベストアンサー1

$TERM通信する方法を知るために、どの端末と通信しているかをアプリケーションに伝えます。

リモートホストがサポートし、端末にできるだけ一致する値に変更します(screen)。

ほとんどのLinuxシステムには少なくとも1つのscreenterminfoエントリが必要です。それ以外の場合、screenこれは実装の親セットであり、vt100普遍vt100的です。だから:

TERM=screen ssh host

または

TERM=vt100 ssh host

256色のサポートが必要な場合は、xterm-256color十分に近い色を試してみてください(screen同じ方法で256色のサポートxterm)、端末アプリケーションが256色をサポートしていることをアプリケーションに知らせ、使用方法を知らせることができます。

あるいは、リモートホストにterminfoエントリをインストールすることもできます。

infocmp -x | ssh -t root@remote-host '
  cat > "$TERM.info" && tic -x "$TERM.info"'

おすすめ記事