ubuntuusers.de

iftop ohne Strichumrandung

Status: Gelöst | Ubuntu-Version: Server 16.04 (Xenial Xerus)
Antworten |

holimatic

Avatar von holimatic

Anmeldungsdatum:
15. Dezember 2009

Beiträge: 405

Wohnort: Rotkreuz

Hi,

Auf allen meinen Servern habe ich iftop installiert. Wenn ich den in der PuTTY Console aufrufe, erscheinen alle Umrandungen mit einem q. Zuerst dachte ich ncurses würde fehlen, ist aber installiert. Kann mir jemand sagen, was noch installiert werden muss, damit die Umrandung mit Strichen wie im Desktop erscheint? Vielleicht ist es aber auch eine Einstellung im PuTTY, nur finde ich keine akkurate Einstellung dafür.

Ist ja nur eine Frage der Übersicht. 🙄

misterunknown Team-Icon

Ehemalige
Avatar von misterunknown

Anmeldungsdatum:
28. Oktober 2009

Beiträge: 4403

Wohnort: Sachsen

Vermutlich stimmt das Encoding bei dir nicht. Was sagt:

env | grep LANG

holimatic

(Themenstarter)
Avatar von holimatic

Anmeldungsdatum:
15. Dezember 2009

Beiträge: 405

Wohnort: Rotkreuz

misterunknown schrieb:

Vermutlich stimmt das Encoding bei dir nicht. Was sagt:

env | grep LANG

Das sagt:

> LANG=en_US.UTF-8
> LANGUAGE=en_US:en

novecento

Avatar von novecento

Anmeldungsdatum:
6. November 2009

Beiträge: 87

Scheint ein Bug zu sein, aber es gibt ein Workaround https://bugzilla.redhat.com/show_bug.cgi?id=546032#c4.

NCURSES_NO_UTF8_ACS=1 iftop

holimatic

(Themenstarter)
Avatar von holimatic

Anmeldungsdatum:
15. Dezember 2009

Beiträge: 405

Wohnort: Rotkreuz

novecento schrieb:

Scheint ein Bug zu sein, aber es gibt ein Workaround https://bugzilla.redhat.com/show_bug.cgi?id=546032#c4.

NCURSES_NO_UTF8_ACS=1 iftop

Vielen Dank und ja das passt, sind zwar Ascii Striche aber immerhin besser wie vorher 👍

Habe in .bashrc gleich ein alias gesetzt.

Seebär

Avatar von Seebär

Anmeldungsdatum:
2. Mai 2009

Beiträge: 833

Jo, so was kenne ich. Das ist wohl auch kein iftop-spezifisches Problem. Hatte ich unter RHEL, glaube bei yum, auch. War eine Sache des Encodings. Konnte "wählen": entweder saubere Striche aber falscher Zeichensatz oder eben anderes herum. Ggf. ist wirklich putty-spezifisch. Probier halt mal ohne putty ("echtes" ssh von nem "echten" Linux aus ☺ )

Mal verglichen, wie das bei deinen anderen zig Servern eingestellt ist? Das selbe encoding?

Vain

Avatar von Vain

Anmeldungsdatum:
12. April 2008

Beiträge: 2510

Die Manpage sagt zu der Umgebungsvariablen:

   NCURSES_NO_UTF8_ACS
       During  initialization,  the ncurses library checks for special
       cases where VT100 line-drawing (and the corresponding alternate
       character set capabilities) described in the terminfo are known
       to be missing.  [...]
       For  other special cases, you should set this environment vari‐
       able.  Doing this tells ncurses to  use  Unicode  values  which
       correspond  to  the  VT100 line-drawing glyphs. [...]

VT100-ähnliche Terminals kennen ein „alternate charset“. Mit einer Escape-Sequenz kann man das aktivieren. Wenn man dann zum Beispiel ein „m“ (also ein Byte mit dem Wert 0x6D) ans Terminal schickt, dann stellt das Terminal kein „m“ dar sondern einen „box drawing character“.

Kann man ausprobieren (an einem „echten“ Terminal, was eben dieses ACS unterstützt):

$ echo {a..z}; tput smacs; echo {a..z}; tput rmacs
a b c d e f g h i j k l m n o p q r s t u v w x y z
▒ ␉ ␌ ␍ ␊ ° ± ␤ ␋ ┘ ┐ ┌ └ ┼ ⎺ ⎻ ─ ⎼ ⎽ ├ ┤ ┴ ┬ │ ≤ ≥

$ tput smacs; echo qqqqqqqqqqqqqqqqqqqqqqqqq; tput rmacs
─────────────────────────

Wenn das Setzen der Variable bei Putty also hilft, würde das suggerieren, dass Putty kein „alternate charset“ unterstützt. Statt einer horizontalen Linie würde es dann nur besagte „q“ darstellen.

Ist die Variable entsprechend gesetzt, benutzt ncurses statt des ACS direkt Unicode/UTF-8. Das geht, weil in Unicode diese ganzen „box drawing characters“ auch nochmal enthalten sind: https://en.wikipedia.org/wiki/Box_Drawing

(So verstehe ich die Manpage zumindest. Die Variable ist irgendwie wunderlich benannt. „NCURSES_NO_UTF8_ACS“. Auf was bezieht sich da jetzt das „no“? Auf UTF-8? Auf ACS? Äh …)

Antworten |