Наши партнеры








Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

На главную -> MyLDP -> Электронные книги по ОС Linux
Beyond Linux From Scratch. Version 2011-12-30
Назад 23. Среда системы X Window Вперед

Тестирование и конфигурирование среды Xorg-7.6-2

Тестирование среды Xorg

Чтобы проверить установленный вариант Xorg, выполните команду startx. Эта команда вызывает рудиментарный оконный менеджер, который называется twm и меет три окна xterm и одно окно xclock. Окно xterm, расположенное в верхнем левом углу, является окном входа в терминал и при выходе из этого терминнала происходит завершение сессии X Window. Третье окно xterm может в вашей системе быть заслонено двумя другими окнами xterms.

Обычно для Xorg не нужно выпольнять какого-либо конкретного конфигурирования, но можно выполнить дополнительную настройку. Подробности смотрите в разделе "Настройка устройств Xorg", приведенном ниже.

Создание символической ссылки для совместимости с X11R6

До недавнего времени (относительно времени написания книги) почти в каждом случае для установки X Window использовался директорий /usr/X11R6. Это было стандартом в течение многих лет. Разработчики приняли это во внимание и писали свои скрипты установки пакетов так, что в них выполняется поиск стандартного места размещения Х. Ситуация изменилась и в настоящее время есть тенденция устанавливать систему X в директорий /usr. Некоторые хотят устанавливать его в другое место.

Многие разработчики пакетов не учитывают изменения и их пакеты по-прежнему пытаются найти директорий /usr/X11R6 и когда вы пытаетесь собрать пакет, как следствие, возникает проблема. Хотя в большинстве пакетов легко 'взломать' инсталляционный скрипт и решить эту проблему, такой подход не является долгосрочным решением проблемы. Разработчики, идущие в ногу с тенденциями, должны изменить свои инсталляционные скрипты и устранить проблему в целом.

А до этого момента вы можете создать символическую ссылку с тем, чтобы выполнить требование наличия директория /usr/X11R6 и не столкнуться из-за этой проблемы с остановкой сборки пакета. Если вы хотите создать символическую ссылку, то в роли пользователя root введите следующую команду (не забудьте соответствующим образом изменить переменную <$XORG_PREFIX>):

ln -vsf <$XORG_PREFIX> /usr/X11R6

Протокол шрифтов Xft

В Xft рендеринг шрифтов осуществляется с помощью модуля Freetype, что обеспечивает сглаживание шрифтов, а управление шрифтами осуществляется с помощью клиентской программы Fontconfig. По умолчанию в качестве путей поиска используются пути /usr/share/fonts и ~/.fonts. Fontconfig ищет директории рекурсивно и в каждом директории создает кэш шрифтов в файлах fonts.cache-1. Если оказывается, что кэш устарел, он игнорируется, и информация (медленно) извлекается из самих шрифтов. Кэш можно в любое время перегенерировать с помощью команды fc-cache. Если Вы выполните команду fc-list, то вы можете увидеть список шрифтов, известных в Fontconfig.

Место, где устанавливаются шрифты X fonts, в Fontconfig неизвестно. Поэтому Fontconfig не использует плохо отображаемые шрифты Type 1 или немасштабируемые растровые шрифты. Из директориев, в которых расположены шрифты Х OTF и TTF, создаются символические ссылки в директорий /usr/share/fonts/X11-{OTF,TTF}. В результате Fontconfig может использовать шрифты OpenType и TrueType, предоставляемые системой X (которые масштабируемы и имеют более высокое качество).

В Fontconfig для определения шрифтов использует имена, например, "Monospace 12" ("Моноширинный 12"). В приложениях обычно используют названия семейств шрифтов, например, "Monospace", "Sans" и "Serif". Fontconfig использует эти имена для выбора шрифта, в котором есть все символы, соответствующие орфографии языка, указанного в настройках локали. Названия этих шрифтов перечислены в файле /etc/fonts/fonts.conf. Шрифты, которые не указаны в этом файле, все равно могут использоваться в Fontconfig, но они не будут доступны по именам семейств шрифтов.

