<< Предыдущий раздел | /\ Содержание | >> Следующий раздел

Файл XF86Config и его структура

Все настройки X-сервера располагаются в файле /etc/X11/XF86Config.

Этот файл состоит из нескольких секций, каждая из которых содержит настройки для определенной подсистемы -- шрифты, мышь, клавиатура, монитор, видеоадаптер.

Общий вид секции такой:

Section "имя-секции"
  данные
  ...
EndSection

Внутри секций могут быть подсекции -- они заключаются в "скобки" SubSection/EndSubsection.

Большинство настроек одинаково для всех видеоадаптеров, но параметры, относящиеся непосредственно к видеоадаптеру (секция "Device") зависят от конкретной видеокарты.

Стандартный файл XF86Config буквально напичкан комментариями, кроме того, стоит посмотреть man-страницу XF86Config(5) (именно "XF86Config", а не "xf86config"!), а при настройке параметров непосредственно видеоадаптера -- man-страницу по своему X-серверу.

Предупреждение
Неправильное изменение настроек видеоадаптера и монитора может привести к выходу монитора из строя!

Некоторые секции файла конфигурации

Основные секции файла XF86Config
СекцияНастраиваемая подсистема
Files Пути -- в основном директории со шрифтами
KeyboardКлавиатура
Pointer Мышь или иное указательное устройство
Monitor Монитор
Device Видеоадаптер
Screen Экран -- разрешение и глубина цвета

Секция "Files"


Здесь определяется местоположение файла со списком цветов (директива RgbPath) и содержится список директорий, из которых X-сервер должен брать шрифты (директивы FontPath).

Порядок директив FontPath имеет значение -- при подборе шрифтов по шаблонам (и по псевдонимам) они будут искаться именно в указанном порядке. Таким образом, если поставить директорию со шрифтами koi8 в начало списка, то во многих случаях вместо европейских будут использоваться русские шрифты.

Секция "Keyboard"


Здесь настраивается поведение клавиатуры -- действие клавиш <Alt>, <Ctrl> и <ScrollLock> и параметры расширения Xkb. Подробнее см. раздел "Русификация".

Секция "Pointer"


В этой секции настраиваются параметры мыши -- тип устройства, эмуляция трех кнопок.

Обычно здесь все корректно настраивается при установке системы и менять ничего не нужно.

Секция "Monitor"


Здесь указывается "тип" монитора и его параметры. "Тип" -- это просто название (которое в принципе может быть произвольным), на которое ссылается секция "Screen", он указывается в директиве Identifier.

Указываемые параметры -- диапазоны частот горизонтальной (HorizSync) и вертикальной (VertRefresh) развертки, а также список поддерживаемых видеорежимов (директивы ModeLine, имеющиеся в большом количестве).

Диапазоны частот следует посмотреть в документации на монитор.

Имеющиеся в стандартном файле директивы ModeLine покрывают большую часть мониторов. При сканировании этих директив X-сервер выбирает из видеорежимов с одинаковым именем (например, "800x600") тот, который дает наибольшую кадровую частоту (естественно, при этом учитываются только те видеорежимы, которые совместимы с параметрами монитора и видеоадаптера). Поэтому автоматически выбирается наилучший видеорежим.

При использовании нестандартного монитора, или в случае, когда стандартная конфигурация не использует всех возможностей монитора, можно заглянуть в файл-базу данных по мониторам

/usr/X11R6/lib/X11/doc/Monitors

Секций "Monitor" может быть несколько -- используется та из них, которая указана в секции "Screen".

Секция "Device"


В этой секции указываются параметры видеоадаптера. Обычно большую часть параметров X-сервер определяет сам, считывая их непосредственно из видеоадаптера. Поэтому чаще всего можно (и лучше всего!) все оставить как есть.

В случае же, когда требуется изменить какие-либо настройки, следует посмотреть man-страницу по используемому X-серверу. Чтобы узнать, какой X-сервер используется, надо посмотреть, куда указывает символьный линк /etc/X11/X:

bobby:~# ls -l /etc/X11/X
lrwxrwxrwx   1 root     root           29 Dec  9 21:02 /etc/X11/X ->
../../usr/X11R6/bin/XF86_SVGA

В данном примере X-сервер называется XF86_SVGA, и, следовательно, его описание находится в одноименной man-странице.

Названия всех X-серверов начинаются на "XF86_". В приведенной ниже таблице перечислены наиболее часто использующиеся из них.

