Nano-Fehler: Fehler beim Öffnen des Terminals: xterm-256color

108

Nach der Installation von OSX Lion habe ich versucht:

nano /etc/apt/sources.list

Aber ich bekomme diesen Fehler:

Error opening terminal: xterm-256color

Wenn ich versuche, die Einstellungen von terminal.app zu ändern, um Terminalfenster in "xterm color" zu öffnen, xterm-256colorfunktioniert alles einwandfrei.

Was ist los?

Luke
quelle
1
Möglicherweise fehlt Ihnen hier ein Schritt - als ob Sie vom Mac in ein Debian- oder Ubuntu-System gewechselt wären, oder? Zumindest hoffe ich, dass Sie nicht versucht haben, /etc/apt/sources.list in einem MacOS-System zu bearbeiten ... :)
Henning

Antworten:

166

Bei Red Hat hat das bei mir funktioniert:

export TERM=xterm

Weitere Infos hier: http://www.cloudfarm.it/fix-error-opening-terminal-xterm-256color-unknown-terminal-type/

Meetai.com
quelle
Arbeitete für mich, als es auf dem Entfernungssystem ausgeführt wurde. Verbindung von war OS X -> Ubuntu
Ryan Griffith
Interessanterweise hatte ich diesen Fehler in einer Chroot-Umgebung, in der es bisher nur minimale Programme gibt. Ich gehe davon aus, dass ein Programm fehlt, das dies verursacht, aber leider gibt nano keine weiteren Informationen darüber, warum es genau fehlschlägt.
Shevy
Funktioniert auch, wenn versucht wird, top in einem lokalen Minikube-Kubernetes-System zu verwenden, das als VM basierend auf Buildroot in Virtualbox unter Max OS X ausgeführt wird (das von MacOS in eine Buildroot-basierte VM und tgen run top ausgeführt wird)
Henning
Diese Antwort ist für die Frage irrelevant und hätte gelöscht werden müssen.
Thomas Dickey
Die gleiche Lösung scheint für verschiedene Systeme korrekt zu sein, einschließlich Ubuntu / Debian und OSX (die OPs). Wie ist das irrelevant?
Meetai.com
28

Nach dem Upgrade auf OSX Lion trat dieser Fehler auf bestimmten Servern (Debian / Ubuntu) auf. Das Update besteht einfach darin, das Paket "ncurses-term" zu installieren, das die Datei / usr / share / terminfo / x / xterm-256color enthält.

Dies funktionierte für mich auf einem Ubuntu-Server über Erik Osterman .

Calvinf
quelle
17

Ich kann bestätigen, dass dies ein Terminfo-Problem ist. Das hat bei mir funktioniert. SSH auf dem Remote-Computer und ausführen

 sudo apt-get install ncurses-term

Boom. Problem gelöst.

Johnny
quelle
Ich denke, dies kann ein Grund sein, warum Nano manchmal versagt - z. B. wenn das Problem stattdessen bei ncurses / terminfo auftritt.
Shevy
6

Ich hatte dieses Problem beim Herstellen einer Verbindung zu http://sdf.org über Mac OS X Lion. Ich änderte unter Terminal Preferences( + ,) > AdvancedBereich Declare Terminal asauf VT-100.

Ich habe auch markiert, Delete Sends Ctrl-Hweil diese Mac-Verbindung verwirrend war zsh.

Es scheint für meinen Anwendungsfall zu funktionieren.

Isomorphismen
quelle
1
Vielen Dank für eine Antwort, bei der der Server NICHT gewechselt wurde!
DOOManiac
1
Das funktioniert bei mir nicht. Ich verbinde mich von einem Mac in Mavericks mit einem Mac in Snow Leopard. Ich erhalte die Fehlermeldung beim Start top.
Nicolas Barbulesco
@NicolasBarbulesco Ah ok Nicolas, sorry, aber ich benutze keinen Mac mehr, also kann ich das nicht mit dir testen.
Isomorphismen
5

Ich habe auch dieses Problem auf einem älteren Mac, den ich auf Lion aktualisiert habe.

Bevor ich den Terminfo-Tipp gelesen habe, konnte ich mit "export TERM = xterm" vi und weniger arbeiten.

