Изучил внимательно в экспериментах как грузится Ubuntu и выяснил следующее:
1. Grub2 грузится так, как указано в GRUB_GFXMODE=
2. Kernel грузится так, как ему передали в GRUB_GFXPAYLOAD_LINUX=
3. А потом запускается Init, который после modprobe и инициализации соответсвующего видео модуля запускает frame buffer.
4. Модуль frame buffer сам выставляет себе разрешение экрана, а затем модуль console под это разрешение сам себе выставляет количество символов по горизонтали и вертикали.
Выставлять насильно требуемое разрешение frame buffer можно, наверняка, оно где-то прописано (ну, на крайняк
sudo fbset -fb /dev/fb0 -xres 800 -yres 600). Но нашлось решение ещё проще. Исключить инициализацию frame buffer (типа, нет у меня нового видеоадаптера) и остаться в видео-режиме загрузки ядра.
Комментируем в /etc/default/grub
#GRUB_GFXMODE=800х600
#GRUB_GFXPAYLOAD_LINUX=keepТам же выставляем
GRUB_TERMINAL=consoleИ выставляем параметры загрузки ядра для простого видео-адаптера
GRUB_CMDLINE_LINUX_DEFAULT=""
GRUB_CMDLINE_LINUX="nomodeset"В
/etc/modprobe.d/blacklist-framebuffer.conf в список модулей для видео добавляем строку про классику
blacklist vga16fb
Обновляем GRUB через
sudo update-grubПерегружаем и всё. У меня на экране классика 80х25 символов. Правда, ядро все таки подставляет свой шрифт (с тонкими буквами) вместо стандартного, но разрешение не меняет.
Спасибо за советы по теме abone28!
http://www.abone.pp.ru/2010/05/ubuntu-1004.html