Некоторые X-серверы
X-серверТип видеоадаптера
XF86_S3 На основе чипа S3 (кроме S3Virge).
XF86_S3V S3 Virge.
XF86_VGA16 Стандартный 16-цветный VGA -- работает с любыми VGA-совместимыми адаптерами.
XF86_Mono Монохромный -- работает с любыми видеоадаптерами.
XF86_Mach32На основе чипа ATI Mach32.
XF86_Mach64На основе чипа ATI Mach64 (в том числе многие адаптеры от ASUS).
XF86_i740 На основе чипа Intel i740 (в том числе последние модели от ASUS, в названии которых присутствует "740").
XF86_SVGA Большая часть остальных SVGA-совместимых адаптеров -- в том числе Cirrus Logic, Diamond, Matrox, Riva TNT, SiS, Trident и многие другие.
Этот X-сервер может работать практически с любым SVGA-адаптером, включая S3, S3Virge и ATI.

Практически для всех современных видеоадаптеров можно добавить параметр "power_saver", чтобы X-сервер автоматически отключал монитор при долгом бездействии.

Пример секции "Device" (видеоадаптер Matrox Millenium II; выделен текст, добавленный после инсталляции):

Section "Device"
    Identifier  "My Video Card"
    VendorName  "Unknown"
    BoardName   "Unknown"
    Option      "power_saver"
    #VideoRam    4096
    # Insert Clocks lines here if appropriate
EndSection

В директиве Identifier указывается "имя" данной секции -- на которое затем будет ссылаться секция "Screen".

Секций "Device" может быть несколько -- используется та из них, которая указана в секции "Screen".

Секция "Screen"


Здесь указывается, какую конфигурацию видеоадаптера и какой монитор следует использовать, а также параметры видеорежимов -- разрешение и глубина цвета.

Пример секции "Screen":

# The Colour SVGA server

Section "Screen"
    Driver      "svga"
    # Use Device "Generic VGA" for Standard VGA 320x200x256
    #Device      "Generic VGA"
    Device      "My Video Card"
    Monitor     "ViewSonic PT775"
    DefaultColorDepth 32
    Subsection "Display"
        Depth       8
        # Omit the Modes line for the "Generic VGA" device
        Modes       "800x600" "640x480"
        ViewPort    0 0
        # Use Virtual 320 200 for Generic VGA
        Virtual     800 600
    EndSubsection
    Subsection "Display"
        Depth       16
        Modes       "1600x1200" "1152x864" "1024x768" "800x600" "640x480"
        ViewPort    0 0
        Virtual     1600 1200
    EndSubsection
    Subsection "Display"
        Depth       32
        Modes       "1152x864" "1024x768" "800x600" "640x480"
        ViewPort    0 0
        Virtual     1152 864
    EndSubsection
EndSection

Секция "Screen" всегда содержит директивы Driver, Device, Monitor, DefaultColorDepth и одну или несколько подсекций "Display", отличающихся глубиной цвета.

В директиве Driver указывается, для какого X-сервера предназначена эта секция (секций "Screen" может быть несколько, что позволяет использовать один файл XF86Config с разными концигурациями аппаратуры). Для XF86_Mono используется вариант "vga2", для XF86_VGA16 -- "vga16", для XF86_SVGA -- "svga", а для остальных X-серверов (XF86_S3, XF86_Mach64 и т.д.), т.н. "ускоренных" (accelerated) -- "accel".

Директивы Device и Monitor указывают, данные из каких секций "Device" и "Monitor" следует использовать.

Необязательная директива DefaultColorDepth позволяет установить глубину цвета, которую X-сервер будет устанавливать по умолчанию (если ему в командной строке не указан параметр "-bpp"). Если DefaultColorDepth отсутствует, то используется 8бит/пиксел (конечно, XF86_Mono и XF86_VGA16 всегда используют 1 и 4бита/пиксел соответственно).

В подсекциях "Display" указывается список видеорежимов, которые следует использовать для указанной глубины цвета. В директиве Modes указываются просто имена видеорежимов из секции "Monitor". Хотя видеорежимы могут носить произвольные имена (хоть "WinnieThePooh"), для удобства принято называть их "ШИРИНАxВЫСОТА".

Порядок имен имеет значение -- при запуске X-сервер включает самый первый режим, а переключаться на остальные можно при помощи клавиш <Alt+Ctrl+Правый[+]> и <Alt+Ctrl+Правый[-]>. Поскольку работать чаще всего нужно в самом высоком разрешении, а на мешьшие переключаться для того, чтобы "рассмотреть детали", то следует располагать режимы по уменьшению. Инсталлятор же при установке системы упорядочивает список по увеличению, поэтому сразу после инсталляции этот список надо "перевернуть".


<< Предыдущий раздел | /\ Содержание | >> Следующий раздел