nano error: Error al abrir el terminal: xterm-256color


109

Después de la instalación de OSX Lion, intenté:

nano /etc/apt/sources.list

Pero me sale este error:

Error opening terminal: xterm-256color

Si trato de cambiar las preferencias de terminal.app para abrir las ventanas de la terminal en "xterm color" en lugar de xterm-256colortodo, funciona bien.

¿Qué esta pasando?


1
Es posible que se esté perdiendo algún paso aquí, como si hubiera pasado de Mac a algún sistema Debian o Ubuntu, ¿verdad? Al menos espero que no hayas intentado editar /etc/apt/sources.list en un sistema MacOS ... :)
Henning

Respuestas:


167

En Red Hat esto funcionó para mí:

export TERM=xterm

más información aquí: http://www.cloudfarm.it/fix-error-opening-terminal-xterm-256color-unknown-terminal-type/


Me funcionó cuando se ejecutó en el sistema de eliminación. La conexión desde era OS X -> Ubuntu
Ryan Griffith

Curiosamente, tuve este error en un entorno chroot-ed que hasta ahora solo tiene programas mínimos. Supongo que falta algún programa que causa esto, pero desafortunadamente nano no da más información sobre por qué falla exactamente.
shevy

Funciona también cuando se intenta usar top dentro de un sistema kubernetes local minikube que se ejecuta como una VM basada en buildroot dentro de Virtualbox en Max OS X. (que es ssh de MacOS en una VM basada en Buildroot y tgen run top)
Henning

Esta respuesta es irrelevante para la pregunta y debería haberse eliminado.
Thomas Dickey

La misma solución parece correcta para diferentes sistemas, incluidos Ubuntu / Debian y OSX (los OP). ¿Cómo es esto irrelevante?
Meetai.com

28

Después de actualizar a OSX Lion, comencé a recibir este error en ciertos servidores (Debian / Ubuntu). La solución es simplemente instalar el paquete "ncurses-term" que proporciona el archivo / usr / share / terminfo / x / xterm-256color.

Esto funcionó para mí en un servidor Ubuntu, a través de Erik Osterman .


17

Puedo confirmar que se trata de un problema de Terminfo. Esto es lo que funcionó para mí. SSH en la máquina remota y ejecutar

 sudo apt-get install ncurses-term

Auge. Problema resuelto.


Creo que esta puede ser una de las razones por las que nano a veces puede fallar, por ejemplo, si el problema ocurre en ncurses / terminfo.
shevy

6

Tuve este problema al conectarme a http://sdf.org a través de Mac OS X Lion. Cambié en el panel Terminal Preferences( + ,) a .> AdvancedDeclare Terminal asVT-100

También marqué Delete Sends Ctrl-Hporque esta conexión Mac era confusa zsh.

Parece estar funcionando para mi caso de uso.


1
¡Gracias por una respuesta que NO implicó cambiar el servidor!
DOOManiac

1
Esto no funciona para mi. Me conecto de una Mac en Mavericks a una Mac en Snow Leopard. Recibo el error al iniciar top.
Nicolas Barbulesco

@NicolasBarbulesco Ah ok Nicolas, lo siento, pero ya no uso Mac, así que no puedo probar esto contigo.
isomorfismos

5

Yo también tengo este problema en una Mac más antigua que actualicé a Lion.

Antes de leer la sugerencia de terminfo, pude hacer que vi y menos funcionara haciendo "export TERM = xterm".

Después de leer el consejo, agarré /usr/share/terminfo de una Mac más nueva que tiene una instalación nueva de Lion y no presenta este problema.

Ahora, aunque echo $TERMtodavía rinde xterm-256color, vi y menos ahora funcionan bien.


Para cualquiera que intente ejecutar un chroot en macOS, esto soluciona el problema "Error al abrir el terminal:" dentro del chroot.

3

de alguna manera ya veces la carpeta "terminfo" viene dañada después de una instalación nueva. No sé por qué, pero el problema se puede resolver de esta manera:

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

Espero eso ayude.


Encontré el mismo error y probé los pasos sugeridos. Encontré una serie de errores de permiso denegado al desembalar con Unkg. La carpeta BSD apareció en mi escritorio y ejecuté "sudo mv ~ / Desktop / BSD / usr / share / terminfo / usr / share / terminfo" y luego reinicié el terminal, pero sigo recibiendo el mismo "Error al abrir el terminal: xterm-256color "error.
Mike Lawrence

1
tal vez puedas probar este sendpace.com/file/hc2dus es mi carpeta terminfo. después de reemplazarlo, no se olvide de chmod 555 / usr / share / terminfo
Lucas

2
  1. edita tu .bash_profilearchivo

    vim .bash_profile

  2. commnet

    #export TERM=xterm-256color

  3. Agrega esto

    export TERMINFO=/usr/share/terminfo

    export TERM=xterm-basic

    para usted .bash_profile

  4. finalmente

    correr:

    source .bash_profile


1

El mío fue un caso bastante singular, pero esto podría ayudar a alguien. En Android intenté copiar nano de mi carpeta binaria termux a / system / xbin. Colocó todas las dependencias de la biblioteca en / system / lib y obtuve este error. El archivo libncurses.so.6 que copié de termux tenía su archivo TERMINFO todavía apuntando a /data/data/com.termux/files/usr/share/terminfo

Ver camino puntiagudo con comando

cadenas path-to-libncurses.so | grep / terminfo

Para solucionarlo, haga que el directorio termux terminfo y los subdirectores sean legibles y ejecutables por el usuario nano o copie la carpeta terminfo en otro lugar y use un editor hexadecimal para modificar la ruta de texto sin formato en el archivo de biblioteca compartida.

Enlace a la carpeta terminfo comprimida https://drive.google.com/file/d/1m1tfHgkGRehBGh1jPMK4EaTgQb9EyCG7/view?usp=drivesdk


Me encontré con una situación similar al utilizar una configuración de chroot ssh. Y lo arreglé como lo ha mensurado @Fortune. buscar y copiar carpetas de terminfo a la estructura de carpetas chroot
Gayan Kavirathne

0

Escuché que esto se puede solucionar sobrescribiendo su /usr/share/terminfocon uno de la computadora de alguien con una instalación funcional de Lion. No puedo confirmar si esto funciona o no, y desafortunadamente no me he actualizado todavía, así que no puedo proporcionarle ese archivo.


0

Puede agregar lo siguiente en su .bashrc

if [ "$TERM" = xterm ]; then TERM=xterm-256color; fi
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.