Das ist normal. Dies geschieht einfach deshalb, weil die Linux-Kernel-Konsole den 256-Farben-Modus nicht unterstützt . Es wurde nicht geschrieben, um 256 Farben zu verwenden, da dies im VGA-Textmodus einfach nicht möglich ist. (Im Framebuffer-Modus ist dies möglich, aber der Code hat immer noch die gleichen Einschränkungen.) GNU Screen weiß dies und übersetzt automatisch von der 256-Farben-Palette in die nächste 16-Farben-Palette.
Nur sehr aktuelle Linux - Versionen (3.13 und höher) begonnen zu erkennen, den Escape - Codes mit 256 Farben, aber auch dann noch er ordnet sich die 16-Farben - Palette wie Bildschirm würde.
Es gibt Framebuffer-basierte Terminal-Emulatoren wie kmscon oder fbterm, die ihr eigenes Rendering implementieren und alles über KMS zeichnen. Verwenden Sie diese, wenn Sie ein fähiges Terminal benötigen, das X11 vermeidet.
Blinkender Text tritt auf, weil die 256-Farben-Codes die 16-Farben sehr leicht verwechseln. Zum Beispiel ESC [38;5;35m
kann als den 256-Farben - Code oder drei ANSI (16 Farben) Codes interpretiert werden.
Die Linux-Konsole weiß nicht, was sie
38
bedeutet, und interpretiert sie5
wie35
gewohnt als "Enable Blink" und als "Vordergrundfarbe # 5 (Magenta)".
(Siehe zum Beispiel diese Tabelle unter "SGR".)Währenddessen erkennen Ihre X11-Terminals
38
den magischen Code für "Vordergrund - zusätzliche Farben", so dass sie5
als "256-Farbpalette verwenden" und35
als "Farbe # 35 (Cyan) verwenden" interpretiert werden .
(Es gibt auch einen 24-Bit-RGB-Modus alsESC [38;2;<r>;<g>;<b>m
.)