Nachdem ich den Tipp gelesen hatte, griff ich /usr/share/terminfonach einem neueren Mac, auf dem Lion neu installiert wurde und der dieses Problem nicht aufweist.

Jetzt, obwohl echo $TERMimmer noch Erträge xterm-256color, funktionieren vi und weniger jetzt gut.

Bitaxis
quelle
Für alle, die versuchen, eine Chroot unter macOS zum Laufen zu bringen, wird das Problem "Fehler beim Öffnen des Terminals:" in der Chroot behoben.
3

Irgendwie und manchmal wird der Ordner "terminfo" nach einer Neuinstallation beschädigt. Ich weiß nicht warum, aber das Problem kann auf folgende Weise gelöst werden:

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

ich hoffe es hilft.

Luke
quelle
Ich bin auf denselben Fehler gestoßen und habe Ihre vorgeschlagenen Schritte ausprobiert. Ich habe beim Entpacken mit unpkg eine Reihe von Fehlern festgestellt, denen die Berechtigung verweigert wurde. Der BSD-Ordner wurde auf meinem Desktop angezeigt, und ich habe "sudo mv ~ / Desktop / BSD / usr / share / terminfo / usr / share / terminfo" ausgeführt und dann das Terminal neu gestartet, aber ich erhalte immer noch das gleiche "Fehler beim Öffnen des Terminals: xterm-256color " Error.
Mike Lawrence
1
Vielleicht können Sie diesen sendspace.com/file/hc2dus ausprobieren. Es ist mein terminfo-Ordner. Vergessen Sie nach dem Ersetzen nicht, chmod 555 / usr / share / terminfo
Luke
2
  1. Bearbeiten Sie Ihre .bash_profileDatei

    vim .bash_profile

  2. commnet

    #export TERM=xterm-256color

  3. füge das hinzu

    export TERMINFO=/usr/share/terminfo

    export TERM=xterm-basic

    zu deinem .bash_profile

  4. endlich

    Lauf:

    source .bash_profile

Xu Radman
quelle
1

Meins war ein ziemlich einzigartiger Fall, aber das könnte jemandem helfen. Unter Android habe ich versucht, Nano aus meinem Termux-Binärordner nach / system / xbin zu kopieren. Platzierte alle Bibliotheksabhängigkeiten in / system / lib und bekam diesen Fehler. Bei der Datei libncurses.so.6, die ich von termux kopiert habe, zeigte die TERMINFO-Datei immer noch auf /data/data/com.termux/files/usr/share/terminfo

Zeigen Sie den spitzen Pfad mit dem Befehl an

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

Um dies zu beheben, machen Sie entweder das Termux-Terminfo-Verzeichnis und die Unterverzeichnisse für den Nano-Benutzer lesbar und ausführbar oder kopieren Sie den Terminfo-Ordner an eine andere Stelle und verwenden Sie einen Hexeditor, um den Nur-Text-Pfad in der gemeinsam genutzten Bibliotheksdatei zu ändern.

Link zum komprimierten terminfo-Ordner https://drive.google.com/file/d/1m1tfHgkGRehBGh1jPMK4EaTgQb9EyCG7/view?usp=drivesdk

Vermögen
quelle
Ich bin auf eine ähnliche Situation gestoßen, als ich eine Chroot-SSH-Konfiguration verwendet habe. Und ich habe es behoben, wie @Fortune es erwähnt hat. Suchen und Kopieren von Terminfo-Ordnern in die Chroot-Ordnerstruktur
Gayan Kavirathne
0

Ich habe gehört, dass dies behoben werden kann, indem Sie Ihre /usr/share/terminfomit einer vom Computer einer Person mit einer funktionierenden Installation von Lion überschreiben . Ich kann nicht bestätigen, ob dies funktioniert oder nicht, und leider habe ich noch kein Upgrade durchgeführt, sodass ich Ihnen diese Datei nicht zur Verfügung stellen kann.

EdoDodo
quelle
0

Sie können Folgendes in Ihre .bashrc einfügen

if [ "$TERM" = xterm ]; then TERM=xterm-256color; fi
spielt keine Rolle
quelle