纳米错误:错误打开终端:xterm-256color


109

安装OSX Lion之后,我尝试执行以下操作:

nano /etc/apt/sources.list

但是我得到这个错误:

Error opening terminal: xterm-256color

如果我尝试切换terminal.app首选项,以“ xterm color”打开终端窗口,而不是xterm-256color一切正常。

发生了什么?


1
您可能在这里缺少一些步骤-就像您从Mac切换到某些Debian或Ubuntu系统一样,对吗?至少我希望您不要尝试在MacOS系统中编辑/etc/apt/sources.list ... :)
Henning

Answers:


167

在Red Hat上,这对我有用:

export TERM=xterm

此处的更多信息:http : //www.cloudfarm.it/fix-error-opening-terminal-xterm-256color-unknown-terminal-type/


在删除系统上运行时为我工作。来自OS X的连接-> Ubuntu
Ryan Griffith

有趣的是,我在chroot的环境中遇到了这个错误,该环境到目前为止只有很少的程序。我认为缺少某些程序会导致这种情况,但是不幸的是,nano并未给出有关其确切失败原因的更多信息。
shevy,2016年

基于在VirtualBox的buildroot上最大OS X.(这是MacOS的SSH连接到基于Buildroot里面VM和TGEN运行顶部)试图用顶部作为虚拟机运行一个minikube本地kubernetes系统内部工作的时候也
亨宁

这个答案与问题无关,应该删除。
Thomas Dickey

对于不同的系统,包括Ubuntu / Debian和OSX(OP),相同的解决方案似乎是正确的。这无关紧要吗?
Meetai.com

28

升级到OSX Lion之后,我开始在某些(Debian / Ubuntu)服务器上收到此错误。解决方法只是安装“ ncurses-term”软件包,该软件包提供文件/ usr / share / terminfo / x / xterm-256color。

这通过Erik Osterman在Ubuntu服务器上为我工作。


17

我可以确认这是terminfo问题。这对我有用。SSH登录到远程计算机并运行

 sudo apt-get install ncurses-term

繁荣。问题解决了。


我认为这可能是nano有时可能失败的原因之一-例如,如果问题发生在ncurses / terminfo处。
shevy,2016年

6

我有通过Mac OS X Lion 连接到http://sdf.org的问题。我在Terminal Preferences+ ,> Advanced窗格下更改Declare Terminal asVT-100

我也做了标记,Delete Sends Ctrl-H因为此Mac连接令人困惑zsh

它似乎适用于我的用例。


1
感谢您提供不涉及更换服务器的答案!
DOOManiac

1
这对我不起作用。我从Mavericks中的Mac连接到Snow Leopard中的Mac。启动时出现错误top
Nicolas Barbulesco 2014年

@NicolasBarbulesco好的,对不起,Nicolas,但我不再使用Mac,因此无法与您进行测试。
同构

5

在升级到Lion的较旧的Mac上,我也遇到此问题。

在阅读terminfo技巧之前,我可以通过执行“ export TERM = xterm”来获得vi并减少工作量。

看完技巧后,我/usr/share/terminfo从装有新版本Lion的较新的Mac上抢了下来,但没有出现此问题。

现在,即使echo $TERM仍然产生yield xterm-256color,vi和更少的函数现在也可以正常工作。


对于试图在Mac OS上运行chroot的任何人,这都可以解决chroot内的“打开终端错误:”问题。

3

全新安装后,“ terminfo”文件夹有时会以某种方式损坏。我不知道为什么,但是问题可以这样解决:

1. Download Lion Installer from the App Store
2. Download unpkg: http://www.macupdate.com/app/mac/16357/unpkg
3. Open Lion Installer app in Finder (Right click -> Show Package
Contents)
4. Open InstallESD.dmg (under SharedSupport)
5. Unpack BSD.pkg with unpkg (Located under Packages)   Term info
will be located in the new BSD folder in /usr/share/terminfo

希望能帮助到你。


我遇到了相同的错误,并尝试了建议的步骤。使用unpkg解压缩时,遇到了多个权限被拒绝的错误。BSD文件夹出现在我的桌面上,我运行了“ sudo mv〜/ Desktop / BSD / usr / share / terminfo / usr / share / terminfo”,然后重新启动了终端,但是我仍然得到相同的“错误打开终端:xterm-256color ”错误。
Mike Lawrence

1
也许您可以尝试这个sendspace.com/file/hc2dus,这是我的terminfo文件夹。更换后,别忘了chmod 555 / usr / share / terminfo
Luke

2
  1. 编辑你的.bash_profile文件

    vim .bash_profile

  2. 通讯网

    #export TERM=xterm-256color

  3. 加上这个

    export TERMINFO=/usr/share/terminfo

    export TERM=xterm-basic

    给你 .bash_profile

  4. 最后

    跑:

    source .bash_profile


1

我的情况很独特,但这可以帮助某人。在Android上,我尝试将nano从我的termux二进制文件夹复制到/ system / xbin。将所有库依赖项放在/ system / lib中,并得到此错误。我从termux复制的libncurses.so.6文件,如果它的TERMINFO文件仍然指向/data/data/com.termux/files/usr/share/terminfo

使用命令查看指向的路径

字符串路径到libncurses.so | grep / terminfo

要解决此问题,可以使nano用户可以读取和执行termux terminfo目录和子目录,或者将terminfo文件夹复制到其他位置,然后使用十六进制编辑器修改共享库文件中的纯文本路径。

链接到压缩的terminfo文件夹 https://drive.google.com/file/d/1m1tfHgkGRehBGh1jPMK4EaTgQb9EyCG7/view?usp=drivesdk


在使用chroot ssh配置时,我遇到了类似的情况。我已将其修复,因为@Fortune已提及。查找terminfo文件夹并将其复制到chroot文件夹结构
Gayan Kavirathne,

0

我听说可以通过/usr/share/terminfo在安装了Lion的人的计算机上用您的计算机覆盖您的计算机来解决此问题。我无法确定这是否可行,很遗憾,我尚未升级,因此无法为您提供该文件。


0

您可以在.bashrc中添加以下内容

if [ "$TERM" = xterm ]; then TERM=xterm-256color; fi
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.