В начало → Gentoo и  X.Org
Gentoo-doc HOME В началоСлед.: Описание настройки МОДУЛЬНОГО X-сервера версий 7.X (Англ.)

Gentoo и  X.Org


1. Описание настройки МОНОЛИТНОГО X-сервера версий 6.X
2. Описание настройки МОДУЛЬНОГО X-сервера версий 7.X (Англ.)
3. XkbOptions
4. HOWTO Xorg and Fonts (Рус.)
5. Руководство по видеокартам nVidia в Gentoo Linux
6. Распространенные вопросы об ATI в Gentoo Linux

1. Описание настройки МОНОЛИТНОГО X-сервера версий 6.X

Ссылка на оригинал: http://www.gentoo.org/doc/ru/xorg-config.xml

Дата: 13.06.07

С версии: 1.0

1.1. Что такое X Window Server?

1.1.1. Графический интерфейс против командной строки

Обычного пользователя могут испугать мысли о необходимости печатать в командной строке. Почему бы ему не прокладывать свой путь на территории свободы выбора Gentoo (и Linux вообще), просто «водя мышкой»? Ну, *большая улыбка*, конечно, вы сможете это сделать :-). В Linux предлагается широкое разнообразие пользовательских интерфейсов и сред, которые можно установить поверх установленной у вас системы.

Это один из самых больших сюрпризов, с которым сталкиваются новички: графический интерфейс пользователя — это всего лишь прикладная программа, выполняемая в системе. Он не является частью ядра Linux или каких-либо других компонентов системы. Это — мощный инструмент, позволяющий полностью задействовать графические возможности вашего компьютера.

Так как стандартизация очень важна, для организации прорисовки и перемещения окон по экрану, взаимодействия пользователя с мышью и клавиатурой, а также других важных базовых аспектов, был создан стандарт под названием X Window System, сокращённо X11 или просто X. Он используется в Unix, Linux и других Unix-подобных операционных системах во всем мире.

Приложение, которое дает пользователям Linux возможность запускать графические интерфейсы пользователя и использует стандарт X11, называется Xorg-X11, ответвление проекта XFree86. Проектом XFree86 было решено использовать лицензию, возможно, несовместимую с лицензией GPL, поэтому рекомендуется использовать Xorg. Пакет XFree86 больше не поддерживается в официальном дереве портежей.

1.1.2. Проект X.org

Проектом X.org создана и поддерживается бесплатно распространяемая реализация системы X11 с открытым исходным кодом. Это открытая инфраструктура рабочей станции, основанная на X11.

Xorg обеспечивает интерфейс между устройствами вашего компьютера и нужными вам графическими программами. Кроме того, Xorg является полностью сетевым, то есть вы можете запускать программу на одной системе, а отображать её — на другой.

1.2. Установка Xorg

1.2.1. Использование emerge

Хватит болтовни, не перейти ли нам к делу? Чтобы установить Xorg, вам просто нужно запустить emerge xorg-x11. Установка Xorg займёт достаточно времени, так что вы можете перекусить, дожидаясь ее завершения.

Перед тем, как установить Xorg, в файле /etc/make.conf вам понадобится настроить две очень важные переменные.

Первая из них — VIDEO_CARDS, которая используется для выбора драйвера для используемой вами видеокарты, и связана с ее типом и маркой. Одним из распространенных значений является nvidia для карт nVidia или fglrx для карт ATI Radeon. Это — закрытые драйверы, предоставленные nVidia и ATI. Если вы хотите использовать версии с отрытым исходным кодом, используйте nv вместо nvidia, но помните, эта версия не обеспечивает 3D-ускорение. Аналогично, используйте radeon для видеокарт от ATI. В VIDEO_CARDS можно указывать несколько драйверов, разделенных пробелами.

Вторая переменная, INPUT_DEVICES, используется для указания драйверов устройств ввода. В большинстве случаев связки keyboard mouse достаточно.

Теперь нужно решить, какие драйверы использовать, и добавить нужные параметры в файл /etc/make.conf:

Листинг 1. Пример строк в make.conf

