Настраиваем монитор (Проверка)
Итак, стоит задача: научится настраивать монитор на заданные значения разрешения, частоты синхронизации и величины dpy (96*96) для комфортной работы в иксах. А попутно решим еще несколько вопросов, которые так или иначе касаются настройки видеоподсистемы.
1. Для начала заставим монитор работать с необходимым разрешением и частотой синхронизации.
Я хочу получить следующие значения: 1024 * 768 и 100 Гц вертикальной развертки.
Узнаем для начала, что есть на данный момент с помощью утилиты xvidtune, которую необходимо запустить под иксами из виртуального терминала. Утилита выдает много информации по графической подсистеме, из которой видно, что наш мониторчик работает на сгенеренной «моде» со значениями 1024 * 768 85 Гц. Почти все хорошо. Но вот 85 Гц вертикальной развертки нужно превратить в 100 Гц.
В этом нам поможет консольная утилита gtf, в качестве параметров которой скормим желаемые значения разрешения и частоты.
# gtf 1024 768 100
# 1024×768 @ 100.00 Hz (GTF) hsync: 81.40 kHz; pclk: 113.31 MHz
Modeline «1024x768_100.00» 113.31 1024 1096 1208 1392 768 769 772 814 -HSync +Vsync
Полученую «моду» запихиваем в xorg.conf. Также я закоментировал в другие значения Modeline, чтобы Х-сервер использовал только заданную «моду».
2. Приводим значение экранного разрешения к нужным нам значениям, а именно: 1024*768 при значении dpy=96*96. Именно при этом значении dpy виндовые шрифты, которыми я привык пользоваться отображаются наиболее качественно.
Сначала смотрим, что мы имеем на данный момент. В этом нам поможет утилита xdpyinfo. Запущенная с параметрами
xdpyinfo | egrep -i «resolut|dimens»
она выдаст нагора интересующие нас значения. Если они отличаются от желаемых, то привести их к нужным значениям можно двумя способами, в зависимости от того, как мы грузим иксы — из консоли, используя стартовый скрипт startx, или же используя графический вход через, например, kdm.
Я настроил оба варианта, так как грузиться я могу захотеть сегодня так, а завтра эдак. 🙂
Через стартовый скрипт startx.
Здесь все очень просто. Правим файлик /usr/local/bin/startx . Находим в нем строку
defaultserverargs="« и приводим ее к виду:
defaultserverargs=»-dpi 96"
Сохраняемся, рестартуем иксы. Проверяем через xdpyinfo:
# xdpyinfo | egrep -i «resolut|dimens»
dimensions: 1024×768 pixels (270×203 millimeters)
resolution: 96×96 dots per inch
Что и требовалось доказать. Пол-дела сделано. Ну а если влом каждый раз в консоли startx набирать? Если мы решили грузиться через
Через KDM?
Настроим и этот способ. Для этого необходимо внести соответствующие правки в файл /etc/X11/xorg.conf. Заходим в секцию Section «Monitor» и прописываем там строчку
DisplaySize 270 203
где на значениях 270 и 203 остановимся поподробнее. Ведь именно они в данном конкретном случае заставляют работать монитор с dpy равном 96*96.
Опция DisplaySize 270 203 заставляет X-Window загрузиться с разрешением 96*96 dpy при размере экрана 1024 * 768. Переменная задается в формате:
DisplaySize X Y
где
X = ширина экрана в пикселях * 25.4 / желаемое значение dpi
Y = высота экрана в пикселях * 25.4 / желаемое значение dpi
Т.е. в моем случае:
X = 1024 * 25.4 / 96
Y = 768 * 25.4 / 96
Еще, как вариант, можно просто померять экран линейкой. Значения в миллиметрах и будут нашими X и Y.
Так как для входа в систему было решено использовать графический менеджер KDM, то для его активации необходимо подредактировать файл /etc/ttys. И привести строку
ttyv8 «/usr/local/bin/xdm -nodaemon» xterm off secure
к виду
ttyv8 «/usr/local/bin/kdm -nodaemon» xterm on secure
Все, рестартуем иксы. Если все нормально, то стартанет KDM. Логинимся, после загрузки КДЕ проверяем, все-ли правильно установилось, командой
# xdpyinfo | egrep -i «resolut|dimens»
****************************************
В Kubuntu 8.04 все оказалось не так-то просто. Никак не хотели выставляться 96 dpi. Пришлось перелопатить кучу инфы.
Вратце:
Опция DisplaySize 270 203 работать отказалась. И связано это в первую очередь с установленными драйверами Nvidia. Кроме того, что не хотели выставляться 96 dpi, еще и реальная частота монитора и отображаемая в настройках не совпадают. Для исправления этого добавляем в xorg.conf в Section «Screen» строку
Option «DynamicTwinView» «False»
и после этого всё отображается одинаково.96 dpi:
Если видеокарта Nvidia, то тогда в секцию «device» добавляем:
...
Option «UseEdidDpi» «FALSE»
Option «DPI» «96 x 96»
А теперь привожу свой /etc/X11/xorg.conf
Конфиг рабочий на 100%. 1024*768*100 Гц.
Видяха — Nvidia GeForce 2 MX400, монитор Samsung SyncMaster 757 NF.
****************************************
Section «InputDevice»
Identifier «Generic Keyboard»
Driver «kbd»
Option «XkbRules» «xorg»
Option «XkbModel» «pc105»
Option «XkbLayout» «us,ru (winkeys),ua (winkeys)»
# Option «XkbVariant» «,winkeys»
Option «XkbOptions» «grp:ctrl_shift_toggle,grp_led:scrol
EndSection
Section «InputDevice»
Identifier «Configured Mouse»
Driver «mouse»
Option «CorePointer»
EndSection
Section «Device»
Identifier «Configured Video Device»
Driver «nvidia»
Option «NoLogo» «True»
Option «UseEdidDpi» «FALSE»
Option «DPI» «96 x 96»
EndSection
Section «Monitor»
Identifier «Configured Monitor»
Vendorname «Samsung Electronics Inc.»
Modelname «Samsung Syncmaster 757 NF»
Horizsync 30.0 - 98.0
Vertrefresh 50.0 - 160.0
Gamma 1
Modeline «1024x768_100.00» 113.31 1024 1096 1208 1392 768 769 772 814 -HSync +Vsync
# DisplaySize 270 203
EndSection
Section «Screen»
Identifier «Default Screen»
Monitor «Configured Monitor»
Device «Configured Video Device»
Defaultdepth 24
SubSection «Display»
Virtual 1024 768
Depth 24
Modes «1024x768_100.00»
Option «DynamicTwinView» «False»
EndSubSection
EndSection
Section «ServerLayout»
Identifier «Default Layout»
screen «Default Screen»
EndSection
Section «Module»
Load «glx»
EndSection