metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2011-02-12 12:26 am

Я тупой дебианщик

Как известно, я страдаю вульгарной линуксятиной. В том смысле, что канадские и белорусские дебианщики считают, что я должен заниматься бухгалтерией и не лезть со свиным рылом в ихний калашный линуксовый ряд. Ну, напрягает их это, мозговая скверна - боятся, что зараза дельфей, sql и бухгалтерии проникнет в чистый стерильный мир подвальных серверных и заставит их заниматься чем-нибудь вроде "apt-get install operden" и потом обучать бухгалтеров.
Тем не менее, периодически получается выдирать из них полезную инфу насчет линуксов.

На сей раз я решил все таки выяснить, как кошерно заставить дебиан(squeeze) иметь в текстовой консоли нормальное разрешение экрана, вместо 80х25, на которых нифига не помещается. Надо заметить, что никаких X-ов я принципиально не ставлю, потому что шрифты и юзабилити у графического софта под линукс - на 99% ракоглазие, и кроме того, графической унылости мне и под виндой хватает, а линуксом я пользуюсь ради кошерной текстовой консоли, из которой все можно делать без графики и прочей дизайнерско-макоебской скверны.
Везде в интернетах по жизни было написано дописать в строку параметров ядра vga=791 и это как бэ всегда и работало.
Затем в squeeze всунули GRUB2 где это внезапно стало deprecated и чтобы работало аналогично - нужно прописать в /etc/default/grub GRUB_GFXMODE=1024x768, в /etc/grub.d/00_header в одной из строчек в определенном месте добавить set gfxpayload=keep и выполнить update-grub. Ну, вуду оно и есть вуду, тем не менее работает. После же апдейта, если он затрагивает груб - на 00_header ругается dpkg и приходится или мержить изменения, или заменять на стандартный из пакета, а потом править руками. Некошерно.
Решил таки выяснить, как же кошерно. У канадских дебианщиков вопрос вызвал неимоверную истерику, с упоминанием drm/kms/firmware-linux-free и прочего. Основной вопрос, который задавался несколько раз - "причем тут груб?".
Утверждается, что vga=791 и тому подобные исправления в параметрах груба есть костыль, что это в любой момент перестанет работать, а правильно - драйвера видеокарты должны поддерживать KMS. Что характерно, про оный KMS нигде в связи с описанием установки нужного мне текстового режима не упоминалось. Кроме того, в отличие от костылей в грубе - оно не работает, т.к. под мою видеокарточку ati rage mobility я в дебиане дров не нашел, все упоминания дров - фигурируют исключительно в контексте каких-то генту, ручной сборки, причем обсуждения 3-4х годовой давности и обычно на тему "дрова не собираются". А те дрова, которые есть - тянут за собой xserver. Мне же он, по идее, не нужен. Я, возможно, чего-то не понимаю, но мне кажется что xserver и дрова друг от друга зависеть не должны.
Т.е. простая задача выливается в какой-то оккультизм с дровами, малопонятными фичами ядра и дров, причем про это знают только хардкорные линуксоиды, а все остальные пользуются типа костылями и распространяют знание о костылях дальше.

[identity profile] cottidianus.livejournal.com 2011-02-12 03:20 am (UTC)(link)
> Надо заметить, что никаких X-ов я принципиально не ставлю ... а линуксом я пользуюсь ради кошерной текстовой консоли ...
http://ivan-dives.name/random/awesome.png называется awesome - минимальный wm как раз для консолей

> У канадских дебианщиков вопрос вызвал неимоверную истерику, с упоминанием drm/kms/firmware-linux-free и прочего ... а правильно - драйвера видеокарты должны поддерживать KMS.
Совершенно верно.

> Что характерно, про оный KMS нигде в связи с описанием установки нужного мне текстового режима не упоминалось.
http://www.x.org/wiki/radeonBuildHowTo#Kernel-basedModeSetting | KMS is enabled by default on Linux, by the way of the file /etc/modprobe.d/radeon-kms.conf