(для поддержки мыши и клавиатуры)
INPUT_DEVICES="keyboard mouse"
(для видеокарт nVidia)
VIDEO_CARDS="nvidia"
(ИЛИ для видеокарт ATI Radeon)
VIDEO_CARDS="fglrx"


Дополнительные сведения по настройке карт nVidia и ATI находятся в руководстве по видеокартам nVidia в Gentoo Linux и Gentoo Linux ATI FAQ. Если вы не знаете, какие драйверы выбрать, ознакомьтесь с этими руководствами.

Примечание

Если у вас рекомендуемые настройки не работают, следует запустить emerge -pv xorg-x11, проверить все доступные параметры и указать соответствующие вашей системе. Для различных версий Xorg на различных архитектурах эти переменные могут выводиться командой emerge -pv xorg-server вместо приведенной выше. Например, для архитектуры x86 и xorg-x11-7.0:

Листинг 2. Просмотр всех доступных параметров драйверов

# emerge -pv xorg-x11
                        
These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R   ] x11-base/xorg-x11-7.0-r1  USE="-3dfx" INPUT_DEVICES="keyboard
mouse -acecad -aiptek -calcomp -citron -digitaledge -dmc -dynapro -elo2300
-elographics -evdev -fpit -hyperpen -jamstudio -joystick -magellan -magictouch
-microtouch -mutouch -palmax -penmount -spaceorb -summa -synaptics -tek4957
-ur98 -vmmouse -void -wacom" VIDEO_CARDS="nvidia -apm -ark -chips -cirrus -cyrix
-dummy -fbdev -fglrx -glint -i128 -i740 -i810 -imstt -mach64 -mga -neomagic -nsc
-nv -r128 -radeon -rendition -s3 -s3virge -savage -siliconmotion -sis -sisusb
-tdfx -tga -trident -tseng -v4l -vesa -vga -via -vmware -voodoo" 0 kB


После установки всех необходимых переменных можно перейти к установке пакета Xorg.

Листинг 3. Установка Xorg

# emerge xorg-x11


После завершения установки, чтобы продолжить, вам наверняка придётся обновить некоторые переменные среды. Для установки значений просто запустите env-update, а затем — source /etc/profile.

Листинг 4. Обновление переменных среды

# env-update
# source /etc/profile


1.3. Настройка Xorg

1.3.1. Файл xorg.conf

Конфигурационный файл Xorg называется xorg.conf и находится в папке /etc/X11. В пакет Xorg-X11 входит его пример под названием /etc/X11/xorg.conf.example, который можно использовать при создании своей собственной конфигурации. Он подробно прокомментирован, но если вы нуждаетесь в подробном описании синтаксиса, не стесняйтесь обратиться к страницам справки:

Листинг 5. Чтение страницы справки xorg.conf

# man 5 xorg.conf


Счастливого чтения всем желающим. Мы, конечно же, не из их числа, поэтому перейдем к выяснению, как можно создать файл автоматически.

1.3.2. По умолчанию: автоматическая генерация xorg.conf

Xorg способен самостоятельно подобрать большинство параметров за вас. Скорее всего, вам потребуется всего лишь изменить несколько строк, чтобы установить желаемое разрешение экрана. Если вы заинтересованы в более глубокой настройке, обязательно просмотрите ресурсы, указанные в конце этой главы. Но сначала давайте создадим (надеемся, работающий) конфигурационный файл Xorg.

Листинг 6. Генерация файла xorg.conf

# Xorg -configure


Обязательно прочтите последние строки, выводимые после завершения опроса оборудования Xorg. Если вы увидите, что где-то Xorg не удалось правильно опознать устройства, то вам придётся править файл xorg.conf вручную. Если же всё прошло гладко, Xorg должен сообщить вам, что создан файл и готов для тестирования файл /root/xorg.conf.new. Давайте его испытаем :)

Листинг 7. Тестирование файла xorg.conf.new

# X -config /root/xorg.conf.new


Если всё в порядке, вы увидите чёрно-белый узор. Проверьте, работает ли мышь, и подходит ли разрешение экрана. Вы вряд ли точно угадаете разрешение, но всё же заметите слишком низкое. Выйти можно в любой момент, нажав комбинацию клавиш Ctrl+Alt+Backspace.

