Linux - Алексей Стахнов
Шрифт:
Интервал:
Закладка:
Ссылки
• www.veter.sky.net.ua/docs/inux/LINUXSOS/index.html – Gerhard Mourani. Безопасность и оптимизация Linux. Редакция для Red Hat.
• www.amanda.ocg – сайт программы AMANDA.
• Соответствующие страницы man.Глава 34 X Window и другие графические оболочки
Операционная система Linux давно уже немыслима без графической оболочки X Window, по крайней мере, на рабочих местах пользователей, поэтому необходимо иметь хотя бы общее представление о ее конфигурировании. В принципе, в большинстве современных дистрибутивов во время инсталляции система корректно распознает вашу аппаратуру и настраивает X Window, однако всегда существуют некоторые аспекты конфигурирования, которые хотелось бы подправить.
Конфигурирование X Window
Конфигурирование X Window включает в себя четыре основных компонента:
• конфигурирование Х-сервера;
• конфигурирование диспетчеров окон Window Manager;
• конфигурирование прикладных программ;
• русификацию.
Эти действия могут быть сделаны как администратором – для всей системы сразу, так и пользователем, но только для себя. Исключениями являются лишь Х-сервер, конфигурацию которого может модифицировать только root, и, частично, русификация.
Конфигурирование X-сервера
Базой системы X Window является Х-сервер, выполняющий основную работу системы. Все настройки Х-сервера располагаются в файле /etc/X11/XF86Config.
Этот файл состоит из нескольких секций, каждая из которых содержит настройки для определенной подсистемы – шрифтов, мыши, клавиатуры, монитора, видеоадаптера.
Общий вид секции такой:
Section «имя-секции» данные
...EndSection
Внутри секций могут быть подсекции – они определяются парой ключевых СЛОВ SubSection/EndSubsection.
В табл. 34.1 приведены основные секции конфигурационного файла XF86Config.
Таблица 34.1. Основные секции файла XF86Config Ниже приведен пример конфигурационного файла XF86Config-4.# File generated by anaconda.
Section "ServerLayout"
Identifier "Anaconda Configured"
Screen 0 "Screen0" 0 0
InputDevice "Mouse0" "CorePointer"
InputDevice "Keyboard0" "CoreKeyboard"
EndSectionSection «Files»
# The location of the RGB database. Note, this is the name of the
# file minus the extension (like ".txt" or ".db"). There is normally
# no need to change the default.RgbPath «/usr/XHR6/lib/X11/rgb»
# Multiple FontPath entries are allowed (they are concatenated together)
# By default, Red Hat 6.0 and later now use a font server independent of
# the X server to render fonts.FontPath «unix/:7100»
EndSection
Section «Module»
Load "GLcore"
Load "dbe"
Load "extmod"
Load "fbdevhw"
Load "pex5"
Load "dri"
Load "glx"
Load "pex5"
Load "record"
Load "xie"
EndSectionSection «InputDevice»
Identifier "Keyboard0"
Driver "keyboard"# Option «AutoRepeat» «500 5»
# when using XQUEUE, comment out the above line, and uncomment the
# following line
# Option "Protocol" "Xqueue"# Specify which keyboard LEDs can be user-controlled (eg, with xset(1)) # Option "Xleds" "1 2 3"
# To disable the XKEYBOARD extension, uncomment XkbDisable. # Option "XkbDisable"
# То customise the ХКВ settings to suit your keyboard, modify the
# lines below (which are the defaults). For example, for a non-U.S.
# keyboard, you will probably want to use:
# Option "XkbModel" "pc102"
# If you have a US Microsoft Natural keyboard, you can use:
# Option "XkbModel" "microsoft"
#
# Then to change the language, change the Layout setting.
# For example, a german layout can be obtained with:# Option «XkbLayout» «de»
# or:
# Option "XkbLayout" "de"
# Option "XkbVariant" "nodeadkeys"
#
# If you'd like to switch the positions of your capslock and
# control keys, use:
# Option "XkbOptions" "ctrl:nocaps"
Option "XkbRules" "xfree86"
Option "XkbModel" "pc102"
Option "XkbLayout" "ru(winkeys)"
#Option "XkbVariant" ""
Option "XkbOptions" "grp:ctrl_shift_toggle"
EndSectionSection «InputDevice»
Identifier "Mouse0"
# Modified by mouseconfig
Driver "mouse"
Option "Device" "/dev/mouse"
Option "Protocol" "IMPS/2"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
EndSectionSection «Monitor»
Identifier "Monitor0"
VendorName "Monitor Vendor"
ModelName "Monitor Model"
HorizSync 30 – 96VertRefresh 50 – 160 Option «dpms» # – 1400x1050 –
# 1400x1050 @ 60Hz, 65.8 kHz hsync
Modeline "1400x1050" 129 1400 1464 1656 1960
1050 1051 1054 1100 +HSync +VSync# 1400x1050 @ 70Hz, 76.8 kHz hsync
Modeline "1400x1050" 151 1400 1464 1656 1960
1050 1051 1054 1100 +HSync +VSync# 1400x1050 @ 75Hz, 82.3 kHz hsync
Modeline "1400x1050" 162 1400 1464 1656 1960
1050 1051 1054 1100 +HSync +VSync# 1400x1050 @ 85Hz, 93.2 kHz hsync
Modeline "1400x1050" 184 1400 1464 1656 1960
1050 1051 1054 1100 +HSync +VSync
EndSectionSection «Device»
# no known options
Identifier "NVIDIA GeForce 2 MX (generic)"
Driver "nv"
VendorName "NVIDIA GeForce 2 MX (generic)"
BoardName "NVIDIA GeForce 2 MX (generic)"#BusID EndSection
Section «Screen»
Identifier "Screen0"
Device "NVIDIA GeForce 2 MX (generic)"
Monitor "Monitor0"
DefaultDepth 16Subsection «Display» Depth 16
Modes «1024x768»
EndSubsection
EndSectionSection «DRI»
Mode 0666
EndSection
Секция FilesВ этой секции задается местоположение файла со списком цветов и содержится список каталогов, в которых Х-сервер должен искать шрифты.
Порядок директив, задающих пути к шрифтам, имеет значение – при подборе шрифтов по псевдонимам они будут искаться в указанном порядке. Таким образом, если поставить каталог со шрифтами koi8-r в начало списка, то во многих случаях вместо европейских будут использоваться кириллические шрифты.
Секция KeyboardВ этом разделе определяются параметры и поведение клавиатуры – в частности, переключатель раскладок клавиатуры.
Секция PointerВ этой секции задаются параметры мыши – тип устройства, эмуляция третьей кнопки, количество кнопок и т. п.
Секция MonitorЗдесь указываются тип монитора и его параметры. Тип – это название, которое может быть произвольным, и на которое ссылается секция screen.
Указываемые параметры – диапазоны частот горизонтальной (но rizSync) и вертикальной (vertRef resh) развертки, а также список поддерживаемых видеорежимов (директивы ModeLine). При ручной настройке параметров монитора настоятельно рекомендуется ознакомиться с руководством на монитор, в котором имеется информация о максимальных разрешениях монитора, кадровой и строчной развертке.
Имеющиеся в стандартном файле директивы ModeLine покрывают большую часть мониторов. При сканировании этих директив Х-сервер выбирает из видеорежимов с одинаковым именем тот, который дает наибольшую кадровую частоту, при этом учитываются только те видеорежимы, которые совместимы с параметрами монитора и видеокарты.
Секций Monitor может быть несколько – используется та из них, которая указана в секции screen.
Секция DeviceВ этой секции указываются параметры видеокарты. Обычно все параметры Х-сервер определяет сам, считывая их непосредственно из видеокарты.
В случае же, когда требуется изменить какие-либо настройки, следует посмотреть тан-страницу по используемому Х-серверу.
Секция Screen Здесь указывается, какую конфигурацию видеокарты и какой монитор следует использовать, а также параметры видеорежимов – разрешение и глубина цвета.Настройка параметров монитора
Впрочем, вам, скорее всего, не понадобится ручное вмешательство в настройки X Window. Для настройки монитора, видеокарты, мыши, клавиатуры можно воспользоваться утилитами конфигурирования, например утилитой xf86config – простой консольной утилитой для конфигурирования X Window. Неудобна она тем, что если при выборе параметра вы ошиблись, отменить выбор невозможно. Программа Xconfigurator также представляет собой консольное приложение, но, в отличие от предыдущей утилиты, имеет более удобный интерфейс (рис. 34.1).
Рис. 34.1. Программа Xconfigurator
Однако с помощью утилиты xfE6config каждый режим работы монитора может описываться самостоятельно, что позволяет выжать из вашего монитора все, на что он способен. Для этого необходимо в файле xf86config задать для нужного видеорежима строку в таком формате:
Modeline «mode_name» D HI H2 Н3 H4 VI V2 V3 V4 Flags
где:
• Mode line – ключевое слово, определяющее строку, содержащую описание видеорежима;
• «mode_name» – название нашего видеорежима. Написать можно что угодно, традиционно имя записывается в виде "разрешение_по_горизонтали х разрешение_по_вертикали", например «1024x768». «mode_name» используется В качестве ссылки на ИМЯ режима В Section «Screen», Subsection «Display», Modes «mode_name». Режимы устанавливаются в порядке перечисления;
• d – частота тактового генератора. Это число задается в мегагерцах;
• H1, H2, H3, Н4 – числа, отвечающие за строчную синхронизацию;
• V1, V2, V3, V4 – числа, отвечающие за кадровую синхронизацию;
• Flags – параметры для тонкой подстройки синхронизации.
Давайте разбираться с этими параметрами. У нас есть тактовая частота генератора, к которому привязываются все параметры видеокадра. Видеокадр состоит из видеострок. Строка имеет следующие параметры:
• A – количество пикселов в строке (временной интервал, затрачиваемый на вывод строки пикселов);
• B – время между окончанием вывода строки и появлением строчного синхроимпульса;
• C – время, за которое выводится синхроимпульс;
• D – время обратного хода развертки.
Таким образом, для строчной развертки получаем:
H1 = A
Н2 = А+В
H3 = А+В+С
Н4 = A+B+C+D
Для кадровой развертки в качестве единицы измерения используется частота строк. Поэтому:
V1 – количество строк, отображаемых в одном кадре;
V2 – количество строк от начала кадра до начала кадрового синхроимпульса;
V3 – количество строк от начала кадра до конца кадрового синхроимпульса;
V4 – общее количество строк в кадре.
На современном оборудовании при инсталляции операционной системы частоты монитора программа инсталляции выставляет по максимуму, поэтому ручное вмешательство в настройки монитора вам, скорее всего, не понадобится.