> все упоминания дров - фигурируют исключительно в контексте каких-то генту, ручной сборки
Для KMS нужно только ядро, генту и ручная сборка - это для опенсорсных драйверов для xorg-server (что, кстати, большое добро).

http://ivan-dives.name/random/IMAGE_00245.jpg KMS 1680x1050 210х65 (извиняюсь за мазню - нормального фотоаппарата под рукой нет)

-------
1) По хорошему КМС надо ручками включать в ядре, но бебианщики пишут, что у них уже всё сделано.
2) Микропрограмма скорее всего не нужна ибо карточке осенью будет 12 лет.
3) По этой же причине я зарекаюсь говорить можно ли вообще на ней завести кмс.
4) Back to point 1: что это за radeon-kms.conf и что в dmesg? http://paste.pocoo.org/show/336867/ <-- Вот dmesg с ядра с кмс (см строчки 446-504)

[identity profile] metaclass.livejournal.com 2011-02-12 07:09 am (UTC)(link)
Не, у меня в dmesg radeon, drm и modesetting никак не упоминаются.
Скорее всего, драйвер этой карточки с поддержкой kms умер за ненадобностью, слишком старая. Немного странно, что это не встроено в ядро.
А драйвер xserver-xorg-video-radeon у меня не стоит, т.к. он тянет за собой X и непонятно, какое соотношение между драйвером для иксов и текстовой консолью при загрузке системы.

[identity profile] avnik.livejournal.com 2011-02-12 01:14 pm (UTC)(link)
kms'ный драйвер от ати -- в ядре, его достаточно modprobe'нуть.
И ты бы уже lspci показал, а то непонятно это древнючий rage128 или что-то более новое потому что мобилити

[identity profile] cottidianus.livejournal.com 2011-02-12 03:31 pm (UTC)(link)
Согласен со всем, что сказал avnik.

to metaclass:
1) Может быть драйвер поддерживает kms, но он не включен by default? Вот так это когда-то включалось на интеле (если я не ошибаюсь, сейчас kms by default):
kernel /example-kernel-2.6.29 root=/dev/root i915.modeset=1
2) Если у вас rage128, то эта строчка наверное должна выглядеть как r128.modeset=1
3) Это при условии, что драйвер доступен ядру во время инициализации видео (если драйвер собран сторонним модулем, его надо сунуть в initrd). В принципе есть ещё вариант дождаться шелла и сделать modprobe.
4) Если там действительно не работает kms, то посмотрите вот это: http://www.kernel.org/doc/Documentation/fb/aty128fb.txt
5) Мы не говорим о драйвере для Xorg.
6) Покажите lspci (ещё желательно dmesg (со всем, что говорит ядро, когда вы в него драйвер модпробаете) и radeon-kms.conf (хоть у меня и нету бебиана, я представляю что в этом файле, но мне интересно что в нём именно в вашем случае)).
7) Допустим у вас не r128, а какой-нибудь из чипов поддерживаемых radeon драйвером. Покажите конфиг ядра и dmesg (почему kms там не работает по умолчанию).
8) Ещё подумалось: может у вас просто модули не установлены. Вроде как в дебиане вполне могли несколько модулей завернуть в отдельный пакет не ставящийся по умолчанию.

[identity profile] metaclass.livejournal.com 2011-02-12 04:28 pm (UTC)(link)
01:00.0 VGA compatible controller: ATI Technologies Inc Rage Mobility P/M AGP 2x (rev 64)
mach64
modprobe mach64 - module mach64 not found
radeon-kms.conf нету

[identity profile] metaclass.livejournal.com 2011-02-12 04:42 pm (UTC)(link)
В общем, с этой карточкой печаль: http://dri.freedesktop.org/wiki/ATIMach64

[identity profile] metaclass.livejournal.com 2011-02-12 04:09 pm (UTC)(link)
это mach64, который еще более древнючий, по моему.