Администрирование Linux

СОДЕРЖАНИЕ

1. Базовые концепции X Window……………………………………………………..3 стр

2. Компоненты системы X Window…………………………………………………...3 стр

3. Предварительное конфигурирование……………………………………………..3 стр

3.1 Старт X Window…………………………………………………………………..4 стр

3.2 X ресурсы………………………………………………………………………….4 стр

3.3 Менеджер ресурсов xrdb…………………………………………………………4 стр

4. Имена и классы клиентов…………………………………………………………..4 стр

5. Имена и классы ресурсов……………………………………………………………5 стр

6. Типы ресурсов………………………………………………………………………...5 стр

7. Управление шрифтами……………………………………………………………...5 стр

7.1 Настройка путей поиска шрифтов. Команда xset……………………………5 стр

7.2 Получение списка шрифтов доступных в системе. Команда xlsfont……...6 стр

7.3 Использование Font сервера……………………………………………………6 стр

7.4 Описание шрифтов. XLFD формат……………………………………………6 стр

7.5 XLFD синтаксис………………………………………………………………… 7 стр

7.6 Файл font.alias……………………………………………………………………7 стр

7.7 Администрирование растровых шрифтов…………………………………...7 стр

7.8 Компилирование .BDF шрифтов в .PCF шрифты…………………………..8 стр


1. Базовые концепции X Window

В HP-UX 10.20 X server это программа которая стартует автоматически после старта системы непосредственно перед тем как будет запущено окно логина. Она захватывает управление графическим дисплеем, клавиатурой и мышью и все дальнейшее взаимодействия между программами и этими устройствами происходит с участием Х сервера.

Х клиент – это программа которая написана для взаимодействия с Х сервером. Учитывая сетевые возможности сисметы Х Window клиент и сервер могут быть физически разнесены и общаться через сеть.

Несмотря на то что Х сервер использует мультизадачные свойства ОС в заданный интервал времени только одно графическое окно может обрабатывать пользовательский ввод, это окно называется активным.


2. Компоненты системы X Window

Среди компонент системы можно в первую очередь выделить:


  • Компьютерное оборудование

  • Операционную систему

  • Х сервер обеспечивающий взвимодействие меджу клиентами и дисплеем

  • Клиентские программы которые включают


  • Оконный менеджер для управления поведением окон

  • И непосредственно прикладные программы


В системе X Window очень часто употребительным термином является термин “дисплей”. Чтобы не путать его с монитором (телевизор к которому подкючается компьютер) раскроем его смысл. Дисплей это принципиально устройство вывода информации. Дисплей – это логическое понятие и один дисплей может включать в себя несколько физических мониторов.

Экран это графическое битмап устройство которое после старта Х сервера становиться корневым окном. Оно содержит все остальные окна и прочие визуальные элементы. Одним из вспомагательных но необязательных элементов системы X Window является Font Server, позволяющий передавать по сети шрифты на Х сервера.


3. Предварительное конфигурирование


Для работы в системе X Window прежде всего необходимо наличие переменной окружения DISPLAY, файла /etc/X0.host (в системах X11R4/R5) а также работу механизма резолвинга хостов (файл /etc/hosts и/или DNS и/или NIS). Переменная окружения DISPLAY устанавливается в соответствии с правилом:


export DISPLAY=Host:Display.Screen


Файлы /etc/Xn.hosts представляют собой текстовые файлы содержащие имена хостов которым разрешено подключаться к Х серверу с номером n (запускаемым как /usr/bin/X11/X :n). При попытке подсоединения к Х серверу n необходимо в качестве номера screen в переменной окружения DISPLAY использовать n. Конфигурация X серверов храниться в файлах Xnscreens которые соответствуют файлам /etc/Xn.hosts. При не настроенном механизме резолвинга хостов или в случае сетевых проблем возможно возникновение проблем или задержек в работе X Window. Для контроля доступа к Х серверу используется программа xhost.


xhost + разрешает установку соединения с любым клиентом

