走るとき
screen
(Linuxを実行している)リモートホストで、次のエラーが表示されます。
Cannot find terminfo entry for 'xterm-256color'.
リモートホストにアクセスするためにMac OSX Lionでターミナルを実行しています。私はこの問題の解決策を見つけるためにグーグルで調べましたが、人々はやることを提案しているようです
export TERM=xterm-color
私にはうまくいきません。
助けてください。
サポートされているTERMを確認します。
ls /usr/share/terminfo/x
これにより、サポートされているTERMのリストが表示されます。
xterm
xterm-xfree86
環境変数を設定します。
export TERM=xterm-xfree86
実行画面:
TERMINFO='/usr/share/terminfo/' screen
Sshに使用しているターミナルアプリで、設定->詳細設定->ターミナルを次のように宣言します-> xterm-color(またはxterm-256color以外)
この回答は、別の解決策があるこの投稿へのコメントから取られました: http://marcoschuh.de/wp/?p=87
私のBuffalo Linkstationの場合、この方法で解決しました。
cd /lib/terminfo/x
ln -s xterm-color xterm-256color
Mac OSX(10.7.5)ターミナル(v2.2.3、303.2)のエミュレーションをメニューの[ターミナル]> [設定]> [設定]> [詳細]> [ターミナルをxterm-colorとして宣言する]を変更できました。
新しいターミナルssh接続を開くと、新しい設定が有効になりました。
以前にデフォルトのMac OS Xターミナルアプリを使用してssh経由でUbuntuベースのtmuxにアクセスしましたが、あなたが説明した問題が見つかりました-私のbashとtmuxはscreen-256colorに設定されており、Macのリストにもありません端末設定。
行を追加してみました:
export TERM=screen-256color
起動コマンドとして使用されますが、無視され、起動時にxterm-colorで上書きされました。
また、シェル>エクスポート設定を選択して、Macターミナルの設定をscreen-256colorに変更し、生成されたXMLファイルを編集して、行xterm-colorを見つけてscreen-256colorに変更し、Shell> Importing this設定ファイル。ただし、ターミナルを起動すると、xterm-colorでこの設定がstillで上書きされていることがわかりました。
そこで、私はコンシードし、ダウンロードしました iTerm2 これにより、プレーンテキストフィールドに入力することで(制限されたプルダウンメニューから選択するのではなく)screen-256color設定を変更できました。これはすぐに機能し、コンソールを閉じて再度開く必要もありませんでした。
結論として、デフォルトのMacターミナル(必要な$ TERMへの変更が許可されていないようです)ではなく、iTerm2を使用することをお勧めします。
この問題を解決するには、ncurses-term
をリモートサーバー(Debian/Ubuntu)にインストールします。
おそらく、次のファイルのいずれかを提供するパッケージをLinuxホストにインストールする必要があります。
/usr/share/terminfo/x/xterm-256color
/lib/terminfo/x/xterm-256color
たとえば、Ubuntuでは、これはncurses-base
パッケージ。
他のケース、例えばscreen
内からDebian Busterにアップグレードします。
Terminfo xterm-256colour
形式が変更されたため、screen
は前のセッションを復元できません。
export TERM=xterm
を使用して画面セッションを閉じてから、画面を再起動できます。今回は正しいterminfoファイルを使用するため、成功します。
ソース: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=90184
「xterm-256color」に一致するリモートマシンにterminfo
ファイルがありません。
Screenは、使用している端末(xterm-256color)を説明するファイルがないため、要求した端末(xterm-256color)をエミュレートする方法を知りません。
ENV変数TERM
を変更して、リモートマシンにあるターミナルエミュレーションを要求できます。例えば: export TERM=vt220
、ただし、リモートにvt220 terminfoファイルがあり、きれいな色が得られないことを前提としているため、それを維持するには他の退屈な作業を行う必要があります。より良い...
たとえば、ローカルマシンにterminfoファイルがあり、リモートマシンにはない場合、たとえばlinux/macosがQNAP/QNAS/busybox/rpi/router/modem/IOTdeviceと通信する場合...
必要なファイルをそこにコピーし、リモート端末に画面で使用するように指示できます。例えば:
[local] $ scp /lib/terminfo/x/xterm-256color john@nasbox:xterm-256color
[local] $ ssh john@nasbox
[remote] $ ls
xterm-256color
[remote] $ TERMINFO='/share/homes/john/xterm-256color' screen
この時点で画面が機能するはずです。ローカルマシンには、terminfo
ディレクトリが他の場所にある可能性があります(/etc/terminfo/
および/usr/share/terminfo/
は一般的な選択肢です。あなたはあなたを見つけるために周りを掘る必要があるかもしれません)。
それをより恒久的に設定するには、ホームディレクトリの「.terminfo」ディレクトリに移動します(または、よく知っている場合は他の場所に移動します)。例えば:
[remote] mkdir -p .terminfo/x
[remote] mv xterm-256color .terminfo/x
[nasbox] screen
同じ手法が他の端末エミュレーションにも適用されるはずです。 ENV変数TERM
は、どの端末をエミュレートしようとするかを決定し、同じ名前のファイルがすべてを実現するマジックコードを提供します。
質問では、ユーザーの構成がデフォルトではない端末の説明を要求しましたscreen
。これは最終的にAppleからのアップデートによって修正されました。質問で引用されたバージョンでは、Appleはその端末の説明を提供していませんでした。現在(および2015年以降)あります。記録のために、MacPortsの関連エントリを示すディレクトリ一覧(/opt/local
)、ローカルに構築されたncurses(/usr/local
)、および/usr/share
のApple /システムファイル:
-rw-r--r-- 1 root 1912 Oct 3 2015 opt/local/share/terminfo/73/screen-256color
-rw-r--r-- 1 root 1924 Oct 3 2015 opt/local/share/terminfo/73/screen-256color-bce
-rw-r--r-- 1 root 1954 Oct 3 2015 opt/local/share/terminfo/73/screen-256color-bce-s
-rw-r--r-- 1 root 1940 Oct 3 2015 opt/local/share/terminfo/73/screen-256color-s
-rw-r--r-- 1 root 1912 Apr 12 04:22 usr/local/ncurses/share/terminfo/73/screen-256color
-rw-r--r-- 1 root 1924 Apr 12 04:22 usr/local/ncurses/share/terminfo/73/screen-256color-bce
-rw-r--r-- 1 root 1954 Apr 12 04:22 usr/local/ncurses/share/terminfo/73/screen-256color-bce-s
-rw-r--r-- 1 root 1940 Apr 12 04:22 usr/local/ncurses/share/terminfo/73/screen-256color-s
-rw-r--r-- 1 root 1828 Aug 22 2015 usr/share/terminfo/73/screen-256color
-rw-r--r-- 1 root 1840 Aug 22 2015 usr/share/terminfo/73/screen-256color-bce
-rw-r--r-- 1 root 1866 Aug 22 2015 usr/share/terminfo/73/screen-256color-bce-s
-rw-r--r-- 1 root 1856 Aug 22 2015 usr/share/terminfo/73/screen-256color-s
いくつかの詳細に気付くかもしれません:
oSXでは、デフォルトのファイルシステムは大文字と小文字を区別しないため、s
は16進数でエンコードされます(S
と区別するため)
エントリのサイズはわずかに異なります。 Appleは、一部の機能が欠けている古いバージョンの端末データベースを提供しました。
toe
を使用すると、次のように表示されます。
-> /usr/local/ncurses/share/terminfo ----> /usr/share/terminfo ------>/opt/local /share/terminfo *-*-*-:screen-256color GNU 256色のスクリーン *-*-*-:screen-256color-bce GNU 256色とBCEのスクリーン *-*-*-:screen-256color-bce-s GNU 256色のスクリーンを使用してBCEとステータスライン *-*-*-:screen-256color-s GNU 256色のスクリーンとステータスライン
システムとMacPortsの比較:
--- macports 2017-04-26 04:38:21.000000000 -0400
+++ system 2017-04-26 04:40:08.000000000 -0400
@@ -1,19 +1,19 @@
-# Reconstructed via infocmp from file: /opt/local/share/terminfo/73/screen-256color
+# Reconstructed via infocmp from file: /usr/share/terminfo/73/screen-256color
screen-256color|GNU Screen with 256 colors,
am, km, mir, msgr, xenl,
- colors#256, cols#80, it#8, lines#24, pairs#32767,
+ colors#256, cols#80, it#8, lines#24, ncv#3, pairs#32767,
acsc=++\,\,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~,
bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[?25l,
clear=\E[H\E[J, cnorm=\E[34h\E[?25h, cr=^M,
csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=^H,
cud=\E[%p1%dB, cud1=^J, cuf=\E[%p1%dC, cuf1=\E[C,
cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\EM,
- cvvis=\E[34l, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m,
- dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K,
- enacs=\E(B\E)0, flash=\Eg, home=\E[H, ht=^I, hts=\EH,
- ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=^J, is2=\E)0,
- kbs=^H, kcbt=\E[Z, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC,
- kcuu1=\EOA, kdch1=\E[3~, kend=\E[4~, kf1=\EOP, kf10=\E[21~,
+ cvvis=\E[34l, dch=\E[%p1%dP, dch1=\E[P, dl=\E[%p1%dM,
+ dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K, enacs=\E(B\E)0,
+ flash=\Eg, home=\E[H, ht=^I, hts=\EH, ich=\E[%p1%d@,
+ il=\E[%p1%dL, il1=\E[L, ind=^J, initc@, is2=\E)0, kbs=^H,
+ kcbt=\E[Z, kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA,
+ kdch1=\E[3~, kend=\E[4~, kf1=\EOP, kf10=\E[21~,
kf11=\E[23~, kf12=\E[24~, kf2=\EOQ, kf3=\EOR, kf4=\EOS,
kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~, kf9=\E[20~,
khome=\E[1~, kich1=\E[2~, kmous=\E[M, knp=\E[6~, kpp=\E[5~,
@@ -22,6 +22,6 @@
rmul=\E[24m, rs2=\Ec\E[?1000l\E[?25h, sc=\E7,
setab=\E[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;%p1%d%;m,
setaf=\E[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m,
- sgr=\E[0%?%p6%t;1%;%?%p1%t;3%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;m%?%p9%t\016%e\017%;,
+ sgr=\E[0%?%p6%t;1%;%?%p1%t;3%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;,
sgr0=\E[m\017, smacs=^N, smcup=\E[?1049h, smir=\E[4h,
smkx=\E[?1h\E=, smso=\E[3m, smul=\E[4m, tbc=\E[3g,