Скачать .docx |
Реферат: Администрирование 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 Xserver это программа которая стартует автоматически после старта системы непосредственно перед тем как будет запущено окно логина. Она захватывает управление графическим дисплеем, клавиатурой и мышью и все дальнейшее взаимодействия между программами и этими устройствами происходит с участием Х сервера.
Х клиент – это программа которая написана для взаимодействия с Х сервером. Учитывая сетевые возможности сисметы Х Window клиент и сервер могут быть физически разнесены и общаться через сеть.
Несмотря на то что Х сервер использует мультизадачные свойства ОС в заданный интервал времени только одно графическое окно может обрабатывать пользовательский ввод, это окно называется активным.
2. Компоненты системы X Window
Среди компонент системы можно в первую очередь выделить:
· Компьютерное оборудование
· Операционную систему
· Х сервер обеспечивающий взвимодействие меджу клиентами и дисплеем
· Клиентские программы которые включают
· Оконный менеджер для управления поведением окон
· И непосредственно прикладные программы
В системе XWindow очень часто употребительным термином является термин “дисплей”. Чтобы не путать его с монитором (телевизор к которому подкючается компьютер) раскроем его смысл. Дисплей это принципиально устройство вывода информации. Дисплей – это логическое понятие и один дисплей может включать в себя несколько физических мониторов.
Экран это графическое битмап устройство которое после старта Х сервера становиться корневым окном. Оно содержит все остальные окна и прочие визуальные элементы. Одним из вспомагательных но необязательных элементов системы XWindow является FontServer, позволяющий передавать по сети шрифты на Х сервера.
3. Предварительное конфигурирование
Для работы в системе XWindow прежде всего необходимо наличие переменной окружения DISPLAY, файла / etc /X 0.host (в системах X11R4/R5) а также работу механизма резолвинга хостов (файл /etc/hosts и/или DNS и/или NIS). Переменная окружения DISPLAY устанавливается в соответствии с правилом:
exportDISPLAY=Host :Display .Screen
Файлы /etc/Xn .hosts представляют собой текстовые файлы содержащие имена хостов которым разрешено подключаться к Х серверу с номером n (запускаемым как /usr/bin/X11/X :n). При попытке подсоединения к Х серверу n необходимо в качестве номера screen в переменной окружения DISPLAY использовать n . Конфигурация X серверов храниться в файлах Xn screens которые соответствуют файлам /etc/Xn .hosts. При не настроенном механизме резолвинга хостов или в случае сетевых проблем возможно возникновение проблем или задержек в работе XWindow. Для контроля доступа к Х серверу используется программа xhost.
xhost + разрешает установку соединения с любым клиентом
xhost - запрещает установку соединения со всеми клиентом
xhost +hostname разрешает установку соединения от хоста host
xhost -hostname запрещает установку соединения от хоста host
Система XWindow использует следующие конфигурационные файлы:
.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.
3.1 Старт X Window
Для старта системы XWindow нужно запустить команду x11start. Он стартует программу xinit которая запускает Х сервер и клиентов а также оконный менеджер в зависимости от конфигурационного файла .x11start.
3.2 X ресурсы
Ресурсы определяют поведение программ (геометрия, цвета, шрифты, поведение клавиатуры, ….). Существует несколько способов позволяющих их изменять:
· Опции командной строки
· .Xdefaults файл
· загрузка ресурсов через менеджер ресурсов
· application resource файлы (app-delaults файлы)
3.3 Менеджер ресурсов xrdb
xrdb [option ] filename
основные опции:
-load ресурсы загружаемые из файла перезаписывают сущестивующие
-merge ресурсы загружаемые из файла обьеденяются с сущестивующими
-remove ресурсы указаные в файле удаляются из собственности менеджера
ресурсов.
-edit поместить ресурсы собственности менеджера в файл
Для задания ресурсов используют строку вида:
[client_name] * resource: value
или
[client_сlass] * resource: value
Каждый Х клиент имеет имя и класс. Имя определяет специфического клиента а класс категорию клиента. Ресурсы определенные через имя клиента имеют больший приоритет перед теми что определены через класс клиента. Для лучшего понимания ресурсы определенные через класс пишуться с большорй буквы. Назначить имя клиенту можно при его старте:
xterm –namemyTerminal
чтобы получить к ним доступ достаточно загрузить в ресурс менеджер следующие строки:
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 (растровые) шрифты и scalabletypeface (векторные). Растровый шришт состоит из набора файлов в каждом из которых хранятся символы определенного размера. С растровыми шрифтами напрямую может работать Х сервер и Font сервер. Векторный шрифт перед тем как должен быть выведен на дисплей проходит серию математических обработок после которых он превращается в растровый определенного размера, начертания и.т.п. Если Х сервер желает работать с векторными шрифтами, он должен их получить от Font сервера.
7.1 Настройка путей поиска шрифтов. Команда xset .
В качества источника шрифтов для Х сервера может выступать либо директория, либо Font сервер который принимает соединения на определенный TCP порт (tcp/< hostname > :portnumber ) . Путь поиска может быть установлен командой xset .
xsetoption
где option может принимать следующие значения:
q выводит информацию о системе X11 включая fontpath
-fpsource[,source …] удаляет источник с начала (-fp) или с конца (fp-) пути
fp- source [,source] поиска шрифтов
+fp source[,source …] добавляет источник к началу (+fp) или к концу (fp+) пути
fp+ source [,source] поиска шрифтов
fp= source [,source] назначает fontpath
fpdefaultсбрасывает fontpath в значение по умолчанию
fprehashзаставляет сервер перечитать базу шрифтов (это нужно в тех
случаях когда изменялось содержимое директорий со
шрифтами)
7.2 Получение списка шрифтов доступных в системе. Команда xlsfont
xlsfont [-option ]
Где option
-displayhost: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 (XLogicalFontdescription). Согласно ему имя шрифта состоит из 15 позиций разделенных минусами:
FontNameRegistry-Foundry-FamilyName-Weightname-Slant-SetwidthName-AddStyle-Name-PixelSize-PointSize-ResolutionX-ResolutionY-Spacing-AverageWidth-CharSetRegistry-CharSetCoding
Каким именно будет результирующее имя в XLFD формате зависит от типа фонт-запроса к Х серверу. Возможные типы запросов:
ReferenceXLFD Этот запрос идет при выполнениии команды xlsfonts и имя
берется из файла fonts.dir . Векторные шрифты при этом имеют PixelSize и PointSize нулевыми.
RequestXLFD В результате этого запроса будет получено XLFD имя
запрашиваемого шрифта или его алиас из файла font.alias. При этом поля содержащие * (обозначающие любое значение) будут заменены на ?
resolvedXLFD Это уже точное имя шрифта которое выддается сервером в ответ на запрос. Все поля являются заполненными, но результат может и не совпадать с исходным запросом.
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 расстояние между юнитами в шрифте. (М – фиксированное,
Р – пропорциональное)
AverageWidthCредняя ширина шрифта
CharacterSetRegistry имя закрепленное X консорциумом за CharacterSetEncoding
CharacterSetEncoding определяет кодировку
Файл font.dir
Этот файл находится в каталогах файлов фонтов, он создается либо при инсталяции системы либо после выполнения команды mkfontdirдля растровых илиstmkdirs для векторных шрифтов. Он содержит в первой строчке количество шрифтов в директории а в последующих XLFD названия шрифтов.
7.6 Файл font .alias
Этот файл так же как и font.dir содержится в каталогах шрифтов и служит для лиасинга
длинных имен шрифтов в короткие которые затем легче использовать. После правки этого файла обязательно нужно выполнять команду
xsetfprehash
а также рестартовывать по сигналу SIGUSR1 фонт сервер.
7.7 Администрирование растровых шрифтов.
Для добавления растрового шрифта в систему нужно выполнить следующие действия:
· Если шрифт не в .pcf формате сконвеертировать его с помощью программы bdftopcf
· Скомпрессировать шрифт утилитой compress
· Скопировать в нужную директорию
· Запустить mkfontdir для модификации fonts.dir файла.
· Если директория со шрифтами используется только Х сервером то выполнить xsetfprehash , если она используется еще и фонт сервером то рестартовывать по сигналу SIGUSR1 фонт сервер.
Для удаления растрового шрифта из системы Х11 необходимо:
· Удалить фонт файл.
· Запустить mkfontdir для модификации fonts.dir файла.
· Если директория со шрифтами используется только Х сервером то выполнить xsetfprehash , если она используется еще и фонт сервером то рестартовывать по сигналу 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