1.3.3. Альтернатива: полуавтоматическая генерация xorg.conf

В Xorg есть утилита xorgconfig, задающая различные вопросы о вашей системе (о графическом адаптере, клавиатуре и т.п.). Основываясь на ваших ответах, она создаст файл xorg.conf.

Листинг 8. Полуавтоматическая генерация xorg.conf

# xorgconfig


Другая утилита, также входящая в пакет Xorg — xorgcfg, которая сначала пытается выполнить Xorg -configure, а затем запускает X-сервер для более тонкой настройки.

Листинг 9. Использование xorgcfg

# xorgcfg
(если X даст сбой, или настройка завершится неудачей, попробуйте:)
# xorgcfg -textmode


1.3.4. Копирование в xorg.conf

Теперь давайте скопируем xorg.conf.new в /etc/X11/xorg.conf, чтобы не приходилось постоянно запускать Xorg -config: набирать просто X или startx гораздо легче :)

Листинг 10. Копирование поверх xorg.conf

# cp /root/xorg.conf.new /etc/X11/xorg.conf


1.3.5. Использование startx

Теперь попробуйте ввести startx, чтобы запустить свой X-сервер. startx — это сценарий, запускающий сеанс X, то есть серверы X, а поверх них — некоторые графические приложения. Он решает, какие приложения запустить, исходя из следующей логики:

  • если в домашнем каталоге есть файл с именем .xinitrc, то выполняются команды, перечисленные в нём

  • в противном случае считывается значение переменной XSESSION и запускается один из указанных в /etc/X11/Sessions/ сеансов (указать значение XSESSION по умолчанию, для всех пользователей системы, можно в файле /etc/rc.conf)

  • если вышеуказанное завершилось неудачей, производится откат к простейшему диспетчеру окон, обычно twm.

Листинг 11. Запуск X

# startx


Если вы увидели уродливый, отвратительный, омерзительный, безобразный диспетчер окон, то это — twm. Чтобы завершить сеанс twm, наберите exit или нажмите Ctrl+D в одном из терминалов xterm. «убить» сеанс X также можно, нажав комбинацию клавиш Ctrl+Alt+Backspace, чтобы «выгнать его с позором» — наверно, такой вариант годится не всегда. Хотя это не причинит тяжёлого вреда :)

1.4. Настройка xorg.conf

1.4.1. Установка разрешения экрана

Если вы чувствуете, что разрешение экрана неподходящее, вам потребуется проверить два раздела конфигурации. Прежде всего, разделе Screen, где перечисляются варианты разрешения экрана, с которыми может запускаться X-сервер. По умолчанию в этом разделе может вообще не быть никаких строк о разрешении экрана. В таком случае Xorg оценивает допустимое разрешение на основе данных из другого раздела: Monitor.

При этом Xorg для вычисления правильных вариантов разрешения использует значения HorizSync (частота строк) и VertRefresh (частота кадров) из раздела Monitor. Пока что оставьте эти параметры как есть. Лишь в том случае, когда изменения в разделе Screen (которые мы опишем чуть ниже) не помогают, вам придется заглянуть в технические характеристики своего монитора и указать правильные значения. Также можно воспользоваться программой, определяющей технические характеристики вашего монитора, например, sys-apps/ddcxinfo-knoppix.

Внимание

Не меняйте «просто так» значения этих двух относящихся к монитору переменных, не сверившись с техническими характеристиками своего монитора. Неправильные значения могут привести в лучшем случае к срыву синхронизации, а в худшем случае — к сгоревшему монитору.

Теперь давайте поменяем значения разрешения. В следующем примере, взятом из /etc/X11/xorg.conf, мы добавим строчки Modes (режимы) и DefaultDepth (цветность), чтобы X-сервер по умолчанию запускался в режиме 24 бит при 1024x768 разрешении экрана. Особо не обращайте внимания на значения — это просто пример и, скорее всего, они будут отличаться от настроек вашей системы.

Листинг 12. Изменение раздела Screen /etc/X11/xorg.conf

