Конфигурационным файлом для XFree86 является XF86Config (в XFree86 версий 4.x используется файл XF86Config-4, т. к. формат конфигурационного файла для предыдущих версий XFree86 отличался, и только при его отсутст- вии используется XF86Config). В Xorg конфигурационный файл называется xorg.conf. Эти файлы в GNU/Linux размещаются в каталоге /etc/X11.
Формат конфигурационных файлов XF86Config и xorg.conf отличается лишь в деталях. Для создания этого файла обычно применяются автоматизирован- ные процедуры, хотя он может быть создан и вручную.
Для создания конфигурационного файла можно использовать:
r утилиты, специфичные для дистрибутива, например, в SUSE — sax2;
r команду X –configure, которая производит автоматическую провер- ку оборудования и сохраняет новый файл конфигурации в текущем ка- талоге;
r отдельно поставляющиеся утилиты xorgcfg или xf86cfg;
r Shell-сценарий xorgconfig или xf86config, позволяющий конфигуриро- вать X-сервер, отвечая на последовательность вопросов.
Обычно в файле xorg.conf имеются следующие секции:
r ServerLayout — указывает идентификаторы используемого X-сервером экрана и устройств ввода;
r Module — подключает модули расширения X-сервера;
r InputDevice — описывает используемые устройства ввода, например, мышь или клавиатуру;
r Files — задает пути к библиотеке цветов RGB и каталогам шрифтов;
r ServerFlags — устанавливает дополнительные флаги X-сервера;
r Monitor — определяет параметры используемого монитора;
r Device — описывает видеоадаптер;
r Screen — задает параметры отображения информации на экране, напри- мер, глубину цвета.
Для использования русской раскладки клавиатуры в секции InputDevice, связанной с клавиатурой директивой Driver "Keyboard", можно использо- вать конфигурацию, приведенную в примере 32.2.
Пример 32.2. Настройки клавиатуры для русской раскладки
Section "InputDevice"
Identifier "Keyboard[0]"
Driver
"keyboard"
Option
"Protocol"
"Standard"
Option
"XkbModel"
"pc104"
Option
"XkbRules"
"xfree86"
Option
"XkbLayout"
"us,ru"
Option
"XkbOptions"
"grp:ctrl_shift_toggle,grp_led:scroll"
EndSection
Настройки для клавиатуры:
r количество клавиш указывает Option "XkbModel" "pc104";
r опция Option "XkbLayout" "us,ru" задает раскладку клавиатуры;
r опция Option "XkbOptions" "grp:ctrl_shift_toggle,grp_led:scroll" за- дает метод переключения раскладки — сочетание клавиш <Ctrl>+<Shift>;
r при переключении раскладки клавиатуры на русский язык будет зажи- гаться светодиод Scroll Lock на клавиатуре для индикации текущей рас- кладки.
Для описания мыши используются директивы, приведенные в примере 32.3.
При использовании двухкнопочных мышей имеет смысл включить эмуляцию трехкнопочной мыши с помощью опции Emulate3Buttons. Это позволит эмулировать щелчок средней кнопкой мыши при нажатии одновременно двух кнопок. Для обычных двухкнопочных мышей чаще всего используется протокол PS/2, а для мышей с колесиком — IMPS/2. Для того чтобы можно было пользоваться скроллингом, управляемым колесиком мыши, необходи- мо указать Option "ZAxisMapping" "4 5".
Мыши, подключаемые к разъему PS/2, используют файл устройства
/dev/psaux, а USB-мыши обычно используют /dev/input/mice.
В секции Files установлен путь к библиотеке RGB (пример 32.4). Она определяет удобные имена для сочетаний битов RGB, задающих цвета (см. файл rgb.txt в каталоге /usr/X11R6/lib/X11/ или /usr/share/X11/).
Пример 32.4. Путь к библиотеке RGB
RgbPath "/usr/X11R6/lib/X11/rgb"
Если сервер шрифтов xfs не используется, то в секции Files имеются пути к каталогам со шрифтами (пример 32.5).
Пример 32.5. Путь к кириллическим шрифтам
FontPath "/usr/X11R6/lib/X11/fonts/cyrillic/"
Если используется сервер шрифтов, то эти строки отсутствуют. Вместо них указывается сокет сервера шрифтов (пример 32.6).
Пример 32.6. Настройка для использования сервера шрифтов
FontPath "unix/:-1"
Настройка в примере 32.6 заставляет X-сервер использовать сервер шриф- тов на локальной машине. При необходимости использования централизо- ванного сервера на выделенной машине следует указать имя или IP-адрес машины и номер порта. Сервер шрифтов обычно работает с портом TCP 7100 (пример 32.7).
Пример 32.7. Подключение к серверу шрифтов через сеть
Важнейшими параметрами здесь является кадровая частота VertRefresh (в герцах) и частота строчной синхронизации HorizSync (в килогерцах). Строка Modeline задает разрешение экрана и временные параметры, необхо- димые для корректного отображения изображения на мониторе. Настройка временных параметров может быть произведена с помощью графической программы xvidtune.
В секции Device описывают видеоадаптер, а точнее указывают его PCI- шинный идентификатор, например, BusID "PCI:0:2:0". Исключительно важно правильно указать драйвер для видеоадаптера, например: Driver "i810".
Секция Screen указывает видеорежим и глубину цветов (пример 32.9).
Пример 32.9. Настройки разрешения и глубины цветов
Здесь настройка DefaultColorDepth задает глубину цвета, т. е. количество битов, используемых для кодировки цветов. В подсекции Display указывает- ся видеорежим.