Цвета в терминале Ubuntu "неправильные". Можно ли заставить его использовать правильные цвета VGA. Для сравнения приведен скриншот с двумя виртуальными машинами: одна Xubuntu 16.04 (верхняя) и одна Windows 98 (нижняя). Я ожидал увидеть некоторые параметры в настройке консоли, но это касается только шрифта и кодировки символов.
1 ответ
Виртуальная консоль linux основана на терминалах VT102 и ECMA-48. Справочные console_codes
console_ioctl
и console_ioctl дают больше информации. Вы можете увидеть текущие цвета в использовании с:
$ cat /sys/module/vt/parameters/default_{red,grn,blu}
0,170,0,170,0,170,0,170,85,255,85,255,85,255,85,255 # .../default_red
0,0,170,85,0,0,170,170,85,85,255,255,85,85,255,255 # .../default_grn
0,0,0,0,170,170,170,170,85,85,85,85,255,255,255,255 # .../default_blu
Они дают значения RGB для основных цветов терминала (8 нормальных, 8 ярких) в формате через запятую (из setvtrgb
):
# default_red: color0_R,color1_R,...,color15_R
# default_grn: color0_G,color1_G,...,color15_G
# default_blu: color0_B,color1_B,...,color15_B
+--------+--------+---------+
| Normal | Bright | Color |
+--------+--------+---------+
| 0 | 8 | Black |
| 1 | 9 | Red |
| 2 | 10 | Green |
| 3 | 11 | Yellow |
| 4 | 12 | Blue |
| 5 | 13 | Magenta |
| 6 | 14 | Cyan |
| 7 | 15 | White |
+---------------------------+
Чтобы изменить их, сначала нам нужно сохранить эти значения в файл:
$ cat /sys/module/vt/parameters/default_{red,grn,blu} > ~/myconsolecolors
Теперь настройте цвета с помощью основного текстового редактора и загрузите изменения с помощью setvtrgb
. Ubuntu устанавливает инструмент в /sbin/setvtrgb
с пакетом kbd .
$ setvtrgb ~/myconsolecolors
Как только все будет работать, вы должны запустить его при загрузке системы. Я скопировал бы ваш пользовательский цветовой файл куда-нибудь в /etc/
:
$ sudo cp ~/myconsolecolors /etc/custom-vt-colors
Затем создайте systemd
модуль для его запуска:
$ sudo nano /etc/systemd/system/custom-vt-colors.service
[Unit]
Description=Load custom VT color palette
[Service]
Type=oneshot
ExecStart=/sbin/setvtrgb /etc/custom-vt-colors
[Install]
WantedBy=multi-user.target
Наконец, включите и запустите службу:
$ sudo systemctl enable custom-vt-colors.service
$ sudo systemctl start custom-vt-colors.service