Стандартные масштабируемые шрифты, которые поставляются вместе с X, очень слабо охватывают все необходимые кодировки Unicode. Вы можете заметить, что в приложениях, использующих Xft, некоторые символы отображаются в виде прямоугольника с четырьмя двоичными цифрами внутри. Это тот случай, когда не был найден набор шрифтов с необходимыми символами. В других случаях, приложения, в которых по умолчанию нельзя использовать другие семейства шрифтов и которые не допускают использование замены, предлагаемой в Fontconfig, в случае, если шрифт, используемый по умолчанию, не простирается на орфографию языка пользователя, будут отображать пустые строки. Это происходит, например, в Fluxbox с локалью ru_RU.KOI8-R.

Чтобы охватить максимально большое количество кодировок, рекомендуется установить следующие шрифты:

  • Шрифты DejaVu - Эти шрифты являются заменой шрифтов Bitstream Vera и в них предлагаются символы латиницы с надстрочными значками и символы кириллицы.
  • FreeFont - Этот набор шрифтов охватывает почти все символы, не относящиеся к символам CJK (китайского, японского и корейского языков), но визуально они выглядят не очень хорошо. При подстановке по именам семейств шрифтов этот набор будет использоваться в качестве последнего средства.
  • Базовые шрифты Microsoft - Эти шрифты охватывают кодировку Unicode несколько хуже, чем шрифты FreeFont, но у них лучшая хинтовка. Перед использованием шрифтов не забудьте прочитать лицензию. Эти шрифты по умолчанию перечисляются как алиасы в файле /etc/fonts/fonts.conf.
  • Более качественный новый шрифт Sung - Этот шрифт охватывает символы китайского языка. Этот шрифт по умолчанию не указывается как алиас в файле /etc/fonts/fonts.conf.
  • Шрифты Arphic - Набор китайских шрифтов, аналогичный более качественному новому шрифту Sung. Эти шрифты по умолчанию перечисляются как алиасы в файле /etc/fonts/fonts.conf.
  • Шрифты Kochi — В них предлагаются японские иероглифы и, по умолчанию, они перечисляются как алиасы в файле /etc/fonts/fonts.conf.
  • Шрифты Baekmuk - Эти шрифты корейского языка и они по умолчанию перечисляются в файле /etc/fonts/fonts.conf как алиасы.

В приведенном выше списке охвачены не все кодировки Unicode. Чтобы получить дополнительную информацию, пожалуйста, посетите страницу Руководства по шрифтам Unicode.

В качестве примера рассмотрим установку шрифтов DejaVu. В роли пользователя root выполните в распакованном директории исходных кодов следующие команды:

install -v -d -m755 /usr/share/fonts/dejavu &&
install -v -m644 *.ttf /usr/share/fonts/dejavu &&
fc-cache -v /usr/share/fonts/dejavu

Настройка устройств Xorg

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

Настройка устройств X ввода данных

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

Ниже приведен пример настройки XKB, используенмый по умолчанию (скрипт следует выполнять в роли пользователя root):

cat > /etc/X11/xorg.conf.d/xkb-defaults.conf << "EOF"
Section "InputClass"
    Identifier "XKB Defaults"
    MatchIsKeyboard "yes"
    Option "XkbOptions" "terminate:ctrl_alt_bksp"
EOF

Точная настройка дисплеев

Опять же в случае использования современного Xorg дополнительные настройки будут незначительные, либо их вообще не потребуется. Если вам, например, потребуется в драйвер передать дополнительные параметры, то следует использовать что-то вроде следующего (опять-таки, скрипт следует выполнять в роли пользователя root):

cat > /etc/X11/xorg.conf.d/videocard-0.conf << "EOF"
Section "Device"
    Identifier  "Videocard0"
    Driver      "radeon"
    VendorName  "Videocard vendor"
    BoardName   "ATI Radeon 7500"
    Option      "NoAccel" "true"
EndSection
EOF

Другой распространенный случай настройки состоит в использовании на сервере нескольких варианнов настройки, предназначенных для различных конкретных случаев. Хотя сервер автоматически определяет наличие другого монитора, он может этот делать неверно:

cat > /etc/X11/xorg.conf.d/server-layout.conf << "EOF"
Section "ServerLayout"
    Identifier     "DefaultLayout"
    Screen      0  "Screen0" 0 0
    Screen      1  "Screen1" LeftOf "Screen0"
    Option         "Xinerama"
EndSection
EOF

Перевод сделан с варианта оригинала, датированного 2011-12-12 00:31:25 +0000


Предыдущий раздел: Оглавление Следующий раздел:
Пакет xterm-276   Глава 24