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?

Luke
fuente
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/

Meetai.com
fuente
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 .

becerro
fuente
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.

Johnny
fuente
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.

isomorfismos
fuente
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.

bitaxis
fuente
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.

Luke
fuente
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

Xu Radman
fuente
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

Fortuna
fuente
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.

EdoDodo
fuente
0

Puede agregar lo siguiente en su .bashrc

if [ "$TERM" = xterm ]; then TERM=xterm-256color; fi
doesnt_matter
fuente