Section "Screen"
  Identifier  "Default Screen"
  Device    "S3 Inc. ProSavage KN133 [Twister K]"
  Monitor   "Generic Monitor"
  DefaultDepth  24
  # несколько строк пропущены для наглядности
  SubSection "Display"
    Depth   24
    Modes   "1024x768"
  EndSubSection
EndSection


Запустите X (startx), чтобы обнаружить, что сервер использует желаемое разрешение :)

1.4.2. Настройка клавиатуры

Чтобы настроить X на использование национальных раскладок, найдите раздел InputDevice (устройство ввода), определяющий настройки клавиатуры, и добавьте параметр XkbLayout с указанием необходимой раскладки. Для примера, покажем, как добавить бельгийскую раскладку. Просто измените код страны на свой:

Листинг 13. Changing the keyboard layout

Section "InputDevice"
  Identifier  "Generic Keyboard"
  Driver    "keyboard"
  Option    "CoreKeyboard"
  Option    "XkbRules"  "xorg"
  Option    "XkbModel"  "pc105"
  Option    "XkbLayout" "be"
EndSection


1.4.3. Настройка мыши

Если ваша мышь не работает, сначала придётся выяснить, обнаружена ли она вообще ядром. Мыши (в качестве устройств) выглядят как /dev/input/mouse0 (или /dev/input/mice, если вы хотите использовать несколько мышек). В некоторых случаях используется название /dev/psaux. В любом случае, вы можете убедиться, что устройство соответствует вашей мыши, просмотрев вывод соответствующего файла устройства, одновременно передвигая мышь. В большинстве случаев на экране должна появиться бессмыслица. Для остановки вывода нажимайте Ctrl+C.

Листинг 14. Проверка файла устройства

# cat /dev/input/mouse0
(не забудьте нажать Ctrl-C для завершения)


Если ваша мышь не обнаружена, проверьте, все ли необходимые модули загружены.

Если же ваша мышь найдена, впишите устройства в соответствующий раздел InputDevice. В следующем примере видно, как мы устанавливаем еще два параметра: Protocol (определяет протокол, используемый мышью; у большинства пользователей — PS/2 или IMPS/2) и ZAxisMapping (позволяющий задействовать колесико, если есть).

Листинг 15. Изменение настройки мыши в Xorg

Section "InputDevice"
  Identifier  "TouchPad Mouse"
  Driver    "mouse"
  Option    "CorePointer"
  Option    "Device"    "/dev/input/mouse0"
  Option    "Protocol"    "IMPS/2"
  Option    "ZAxisMapping"    "4 5"
EndSection


Запустите startx и порадуйтесь результату :). Поздравляем, теперь (надеемся) у вас есть работающий Xorg. Следующий шаг — удалить этот ужасный облегченный диспетчер окон, и использовать «нафаршированный» возможностями диспетчер окон (или даже рабочую среду), такой как KDE или GNOME, но это не входит в рамки данного руководства :)

1.5. Ресурсы

1.5.1. Создание и детальная настройка xorg.conf

Прежде всего, в man 5 xorg.conf дается краткое, но полное описание синтаксиса конфигурационного файла. Обязательно держите эту страницу открытой в соседнем терминале при редактировании своего конфигурационного файла!

Второй источник информации на вашей системе — каталог /usr/X11R6/lib/X11/doc, где находятся различные описания README для конкретных графических чипсетов.

В сети также есть много сведений о настройке xorg.conf. Мы перечислим лишь некоторые из них; обязательно погуглите, чтобы найти другие :). Так как в большинстве параметров xorg.conf и XF86Config (конфигурационного файла для XFree86) используется одинаковый синтаксис, а информации о XFree86 больше, мы ссылаемся и на такие ресурсы.

1.5.2. Другие источники

Если вы хотите обновить свою систему со старым монолитным Xorg на новый модульный Xorg 7, прочтите руководство по переходу на модульный X (англ.).

Дальнейшая информация по настройке различных пакетов, для работы в среде X находится в разделе графическая среда Gentoo нашей документации.

В началоСлед.: Описание настройки МОДУЛЬНОГО X-сервера версий 7.X (Англ.)
В начало → Gentoo и  X.Org