как консоль linux отображается для пользователя и как пользователь меняет настройки отображения консолей?

3665
Chris

Последние два дня я искал, пытаясь понять, как консоль отображает себя для пользователя и как изменить настройки консоли. По дороге мне повезло, но ничто из того, что я нашел, не дало мне четкого объяснения того, как отображается консоль или как изменять или контролировать ее параметры.

Вот некоторые примеры того, что я ищу:

Как консоль отображается на экране? Я знаю, что с X11 он использует драйвер вашей видеокарты для отображения графики на экране, но как обрабатывается текстовый режим консоли? Может ли кто-нибудь объяснить мне это или указать мне на всесторонний обзор всего этого?

Возможно ли иметь поддержку нескольких головок в режиме консоли с отдельными терминалами на каждом экране? Если так, то как мне это сделать?

Как бы вы изменили размер дисплея консоли с 80x25 по умолчанию на нестандартный размер?

Я тестирую все, что найду в тестовой сборке Debian, которая является минимальной базовой установкой на виртуальную коробку. Со временем я буду использовать эту информацию для настройки моей основной системы, которая состоит из нескольких головок с 3 мониторами. Я хотел бы иметь возможность поддерживать все три дисплея в режиме консоли, если это возможно.

2
не полный ответ, но вам нужна концепция * framebuffer * ядра и опция ядра * vga *. обычно он устанавливается во время загрузки через загрузчик (Grub, LILO и т. д.). quack quixote 13 лет назад 0
так у ядра есть свой фреймбуфер? Из того, что я снял, это звучало так, как будто буфер кадров был отдельным программным обеспечением. Кроме того, поскольку я искал, у меня нет устройства кадрового буфера в моей папке / dev. Chris 13 лет назад 0

3 ответа на вопрос

1
Bobby

Как указывал шарлатан-кихот, Kernel Framebuffer используется для рисования экрана, если X не запущен. Вы можете установить размер, используя параметр загрузки vga (устарел) или gfxpayload (новее) .

 vga=vgamodeHere  gfxpayload=1440x900x32 

Эти параметры должны быть установлены с помощью параметра загрузки, поэтому вам придется отредактировать /boot/grub/menu.lstGrub1, Grub2 /etc/default/grubи добавить этот параметр загрузки в ядро.

как мне пройти про передачу настройки gfxpayload? Chris 13 лет назад 0
@Chris: Обычно это делается с помощью Boot-Loader, для Grub1 вам нужно отредактировать `/ etc / grub / menu.lst`, а для Grub2 это будет` / etc / default / grub`. Bobby 13 лет назад 0
Или `/ boot / grub / menu.lst` Dennis Williamson 13 лет назад 1
@Dennis Williamson: Вы правы ... это, конечно, `/ boot / grub / menu.lst`, а не` etc`. Bobby 13 лет назад 0
0
Dennis Williamson

Чтобы изменить размер консоли, взгляните на команду resizecons .

Я пробовал это в моей системе, и у меня нет этой команды. Chris 13 лет назад 0
@ Крис: Какое распределение? Также обратите внимание, что я исправил опечатку в имени команды на случай, если вы попробовали неисправленную версию. Dennis Williamson 13 лет назад 0
Я использую Debian Squeeze / Testing BusinessCard установки с только базовой установкой ничего больше Chris 13 лет назад 0
0
Rafał

I just struggle with two monitor system. The console size in graphic mode can be set with fbset, e.g.:

 fbset -xres 1280 -yres 1024 

man fbset show also an example:

 fbset -fb /dev/fb0 640x480-60 

for use in rc.local. I am not sure if it works for all the consoles.

Похожие вопросы