xhost - запрещает установку соединения со всеми клиентом

xhost +hostname разрешает установку соединения от хоста host

xhost -hostname запрещает установку соединения от хоста host




Система X Window использует следующие конфигурационные файлы:


.Xdefaults файл содержит ресурсы общие для всех программ


.x11start файл содержит список клиентов вызывающихся при старте X11


.mwmrc файл определяющий настройки оконного менеджера Motif.


.app-defaults/* индивидуалные настройки клиентов


Если HOME каталог не содердит этих файлов их можно скопировать из системных файлов:


cp /usr/lib/X11/sys.Xdefaults ~/.mwmrc

cp /usr/lib/X11/sys.Xdefaults ~/.Xdefaults


Х сервер вначале ищет файлы в HOME каталоге и лишь не нашев их переходит к системным. По умолчанию конфигурация Х сервера хранится в файле /etc/X11/X*screens. В нем определяются такие параметры как файл устройства, апаратно независимые параметры, глубина цвета, прозрачность окон, а также апаратно зависимые параметры. Полное описание всех параметров можно получить из файла


/usr/lib/X11/Xserver/info/screen/hp


Конфигурациооный файл для устройств ввода Х сервера имеет имя /etc/X11/X*devices.


    1. Старт X Window


Для старта системы X Window нужно запустить команду x11start. Он стартует программу xinit которая запускает Х сервер и клиентов а также оконный менеджер в зависимости от конфигурационного файла .x11start.


    1. X ресурсы


Ресурсы определяют поведение программ (геометрия, цвета, шрифты, поведение клавиатуры, ….). Существует несколько способов позволяющих их изменять:


  • Опции командной строки

  • .Xdefaults файл

  • загрузка ресурсов через менеджер ресурсов

  • application resource файлы (app-delaults файлы)


3.3 Менеджер ресурсов xrdb


xrdb [option] filename


основные опции:


-load ресурсы загружаемые из файла перезаписывают сущестивующие


-merge ресурсы загружаемые из файла обьеденяются с сущестивующими


-remove ресурсы указаные в файле удаляются из собственности менеджера

ресурсов.

-edit поместить ресурсы собственности менеджера в файл


Для задания ресурсов используют строку вида:


[client_name] * resource: value

или

[client_сlass] * resource: value


Имена и классы клиентов


Каждый Х клиент имеет имя и класс. Имя определяет специфического клиента а класс категорию клиента. Ресурсы определенные через имя клиента имеют больший приоритет перед теми что определены через класс клиента. Для лучшего понимания ресурсы определенные через класс пишуться с большорй буквы. Назначить имя клиенту можно при его старте:


xtermname myTerminal


чтобы получить к ним доступ достаточно загрузить в ресурс менеджер следующие строки:


Xterm.name: myTerminal

MyTerminal*background: green


Имена и классы ресурсов


Ресурсы как и классы имеют имена и классы. Индивидуальные пишутся с маленькой буквы. Ресурс класса всегда ссылается на класс ресурсов. Поэтому если ресурс *background: red сделает все тоновые цвета красными, то *Background: red сделает красными те ресурсы которые принадлежат к классу Background к которым могут принадлежать cursorColor, pointerColor Индивидуальные ресурсы всегда имеют приоритет перед ресурсами классов. Это демонстрирует следующий пример ресурсного файла:


*Foreground: red

Xterm*Foreground: gray

Xterm*foreground: yellow

Xterm*CursorColor: green


В именах ресурсов возможно употребление символа * на первом месте. Нарример ресурс *foreground будет обозначать цвет тона всех приложений, в отличии от xterm*foreground только xterm-a.


Типы ресурсов


Помимо того что каждое приложение может использовать свои собственные ресурсы, существует огромное количество стандартизированых ресурсов. Напрример рассмотренные выше цвета которые можно задавать и в RGB представлении (соответствие между именем цвета и RGB содержится в файле /usr/X11/lib/rgb.txt). Помимо них к стандартным ресурсам относятся геометрические (width, height, column, row), шрифты (Font, FontList, FontSet) и.т.п.


Управление шрифтами


В системе X11 шрифты бывают двух видов: bitmap (растровые) шрифты и scalable typeface (векторные). Растровый шришт состоит из набора файлов в каждом из которых хранятся символы определенного размера. С растровыми шрифтами напрямую может работать Х сервер и Font сервер. Векторный шрифт перед тем как должен быть выведен на дисплей проходит серию математических обработок после которых он превращается в растровый определенного размера, начертания и.т.п. Если Х сервер желает работать с векторными шрифтами, он должен их получить от Font сервера.



7.1 Настройка путей поиска шрифтов. Команда xset.


В качества источника шрифтов для Х сервера может выступать либо директория, либо Font сервер который принимает соединения на определенный TCP порт (tcp/<hostname>:portnumber). Путь поиска может быть установлен командой xset.


xset option


где option может принимать следующие значения:


q выводит информацию о системе X11 включая fontpath


-fp source[,source …] удаляет источник с начала (-fp) или с конца (fp-) пути

fp- source [,source] поиска шрифтов


+fp source[,source …] добавляет источник к началу (+fp) или к концу (fp+) пути

fp+ source [,source] поиска шрифтов


fp= source [,source] назначает fontpath


fp default сбрасывает fontpath в значение по умолчанию


fp rehash заставляет сервер перечитать базу шрифтов (это нужно в тех

случаях когда изменялось содержимое директорий со

шрифтами)


7.2 Получение списка шрифтов доступных в системе. Команда xlsfont


xlsfont [-option]


Где option


-display host:display Х сервер с которого нужно получить листинг шрифтов


-l генерировать маленький листинг

-ll генерировать большой листинг

-lll генерировать очень большой листинг


-n количество колонок для листинга

-w ширина каждой колонки для листинга


В выводимом листинге могут быть как шрифты так и алиасы, последние имеют короткое название.


7.3 Использование Font сервера.


Фонт сервер позволяет иметь одну единственную точку с которой все Х сервера будут загружать шрифты, что существенно облегчит конфигурирование систем с большим количеством Х серверов. Кроме того как было сказано выше, если Х сервер хочет работать с векторными шрифтами – он должен это делать исключительно через фонт сервер.


Запуск фонт сервера (если он не был запущен предварительно) осуществляется командой:


/usr/X11/bin/fs –daemon –port <TCP_port>


Для того чтобы фонт сервер запускался во время старта, нужно разрешить его автостарт выполнив:


/etc/set_parms font_c-s


Конфигурационный файл фонт сервера находится в каталоге /etc/X11/fs/config . По сигналу SIGUSR1 он перечитывает свою конфигурацию.


7.4 Описание шрифтов. XLFD формат.


Стандарт Х11 предусматривает язык описания шрифтов XLFD (X Logical Font description). Согласно ему имя шрифта состоит из 15 позиций разделенных минусами:


FontNameRegistry-Foundry-FamilyName-Weightname-Slant-SetwidthName-AddStyle-Name-PixelSize-PointSize-ResolutionX-ResolutionY-Spacing-AverageWidth-CharSetRegistry-CharSetCoding


Каким именно будет результирующее имя в XLFD формате зависит от типа фонт-запроса к Х серверу. Возможные типы запросов:


Reference XLFD Этот запрос идет при выполнениии команды xlsfonts и имя

берется из файла fonts.dir . Векторные шрифты при этом имеют PixelSize и PointSize нулевыми.


Request XLFD В результате этого запроса будет получено XLFD имя

запрашиваемого шрифта или его алиас из файла font.alias. При этом поля содержащие * (обозначающие любое значение) будут заменены на ?


resolved XLFD Это уже точное имя шрифта которое выддается сервером в ответ на запрос. Все поля являются заполненными, но результат может и не совпадать с исходным запросом.


7.5 XLFD синтаксис


FontNameRegistry авторитетный источник который зарегистрировал шрифт. Обычно пустое поле


Foundry имя “оцифровщика” шрифта


FamilyName трейд-марка или коммерческое имя шрифта


WeightName[ext] относительный вес шрифта (жирность). Для векторных шрифтов может обозначать темность или светлось (параметр ext)

Slant[ext] напрвление шрифта (roman, italic, oblique, …) для векторных шрифтов параметр задает наклов в угловых единицах.

SetwithName ширина юнита (сжатый или растянутый)


AddStyleName[ext] название для уникальной идентификации шрифта (serife, cursive, …) В векторных шрифтах определят степень поворота или зеркальность шрифта.


PixelSize[ext] высота шрифта в пикселях. Для векторных шрифтов параметр указывает дополнительную растяжку по горизонтали.


PointSize[ext] размер кубика в поинтах.


ResolutionX Разрешение (горизонтальное и вертикальное) шрифта в

ResolutionY пикселях на инч. Если не указано сервер выбирает сам в зависимости от разрешения дистплея.

Spacing расстояние между юнитами в шрифте. (М – фиксированное,

Р – пропорциональное)


AverageWidth Cредняя ширина шрифта


CharacterSetRegistry имя закрепленное X консорциумом за CharacterSetEncoding


CharacterSetEncoding определяет кодировку



Файл font.dir


Этот файл находится в каталогах файлов фонтов, он создается либо при инсталяции системы либо после выполнения команды mkfontdir для растровых или stmkdirs для векторных шрифтов. Он содержит в первой строчке количество шрифтов в директории а в последующих XLFD названия шрифтов.


7.6 Файл font.alias


Этот файл так же как и font.dir содержится в каталогах шрифтов и служит для лиасинга

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


xset fp rehash


а также рестартовывать по сигналу SIGUSR1 фонт сервер.


7.7 Администрирование растровых шрифтов.


Для добавления растрового шрифта в систему нужно выполнить следующие действия:


  • Если шрифт не в .pcf формате сконвеертировать его с помощью программы bdftopcf

  • Скомпрессировать шрифт утилитой compress

  • Скопировать в нужную директорию

  • Запустить mkfontdir для модификации fonts.dir файла.

  • Если директория со шрифтами используется только Х сервером то выполнить xset fp rehash , если она используется еще и фонт сервером то рестартовывать по сигналу SIGUSR1 фонт сервер.


Для удаления растрового шрифта из системы Х11 необходимо:


  • Удалить фонт файл.

  • Запустить mkfontdir для модификации fonts.dir файла.

  • Если директория со шрифтами используется только Х сервером то выполнить xset fp rehash , если она используется еще и фонт сервером то рестартовывать по сигналу SIGUSR1 фонт сервер.


Для создания fonts.dir файла достаточно запустить mkfontdir указав ей в качестве аргумента директорию со шрифтами.


7.8 Компилирование .BDF шрифтов в .PCF шрифты.

Растровые шрифты в системе Х11 могут быть представлены в нескольких формах:


  • .pcf Переносимый бинарный формат описания шрифта

  • .pcf.Z компрессированный .pcf

  • .bdf текстовый формат

  • .bdf.Z компрессированный .bdf

  • .bcf компрессированный .bdf

  • .snf не переносимый бинарный формат шрифта (использовался до X11R5)

  • .snf.Z компрессированный .snf (использовался до X11R5)

  • .scf компрессированный .snf (использовался до X11R5)

Предпочтительным форматом для Х сервера является компрессированый .pcf.

Для конвертации .bdf в .pcf с одновременной компрессией можно воспользоваться командой:


bdftopcf font_file.bdf | compress > font_file.pcf.Z




7


Нравится материал? Поддержи автора!

Ещё документы из категории информатика:

X Код для использования на сайте:
Ширина блока px

Скопируйте этот код и вставьте себе на сайт

X

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

После чего кнопка «СКАЧАТЬ» станет доступной!

Кнопочки находятся чуть ниже. Спасибо!

Кнопки:

Скачать документ