Руководство системного администратора • третье издание { h h y с п п т п р



Pdf просмотр
страница78/82
Дата12.11.2016
Размер7.94 Mb.
Просмотров12833
Скачиваний0
ТипРуководство
1   ...   74   75   76   77   78   79   80   81   82
. Стротегия и политике одминистрировония
8 5 7
Информацию о списках рассылки, связанных с FreeBSD, можно найти по адресу www.freebsd.org/handbook/eresources.hlml- Для подписки на любой из них нужно отправить сообщение "subscribe ххх" по адресу major- domo@freebsd.org. К сожалению, ни один из них не адресован непосредственно системным администраторам, нов списках freebsd-questions, freebsd.stable и freebsd-security можно найти много полезного. Для системных администраторов имеется масса ресурсов. Полезные ссылки вы найдете на страницах SAGE. Несколько наших любимых адресов приведены в табл. 27.5.
Тоблица 27.5. ресурсы для администраторов Сайт Содержимое freshmeat.com Огромное собрание программного обеспечения для Linux www.ugu.com
Unix Guru Universe, все для системных администраторов www.stokcly.com Хорошее собрание ссылок иа все, что необходимо системным администраторам www.iucoes.com Программное обеспечение для Windows и Мае, отобрано наиболее качественное
SIashdot.org Новости для любознательных secu rityfocus.com Информация, касающаяся безопасности огромная, но уязвимая база данных google.com Быстрый интеллектуальный поиск, особенно полезен для технического персонала www.oreiUy.com Книги, немного коммерции и кое-что полезное Литература Лучшими печатными ресурсами для администраторов U N I X являются книги издательства O'Reilly Серия начинается с книги " U N I X in a Nutshell", вышедшей более 20 лет назад, и сейчас включает книги практически ио всем важнейшим подсистемами командам UNIX. Кроме того, в этом издательстве выходят книги, посвященные Internet, Windows NT и другим темам, несвязанным с U N I X . Они имеют разумную цену, вовремя выходят и очень информативны Тим О'Рейли проводит ежегодные конференции, посвященные открытому программному коду, а также конференции на тему Perl, Java и TCL/Tk. За дополнительной информацией обращайтесь по адресу www.oreilly.com.
27 15. Стандарты Стандартизация в одних случаях нам помогает (модемы разных производителей могут общаться друг с другом, а в других — вредит (протоколы
OSI — не более чем миллионы долларов, выброшенных на ветер. Комитеты по стандартам не должны заниматься изобретательством.
Вообше-то задача стандартов состоит в том, чтобы предоставить пользователям возможность покупать совместимые продукты, созданные конкурирующими производителями. Некоторые организации, вовлеченные в процесс стандартизации, просто систематизируют и документируют существующую практику. Другие преследуют политические цели- стремятся к победе над
8 5 8
Чость III. Розное
конкурентами или сокращению объемов работ по приведению собственной продукции в соответствие с нормами. Часто крупнейшими заказчиками стандартизированных систем и приложений являются правительственные организации. Наличие стандартов позволяет им не привязываться к конкретным производителям Однако крупные компании могут по собственной воле замедлять процесс стандартизации в ожидании, пока их продукты не закрепятся на рынке. Существует несколько органов по стандартизации, как официальных, таки неофициальных. В каждой из этих структур действуют свои правила приема новых членов, голосования и работы. Сточки зрения администратора системы или сети самыми важными органами являются POSIX (Portable Operating
System Environment — Организация по переносимым операционных системами Инженерная комиссия
Internet). Рефераты новых стандартов публикуются в материалах телеконференций и comp.org.usenix, а также в login:", бюллетене USENIX. Организация POSIX, являющаяся ответвлением IEEE, последние несколько лет занимается выработкой единого стандарта на ОС UNIX. Повлияло ли это на коммерческие версии UNIX? Да Open Group, лицензировавшая торговую марку UNIX, основывает свою спецификацию UNIX на стандарте
POSIX. Каждая система, вызывающая UNIX, теперь поддерживает интерфейсы. Кто-то может возразить, что теперь все стало значительно сложнее, так как производители поддерживают и стандарты POSIX. и свои оригинальные интерфейсы, нов целом это неверно. Альтернативные интерфейсы используются всего в нескольких доменах. К сожалению, P0S1X ничего не говорит о том, что происходит на тех уровнях ОС, которые отданы на откуп системным администраторам. Документы POSIX доступны только в печатном виде. Их издает IEEF
Computer Society. В стандартах POSIX.I и POSIX.2 (теперь это стандарты ISO
9945-1 и 9945-2) описываются версии системных вызовов и команд
UNIX. В настоящее время эти стандарты совместно пересматриваются ISO.
IEEE и Open Group, планирующими закончить эту работу в конце 2001 или вначале года. После этого все три организации будут пользоваться одним стандартом. Его законченная версия должна быть бесплатно доступна через Web. Консорциум Open Group, ранее называвшийся Х. выработал подмножество стандартов POSIX, названное Single UNIX Specification (SUS). Этот процесс начался с анализа всех систем и приложений, которые захотели контролировать члены консорциума. В результате было идентифицировано
1170 различных широко используемых интерфейсов (команд, утилит, системных вызовов и т.п.). В результате проект получил рабочее название Spec 1170. Торговая марка UNIX первоначально принадлежала AT&T Bell Labs. Затем она перешла к UNIX Systems Laboratories (дочерней компании АТ Г. затем к Novell и после этого к SCO. SCO предоставила безгонорарные лицензионные права консорциуму Open Group. Если ваш продукт соответствует спецификации Single UNIX Specification и у вас достаточно денег, можете назвать свое изделие "UNIX". Специализированные лаборатории проведут сертификацию. Документ, определяющий спецификацию Single
UNIX Specification, можно приобрести или загрузить по адресу www. open- group.org/publications. Посещаемость совещаний по стандартизации за последние несколько лет упала, но только ие в IETF. Некоторые организации по стандартизации точнее, большинство из них) получают основной доход от продажи копий
Глово 27. Стр
отегия и политике одминистрировония
8 5 9
стандартов не по 20 долл. (затраты на бумагу и тиражирование, а приблизительно по 300 долл. Практически все стандарты пишутся добровольцами, работа которых не оплачивается. Консорциум Austin G r o u p (Austin — это название города в штате Техас, где впервые собрались его представители) состоит из организаций-участников
I E E E , ISO и Open Group. Он поддерживает узел с рабочими документами разных стандартов. Заинтересованных пользователей приглашают посещать узел, загружать черновики и принимать участие в процессе стандартизации. На этом узле нужно зарегистрироваться, но ои не будет присылать спам или счета за- загруженные документы. Его адрес www.opengroup.org/austin. Группа пользователей U S E N I X финансирует участие одного своего представителя в нескольких группах стандартизации. Его задача состоит не в том, чтобы определять направление будущего стандарта, а скорее вин формировании пользователей U N I X о состоянии дел в области стандартизации и препятствовании появлению лжестандартов. Представитель
U S E N I X собирает информацию, поступающую из многих источников, из которых наиболее заметными являются так называемые осведомители
(snitches). Осведомитель — это технический специалист, который посещает некоторое мероприятие и составляет о нем отчет. Такие отчеты ложатся в основу материалов, публикуемых в журнале " \ l o g i n К роме того, эти отчеты помогают понять, что предлагает стандарт и что в нем неправильно (или же. что в нем хорошо- Если вы активный участник процесса стандартизации и технически компетентны, возможно, вы захотите быть осведомителем в своей области. Говорят, обеды для осведомителей исключительно хороши. Некоторые упоминавшиеся в этой главе политические и процедурные документы можно получить по адресу www.admin.com. Эти документы описаны в табл. 27.6.
Тоблица 27.6. Перечень документов, находящихся но www.odmin com
27.16. Образцы документов Документ Содержание
Mgrad. policy Соглашение о правилах пользования компьютерной лабораторией для студентов-новичков Соглашение о правилах пользования компьютерной лабораторией для выпускников и преподавательского состава Правила для системных администраторов
Сервисы CSOPS. политики и приоритеты Тесты для определения опыта работы Тесты на знание вопросов администрирования Контрольный список для локализации Контрольный список для резервного копирования с помошью
Amanda Контрольный список для установки оболочек grad.policy s y s a d m i n . p o l i c y s e r v i c e s hiring.qHlzl
ЫгшвдшЗ localization araanda tcp-wrappers
8 6 0
С
Г
Чость III. Розное

27.17. Рекомендуемая литература
• Burgess, Mark "Cfengine: a site configuration engine." USENIX Computing
Systems, Vol 8, No 3. 1995.
• Burgess, Mark "Computer Immunology." LISA, 1998.
• Oetiker, Tobias "SEPP — Soflawre Installation and Sharing System." LISA.
1998.
• San Diego Supercomputer Center. Local policies, standarts, and procedures. http://security.sdsc.edu/helpSGs.shtml.
• М.1.В.Н., Inc. "Acceptable Use Policy." http://www.mibh.net/mibh-aup.html.
M.I.B.H. приобретена компанией Metromedia Fiber Network, но ее документ A UP по-прежнему доступен и представляет собой хороший пример строгих и действенных правил.
• Eaton, David W. "сотр ware, со nfig-mgmt FAQ. part 3." http://www.iac. honeywell.com/Pub/Tech/CM/PMTools.html.
ЭТОТ документ содержит ответы на вопросы, связанные с системами отслеживания проблем, включая и многие коммерческие системы, о которых мы даже не слышали. Он поддерживается как полагается, номы ие нашли в нем информации о наших любимых пакетах.
• Harrow, Jeffrey R., and Compaq Computer Corporation "The Rapidly
Changing Face of Computing" (периодическое издание, http://www.com- paq.com/rcfoc. Эти регулярно обновляемые узлы содержат интересные статьи па технологические темы.
Глово 27. Стротегия и политике одминистрировония
8 6 1

Процессы-демоны
Операционная система U N I X — это гибкая и универсальная многозадачная среда, но ее функциональные возможности заключены не только в ядре. В системе имеется богатый набор демонов, отвечающих за ее жизнедеятельность. Системные администраторы могут также инсталлировать дополнительные демоны, полученные из Internet, предоставленные производителями или написанные пользователями. Демон это фоновый процесс, который выполняет системную задачу. В полном соответствии с господствующим в U N I X принципом модульности демоны являются программами, а не частями ядра. Многие демоны каются вовремя начальной загрузки системы и продолжают работать все время, пока система включена. Остальные демоны запускаются при необходимости и работают столько, сколько предусмотрено их функциями. Слово "демон" (daemon) впервые употребил в компьютерной практике
Мик Бейли (Mick Bailey), англичанин, который вначале х п. работал программистом в Массачусетском технологическом институте. Для объяснения смысла и правильного написания слова '"daemon" Мик цитировал
Окфордский словарь английского языка. Слова " d a e m o n " и " d e m o n " имеют общий корень, но первое — более древнее, сохранившее первоначальное значение. Слово " d a e m o n " дословно означает "гений, дух-покровитель человека. В этом смысле демоны являются не воплощениями добра или зла, а независимыми существами со своими собственными намерениями и желаниями. Из системы CTSS, в работе над которой Бейли принимал участие, этот термин перешел в Multics. а затем ив, где демоны стали настолько популярными, что для управления ими понадобился "суперлемон" (inetd) В этой главе дан краткий обзор наиболее распространенных демонов. Не все перечисленные здесь демоны поставляются со всеми версиями UNIX, пне каждый демон, входящий в состав той или иной версии UNIX, здесь упомянут. Прочитав о том, что делают все эти демоны, вы ие только станете Эту историю рассказал нам Деннис Ритчи со слов Джерри Затьцера из МТИ.
8 6 2
Чость III. Розное
еще более квалифицированным специалистом по ОС UNIX, но и перестанете бояться вопросов пользователей о том, что делает, например, демон xiitpd. До того как был напнсан демон inetd. все демоны запускались вовремя начальной загрузки и работали непрерывно (точнее, блокировались в ожидании работы) Со временем в систему вводились все новые и новые демоны. Их появилось столько, что начали возникать проблемы с производительностью. В ответ специапнсты университета Беркли разработали inetd — демон, отвечающий за запуск других демонов по мере необходимости
Супердемон inetd стал таким популярным, что теперь его включают вовсе основные версии UNIX, а большинство новых демонов работает под его контролем. Системные администраторы должны быть хорошо знакомы с целым рядом демонов либо потом, что они требуют много внимания администратора, либо потому, что играют значительную роль в повседневной работе системы. Многим демонам, которые здесь описаны одной-двумя строчками, посвящены целые разделы в других главах зтой книги. Там. где необходимо, мы лаем перекрестные ссылки. В начапе этой главы мы познакомим читателей с парой очень важных системных демонов (init и сгоп), а затем перейдем к рассмотрению демона inetd. Потом мы вкратце опишем большинство демонов, с которыми системному администратору, скорее всего, придется столкнуться при работе в четырех наших тестовых системах.
28.1. Основные демоны Демон init — это первый процесс, который запускается после начальной загрузки системы, и во многих отношениях это самый важный демон. Он всегда имеет идентификатор процесса 1 и является предком всех пользовательских и почти всех системных процессов. Вовремя начальной загрузки демон init либо переводит систему в однопользовательский режим, либо порождает интерпретатор команд для чтения стартовых сценариев. Когда система загружается в однопользователь- ском режиме, демон init начинает читать стартовые сценарии после топо. как однопользовательский интерпретатор команд завершается нажатием клавиш
. После обработки файлов запуска демон init обращается к файлу конфигурации (/ctc/ttytab, /etc/ttys или /etc/inittab, в зависимости от системы) и получает отгула список портов, через которые следует ожидать входа в систему. Демон init активизирует эти порты и порождает для каждого из них процесс getty". Если порт открыть нельзя, демон init периодически выдает на системную консоль сообшения. пока порт не будет открыт или удален из списка актив гых портов.
Подробнее о портах ТТУ рассказывается в главе 7 В старых системах управление терминальными портами было основной задачей администраторов. Сегодня терминалы являются реликтами былой эпохи. Пользователи регистрируются в системах посети при помощи таких демонов, как riogind. telnetd и sshd. Операционная система Solaris является исключением из правила (см. параграф 7.8).
Глово 28. Процессы-демоны
1 6 3
Демон init, кроме того, выполняет довольно неприятную задачу изгоняет еше живые процессы-зомби, которые скапливаются в системе. Роль демона init в этом процессе описана в параграфе 4.2. Останов системы осуществляется путем передачи демону init соответствующего сигнала (обычно это SIGTERM), который заставляет его перевести систему в однопользовательский режим. Это последняя операция в большинстве сценариев останова. Демон init играет настолько существенную роль в работе системы, что в случае его зависания инициируется автоматическая перезагрузка системы. В большинстве современных систем демон init поддерживает различные "уровни выполнения, на которых его можно запускать. Уровни выполнения определяют, какой набор системных ресурсов нужно задействовать. Обычно есть семь или восемь уровней от 0 до 6 плюс уровень "V (однопользова- тельский режим. Описания характеристик уровней выполнения содержатся в файле /etc/inittab.
[7[ Подробнее о файле inittab рассказывается в параграфе 7.8.
Начальный уровень выполнения назначается (передается в виде аргумента командной строки) демону init системным загрузчиком. Если задан уровень "s", демон Init входит в однопользовательский режим. В противном случае он находит в файле /etc/inittab записи, соответствующие указанном' уровню, и выполняет содержащиеся в них команды. Для изменения уровня выполнения в процессе работы системы используется команда telinit. Например, команда telinit 4 заставляет демон init перейти на уровень выполнения 4. Самый полезный аргумент команды telinit — -q. который заставляет демон init повторно прочитать файл
/etc/inittab. В тех системах, где стартовые сценарии хранятся в каталоге /etc/inlt.d и имеют ссылки на каталоги /etc/rcX.d, перевод демона init на определенный уровень вызывает выполнение сценариев из соответствующего каталога
(/etc/rcX.d, где X — новый уровень выполнения) с аргументом start Сценарии, связанные со старым уровнем выполнения, выполняются с аргументом stop. Это позволяет упорядочить запуски останов системы. Более подробное описание данного механизма приведено в параграфе 2.4. Во FreeBSD демону Init можно дать указание перечитать свой управляющую ш и й файл. Для этого посылается сигнал отбоя (SIGHUP). Поскольку демон
Init всегда имеет один и тот же идентификатор процесса, можно просто выполнить команду kill - H U P 1. Не забудьте указать аргумент -HUP, иначе система зависнет.
28.2. Демон сгоп: планирование команд
Демои сгоп отвечает за выполнение команд по установленному графику. Он обрабатывает файлы с расписанием задач (файлы, созданные как пользователями, таки администраторами. Демон сгоп часто применяют в административных целях, например для управления учетными и журнальными файлами и ежедневной чистки файловой системы. Этот демон настолько важен лля системных администраторов, что мы посвятили ему целую главу 9.
8 6 4
Чость III. Разное

28.3. Демон inetd: управление демонами Демон inetd управляет другими демонами. Он запускает демоны-клиенты, когда для них есть работа, а после выполнения задачи позволяет им тихо завершиться. Демон inetd работает только с теми демонами, которые оказывают услуги посети. Для того чтобы установить, не пытается ли кто-нибудь получить доступ к одному из его клиентов, демон inetd контролирует те редко активизируемые сетевые порты, которые обслуживаются обычно бездельничающими демонами. Когда устанавливается соединение, демон inetd запускает соответствующий демон и соединяет каналы его стандартного ввода-вывода с сетевым портом. Это правило следует учитывать при написании демонов, совместимых с inetd. Работа некоторых демонов (например, тех, что связаны си) основана иа протоколе RPC, который был разработан и реализован компанией
Sun в качестве механизма совместного использования информации в распределенной сетевой среде. Назначениями портов для демонов управляет демон portmap (иногда называется rpcbindj. Многие демоны могут использоваться либо традиционным способом (те. они запускаются однократно и работают до выключения системы, либо под контролем демона inetd. Далее в этой главе мы приняли следующее условное обозначение если демон совместим с демоном inetd. он помечен знаком ©
Конфигурирование демона inetd Для того чтобы определить, какие сетевые порты нужно контролировать, демон inetd читает файл конфигурации (обычно /etc/meld.conf. а иногда
/usr/etc/inetd.conf или /etc/servers). Его формат одинаков для всех платформ. Приведем пример f t p t e l n e t s h e l i f i n g e r b o o t p p o p - 2 p o p - 3 m o u n t d / 1 m o u n t d / 1 s t r e a m s t r e a m s t r e a m s t r e a m d g r a m s t r e a m s t r e a m s t r e a m d g r a m t c p t c p t c p t c p u d p t c p
LCp r p c / t c p w a i t r p c / u a p w a i t n o w a i t r o o t n o w a i t r o o t n o w a i t r o o t n o w a i c g u e s t w a i t r o o t n o w a i t r o o t n o w a i t r o o t r o o t rCOL
/ u s r / s b i n / f t p a f t p d
/ u s r / s b i n / t e l n e t d t e i n e t d
/ u s r / s b i n / r s h d r s h d
/ u s r / s b i n / f i n g e r d f i n g e r d
/ u s r / s b i n / b o o c p d b o o t p - E
/ u s r / s b i n / p o p p e r p o p p e r
/ u s r / s b i n / p o p p e r p o p p e r
/ u s r / s b ^ n / m o u n r d m o u n t d
/ u s r / s b i n / m o u n t d m o u n t d Первая колонка содержит имя сервиса. Эти нмена преобразуются в номера портов на основе данных, содержащихся в файле /etc/services (для
UDP- и TCP-сервисов) или демоном portmap (для RPC-сервисов). сер- висы можно отличить по формату имени имя/номер и обозначению грс в третьей колонке. В приведенном выше примере RPC-сервисы указаны в двух последних строках. Во второй колонке определяется тип сокета, которым будет пользоваться сервис s t r e a m или dgram. Сокеты типа s t r e a m используются с ТСР-сер- висами (ориентированными на установление соединения, а сокеты типа dgram — с UDP-серснсами В третьей колонке указывается протокол обмена, которым пользуется данный сервис. Допустимые типы перечислены в файле protocols (обычно он находится в том же каталоге, что и файл конфигурации демона inetd) Почти
Глово 28. Процессы-демоны
163
всегда в этой колонке указывается тип t c p или udp. RPC-сервисы предваряют тип протокола обозначением гр с / (см. в примере r p c / t c p и r p c / u d p ) . Если описываемый сервис может обрабатывать одновременно несколько запросов (а не завершает выполнение после обработки одного запроса, в четвертой колонке нужно ставить ключевое слово w a i t , которое не даст демону inetd постоянно порождать новые экземпляры демона этого сервиса. Данное средство применяется для сервисов, которые обрабатывают множество мелких запросов. Если опция w a i t не подходит, тов этом поле нужно поставить ключевое слово n o w a i t . В пятой колонке указан пользователь, от имени которого должен выполняться данный демон. Если вы не доверяете той или иной программе либо знаете, что она порождает проблемы, связанные с безопасностью системы, можете выполнить ее от имени непривилегированного пользователя. Естественно, это годится только для демонов, которые не требуют привилегий пользователя root. В нашем примере демон fingerd выполняется с правами пользователя guest. В остальных полях даются полное путевое имя демона и аргументы его командной строки. Первым аргументом всегда должно быть сокращен нос имя программы. Это не особенность демона inetd. а традиционное для UNIX соглашение. Пользователю обычно не приходится с этим сталкиваться, поскольку все скрыто в интерпретаторе команд. Файл После добавления нового сервиса в файл inetd.eonf, возможно, понадобится ввести его ив файл services. Этот файл обычно находится в том же каталоге, что и файл inetd.eonf. и используется несколькими стандартными библиотечными функциями, которые преобразуют имена сервисов в номера портов. Например, если ввести команду
% telnet anchor umtp
то в файле services будет произведен поиск номера порта, соответствующего сервису. В большинстве систем все самые распространенные сервисы на момент поставки уже сконфигурированы. Если потребуется добавить еще несколько сервисов, нужно будет просто отредактировать файл services. Файл services используется только для сервисов TCP/IP. Аналогичная информация для RPC-сервисов хранится в отдельном файле конфигурации обычно это с. Ниже приведено несколько строк из файла services (размер которого около 70 строк
# T C P p o r t m u l t i p l e x e r
# r e s o u r c e l o c a t i o n
# I E N 1 1 6 t c p
1 / t c p e c h o
7 / c c p e c h o
7 / u d p s m t p
2 5 / t c p m a i l t i m e
3 7 / t c p t i r o s e r v e r t i m e
3 7 / u d p t i m s e r v e r r i p
3 9 / u d p r e s o u r c e n a m e
4 2 / t c p w h o i s
4 3 / t c p n i c n a m e
8 6 6
Чость III. Розное
Формат строки такой
имя порт/тип псевдонимы # комментарий
Сервисы в файле обычно упорядочены по номерам, но это необязательно. В поле имя указывается имя сервиса (которое используется в файле. В поле порт значится номер порта, контролируемого сервисом. Если сервис работает под управлением демона inetd, то это тот порт, который контролируется демоном inetd*.
Поле тип обозначает протокол, которым пользуется данный сервис (на практике это всегда tcp или udp) Если программа может работать и по протоколу T C P , и по протоколу U D P , необходимо включить строку для каждого из этих протоколов (как в записи для сервиса t i m e ; см. пример.
Поле псевдонимы содержит дополнительные имена сервиса (например, сервис w h o i s можно искать по имени nicname). Перезапуск демона Изменения, внесенные в файл конфигурации, вступят в силу лишь после того, как демону inetd будет дано указание перечитать файл Это делается путем передачи этому демону сигнала отбоя. Послав сигнал, подождите минуту и проверьте, нет ли в журнальных файлах сообщений об ошибках, связанных с внесенными изменениями (демон inetd регистрирует ошибки в системе Syslog). Можно попробовать связаться с новыми сервисами и проверить, как они работают.
Подробнее о системе Syslog рассказывается в главе П.
З а щита демона Демон inetd отвечает за функционирование множества распространенных сетевых сервисов, поэтому он н.рает важную роль сточки зрения безопасности системы. Следует убедиться в том, что в файле inetd.conf активизированы только действительно необходимые и проверенные сервисы. В новой системе почти наверняка придется отредактировать ITOT файл, чтобы отключить ненужные или нежелательные сервисы. Но даже после этого рекомендуется дополнить демон inetd пакетом оболочек, написанным Витсом Венема. Этот пакет регистрирует все попытки установления соединений и ограничивает доступ к демонам в зависимости оттого, кто именно к ним обращается. Описание пакета приведено в параграфе 21.7. В H P - U X демон inetd имеет встроенные средства, напоминающие оболочки. Демон проверяет файл /var/adm/inetd.sec и определяет, кому разрешено подключаться к данному конкретному сервису. Если демон запускается с флагом -I, он также регистрирует все запросы на установление соединений. Инструкции, касающиеся конфигурирования средств защиты системы H P - U X . приведены в параграфе 21.7. Номера портов назначаются не в произвольном порядке. Все компьютеры должны согласовать вопрос о том. какие сервисы за какими портами закрепляются. В противном случае запросы будут постоянно идти не на тс порты. Создавая сервис специально для своей системы, присвойте ему большой номер порта, которого еще нет в файле services.
Глово 28. Процессы-демоны
163
Демон portmap/rpcbind: преобразование номеров
RPC-сервисов в номера портов T C P и U D P Демон portmap (в настоящее время называется rpcbind во многих системах — спасибо компании Sun!) преобразует номера RPC-сервисов и номера портов TCP/IP, которые контролируются их серверами Копая запускается сервер, он регистрирует себя с помощью демона port- map/rpcbind. указывая поддерживаемые сервисы, а также используемый порт. Клиенты запрашивают демон portmap/rpcbind и выясняют, как связаться с соответствующим сервером. Такая схема позволяет устанавливать соответствие между номером порта и символьным именем сервиса. Это уже принципиально иной уровень абстракции, более высокий, чем используемый в файле services, но вместе с ним появляются дополнительные сложности (и проблемы безопасности, тогда как реальных проблем ом ие решает. Многие RPC-сервисы фактически запускаются демоном inetd. Таким образом, создается не один, а от а уровня косвенного вызова программ Если демон portmap/rpcbind зависает, все связанные с ним службы включая ieetd и NFS) должны перезапускаться. На практике это означает перезагрузку системы. Для того чтобы демон inetd обрабатывал запросы правильно, демон portmap должен быть запущен раньше, чем inetd.
28.4. Системные демоны Ряд системных задач, например управление виртуальной памятью и синхронизация дисковых кэш-буферов, находится введении демонов, а не ядра. Системный администратор не может вмешиваться в работу этих демонов. Демон замещения страниц Реализация данного демона и его функционирование зависят от конкретной системы. Он называется pageout в Solaris, vhand в HP-UX, kpiod в Red
Hat и pagedaemon во FreeBSD. Этот демон является частью системы управления виртуальной памятью. При обращении к странице виртуальной памяти система проверяет таблицу и определяет, находится ли страница в данный момент в оперативной памяти. Если ее там нетто выдается сообщение об ошибке и вызывается демон замещения, который переносит страницу в память из области подкачки. Если свободных физических страниц нет, демон освобождает место, переписывая какую-нибудь страницу в раздел подкачки и корректируя соответствующие элементы таблицы страниц
|7[ Подробнее о виртуальной памяти рассказывается в параграфе 25.3.
Демон подкачки Этот демон называется .swapper воин в Linux Когда одновременно работает много процессов, система тратит массу времени на обработку ошибок, возникающих из-за отсутствия свободных страниц, потому что каждый процесс использует определенное количество страниц, к которым регулярно обращается. Такая перегрузка системы управления виртуальной памятью серьезно ухудшает производительность системы. Ь 8 6 8
Чость III. Розное
Демон полкачки контролирует количество вышеупомянутых ошибок, которое прямо пропорционально числу обращений к памяти. Если ошибок слишком много, демон начинает сбрасывать в область подкачки целые процессы. Выгруженные процессы полностью удаляются из физической памяти и не выполняются в течение сравнительно длительного времени порядка нескольких секунд. Демон подкачки продолжает удалять процессы из оперативной памяти до тех пор, пока частота страничных ошибок не упадет до приемлемого уровня. Механизм подкачки был изобретен в те времена, когда оперативная память была относительно дорогой Его полезность в современных компьютерных системах сомнительна. Тем не менее он по-прежнему поддерживается в большинстве систем Демон синхронизации файловых систем Демон синхронизации каждые 30 секунд выполняет системный вызов sync, который инициирует запись на диск всех модифицированных дисковых блоков, включая суперблоки файловых систем, таблицы индексных дескрипторов и буферизованные блоки данных. Такая операция минимизирует ущерб, наносимый крахом системы.
|7[ Подробнее о суперб.юках файловых систем рассказывается в параграфе 8.3.
В большинстве систем этот демои называется update, нов носит имя syncer, а в Solans — 14flush.
28.5. Демоны печати Системы печати BSD и System V располагают собственными семействами демонов, реализующими функции печати. Иногда семейства 'скрещиваются" друг с другом, а иногда работают параллельно водной системе.
Ipd: управление печатью в системах Демон Ipd отвечает за механизм печати в системах. Он принимает задания от пользователей и порождает процессы для выполнения реальных операций печати. Кроме того, демон Ipd отвечает за пересылку заданий печати в удапенные системы и получение заданий из них Иногда этот демон зависает и требует ручного перезапуска.
|7| Более подробное описание демона Ipd бано в параграфе 23.3.
Ipsched: управление печатью в АТТ-сисгемах Демон Ipsched — это АТТ-версия демона иострочно-печатающего принтера. Он принимает задания из программы р и ставит их в очередь на печать Когда нужное устройство освобождается, демон Ipsched порождает процесс, который управляет печатью.
Подробное описание демона Ipsched можно найти в параграфе 23.4.
Функция sync просто дает указание записывать эти блоки на диск, ноне гараширует. что запись будеч успешно завершена.
Глово 28. Процессы-демоны
163
rlpdaemon: печать изв Демон rlpdaemon позволяет демону- Ipsched в HP-UX принимать запросы на печать из систем типа. Подробно этот демон рассматривается в параграфе 23.5. Демоны NFS Следующие демоны входят в состав сетевой файловой системы — NFS. Здесь мы дадим лишь беглое описание их функций, а подробную информацию можно найти в главе 17. nfsd: файловый сервис Демон nfsd работает на серверах и отвечает за обработку запросов, поступающих от клиентов N FS. В некоторых системах он называется rpc.nlsd . В большинстве реализаций NFS демон nfsd является частью ядра, замаскированной" под процесс из соображений простоты планирования У этого демона есть один аргумент — количество порождаемых экземпляров самого себя. Правильно выбрать количество экземпляров довольно сложно см. параграф 17.2).
CP mountd: ответы на запросы монтирования Демон mountd (иногда называемый rpc.mountd) принимает от потенциальных клиентов NFS запросы на монтирование файловых систем. Он отвечает за проверку наличия у каждого клиента разрешения на монтирование заявленных каталогов. Для того чтобы выяснить, какие запросы правомочны, демон mountd обращается к файлу /etc/exports. amd и automount: монтирование файловых систем по запросу Программы amd и automount — это автоматические монтировщики NFS, которые, прежде чем смонтировать файловую систему, ждут, когда процесс попытается обратиться к ней Впоследствии, если к файловой системе не было обращения в течение определенного промежутка времени, демоны демонтируют ее. Автоматические монтировщики очень удобны в крупных организациях, когда десятки и сотни файловых систем совместно используются посети. Эти демоны повышают стабильность сети и уменьшают сложность ее конфигурирования, так как все компьютеры в сети работают с одними и теми же файлами конфигурации демонов. Подробнее об этих демонах рассказывается в параграфах 17.6, 17.7 и 17.8. lockd и statd: управление файломи блокировки N F S Демоны lockd и statd (называемые также rpc.lockd и rpc.statd) всегда работают в паре. Демон lockd отвечает за блокировку файлов NFS. Демон statd позволяет процессам контролировать состояние компьютеров, на которых работает NFS. Он используется демоном lockd для принятия решения о Префикс "грс" означает, что данный демои использует протокол RPC.




Поделитесь с Вашими друзьями:
1   ...   74   75   76   77   78   79   80   81   82


База данных защищена авторским правом ©nethash.ru 2019
обратиться к администрации

войти | регистрация
    Главная страница


загрузить материал