ГЛАВА P9 ПРОЦЕДУРЫ БАЗОВОГО СЕТЕВОГО ОБЕСПЕЧЕНИЯ СОДЕРЖАНИЕ ПРОЦЕДУРЫ БАЗОВОГО СЕТЕВОГО ОБЕСПЕЧЕНИЯ ПРОЦЕДУРА 9.1: ЗАПОЛНЕНИЕ ФАЙЛОВ БАЗОВОГО СЕТЕВОГО ОБЕСПЕЧЕНИЯ Заполнение файла Devices - devicemgmt Заполнение файла /etc/inittab - portmgmt Заполнение файла Systems - systemmgmt Заполнение файла Poll - pollmgmt Заполнение файла Permissions Создание входов в систему для uucp Прочие сетевые файлы ПРОЦЕДУРА 9.2: СОПРОВОЖДЕНИЕ БАЗОВОГО СЕТЕВОГО ОБЕСПЕЧЕНИЯ Автоматизированное сопровождение сети (cron) uudemon.poll uudemon.hour uudemon.admin uudemon.cleanup Сопровождение вручную ПРОЦЕДУРА 9.3: ОТЛАДКА БАЗОВОГО СЕТЕВОГО ОБЕСПЕЧЕНИЯ Проверка повреждений связи Проверка файла Systems Передачи информации с отладкой Проверка сообщений об ошибках Проверка основных данных ПРОЦЕДУРЫ БАЗОВОГО СЕТЕВОГО ОБЕСПЕЧЕНИЯ В этом разделе рассматриваются процедуры: Процедура 9.1 Заполнение файлов базового сетевого обеспечения. Организация файлов базового сетевого обеспечения. Процедура 9.2 Сопровождение базового сетевого обеспечения. Обслуживание файлов и операций базового сетевого обеспечения. Процедура 9.3 Отладка базового сетевого обеспечения. Пути решения общих проблем, возникающих при эксплуатации ути- лит базового сетевого обеспечения. ПРОЦЕДУРА 9.1: ЗАПОЛНЕНИЕ ФАЙЛОВ БАЗОВОГО СЕТЕВОГО ОБЕСПЕЧЕНИЯ | +-----------------+----------------------------------------------------- | |Назначение |Организовать файлы базового сетевого обеспечения | | |Обеспечить подходящие коммуникационные связи | +-----------------+----------------------------------------------------- | |Когда |Первоначальная установка и в момент добавления но | |выполняется |устройств и удаленных систем | +-----------------+----------------------------------------------------- | |Исходные условия |Состояние системы - 2 (многопользовательский) или 1 ( | | |нопользовательский режим). | | |Вход привилегированный. | +-----------------+----------------------------------------------------- | |Меню sysadm |PACKAGE MANAGEMENT | +-----------------+----------------------------------------------------- | |Команды |sysadm uucpmgmt(1) | | |sysadm devicemgmt(1) | | |sysadm portmgmt(1) | | |sysadm systemmgmt(1) | | |sysadm pollmgmt(1) | +-----------------+----------------------------------------------------- | |Ссылка |Руководство по утилитам базового сетевого обеспечения | +-----------------+----------------------------------------------------- Следующая далее процедура позволяет создать среду базового се- тевого обеспечения и привести ее в действие. Это делается пос- редством подкоманд команды sysadm и текстового редактора. Последовательные шаги содержат инструкции по добавлению строк в три стандартных поддерживающих файла: Devices, Systems и Per- missions. Также предоставляется инструкция по модификации имею- щихся строк в /etc/inittab (применительно к базовому сетевому обеспечению). И, наконец, описывается создание различных необя- зательных файлов. Вызовите раздел меню управления системой uucpmgmt, введя: |$ sysadm uucpmgmt |Password: | BASIC NETWORKING UTILITIES MANAGEMENT | |1 devicemgmt manage devices (list, add, delete) |2 pollmgmt manage poll entries (list, add, delete) |3 portmgmt manage I/O ports (list, modify) |4 systemmgmt manage remote systems entries (list, add, delete, call) | |Enter a number, a name, the initial part of name, or |? or ? for HELP, q to QUIT: Каждая из описанных ниже подкоманд может быть вызвана из этого меню или непосредственно из командного процессора. Заполнение файла Devices В файле Devices (/usr/lib/uucp/Devices) содержится информация об устройствах, используемых для вызова других машин. Подроб- ности об этом файле см. в гл. 9. Шаг 1. Для добавления входов в файл Devices введите sysadm de- vicesmgmt, затем выберите 2(add - добавить): |$ sysadm devicemgmt |Password: Running subcommand 'devicemgmt' from menu 'uucpmgmt', |BASIC NETWORKING UTILITIES MANAGEMENT | |This procedure is used to list, add, and delete entries |in the Basic Networking Utilities '/usr/lib/uucp/Devices' file. |This file contains information about devices available for |calling out using the comands: uucp, cu, and ct. | |Type 'q' at any time to quit the present operation. |If a '?' appears as a choice, type '?' for help. | |If a default appears in the question type for the default. | |Enter the operation you want to perform: | | 1 list (распечатать) | 2 add (добавить) | 3 delete (удалить) | |(default list) [q]: 2 Эта подкоманда запросит у Вас информацию относительно устройств, используемых базовым сетевым обеспечением. port name Имя порта, к которому будет присоедине- но устройство. device name Имя устройства, подлежащее подключению к вышеназванному порту. Выберите одно из предложенного списка. Шаг 2: После того как Вы ввели запрошенную информацию, она, прежде чем попасть в файл Devices, будет высвечена на экране. В файле /etc/inittab может не быть корректной записи для только что назначенного порта. Вы можете изменить порт сейчас же или после, используя для этого подкоманду portmgmt в следующей процедуре. Заполнение файла /etc/inittab В файле inittab (/etc/inittab) содержится информация о портах, к которым присоединяются устройства. Более подробно см. гл. 3 "Управление состоянием системы". Шаг 1. Чтобы добавить записи, связанные с утилитами базового сетевого обеспечения, в файл inittab, введите sysadm portmgmt, затем выберите 2 (modify - модифицировать). |$ sysadm portmgmt |Password: |Running subcommand 'portmgmt' from menu 'uucpmgmt', |BASIC NETWORKING UTILITIES MANAGEMENT | |This procedure is used to list, and modify |the entries that control the direction of traffic on the Basic |Networking Utilities I/O ports used by uucp, cu and ct commands | |Type 'q' at any time to quit the present operation. |If a '?' appears as a choice, type '?' for help. | |If a default appears in the question type for the default. | |Enter the operation you want to perform: | | 1 list | 2 modify | |(default list) [q]: 2 Подкоманда выдает список портов, доступных для исполь- зования базовым сетевым обеспечением, затем просит Вас выбрать, который из них Вы будете модифицировать. За- тем, она запросит у Вас следующие данные: port name Имя порта, который Вы хотите включить (должен быть одним из портов показанных в списке). traffic direction Направление потока через порт. Вы долж- ны определить будет ли поток только in- coming (входящим), или outgoing (выхо- дящим), или же bidirectional (двунап- равленным). baud rate Скорость передачи в бодах выбранного порта. После того как Вы ввели запрошенную информацию, она бу- дет выведена на экран, до записи в файл /etc/inittab. Примечание Поскольку добавление устройства (sysadm devicemgmt) ав- томатически порождает запись о порте в /etc/inittab, то sysadm portmgmt может понадобиться Вам только для моди фикации. Заполнение файла Systems В файле Systems (/usr/lib/uucp/Systems) хранится информация, нужная утилите uucp, чтобы вызвать и войти в систему на удален- ной машине. Каждая запись представляет одну удаленную машину, которая может быть вызвана программами Вашего базового сетевого обеспечения. Если запись файла Systems должна использоваться для осуществле ния контакта с удаленной машиной, соединенной с Вашей аппарат- ными средствами, то справьтесь в гл. 9 относительно специальных инструкций по созданию файла Systems. Шаг 1: Для ввода информации о новых машинах в Ваш файл Sys- tems, введите sysadm systemmgmt, затем выберите 2. |$ sysadm systemmgmt |Password: |Running subcommand 'systemmgmt' from menu 'uucpmgmt', |BASIC NETWORKING UTILITIES MANAGEMENT | |This procedure is used to list, add, and delete entries |in the Basic Networking Utilities '/usr/lib/uucp/Systems' file. |This file contains information about what remote systems |can be called by cu and uucp comands. |You can also try to call a remote systems that appears |in the '/usr/lib/uucp/Systems' file. | |Type 'q' at any time to quit the present operation. |If a '?' appears as a choice, type '?' for help. | |If a default appears in the question type for the default. |Enter the operation you want to perform: | | 1 list | 2 add | 3 delete | 4 call | |(default list) [q]: 2 После того как Вы выбрали 2(add - добавить), подкоманда запросит у Вас следующую информацию. node name Имя узла, в котором находится система, которую Вы хотите вызывать. device type Тип устройства, используемого для осу- ществления связи (например, acu). baud rate Скорость, на которой устройство будет осуществлять вызов. phone number Телефонный номер удаленной машины. Спе- циальные символы, которые могут быть введены в телефонный номер, включая аббревиатуры из файла Dialcodes (/usr/ lib/uucp/Dialcodes). Login ID Идентификатор, используемый uucp для входа в систему на удаленной машине. password Пароль, относящийся к вышеуказанному входному идентификатору. Шаг 2: После того как Вы ввели запрошенную информацию, она бу- дет выведена на экран, до записи в файл Systems. Заполнение файла Poll В файле Poll (/usr/lib/uucp/Poll) содержится список машин, ко торые должны вызываться (опрашиваться) Вашим компьютером, чтобы проверить не имеют ли они чего-нибудь для передачи Вам. В нем содержатся также интервалы времени, в течение которых машины должны опрашиваться. Шаг 1: Чтобы добавить запись к файлу Poll, наберите sysadm pollmgmt, затем выберите 2(add - добавить). |$ sysadm pollmgmt |Password: |Running subcommand 'pollmgmt' from menu 'uucpmgmt', |BASIC NETWORKING UTILITIES MANAGEMENT | |This procedure is used to list, add, and delete entries in the |Basic Networking Utilities '/usr/lib/uucp/Poll' file. |This file contains information about what systems and |the times (hours) the systems should be polled. | |Type 'q' at any time to quit the present operation. |If a '?' appears as a choice, type '?' for help. | |If a default appears in the question type for the default. | |Enter the operation you want to perform: | | 1 list | 2 add | 3 delete | |(default list) [q]: 2 Подкоманда pollmgmt запросит у Вас следующую информацию: system name Имя системы, которую Вы хотите опраши- вать. polling hours Часы, в которые Вы хотите опрашивать систему: целое число из интервала от 0 до 23 (например, 0 4 8 12 16 20 - каж- дые четыре часа). Шаг 2: После того, как Вы ввели запрошенную информацию, она будет выведена на экран, до записи в файл Poll. Заполнение файла Permissions Исходный файл /usr/lib/uucp/Permissions обеспечивает Вашему компьютеру максимум защиты. Файл, в том виде, как он поставля- ется, содержит следующую запись: | LOGNAME=nuucp Вы можете установить для каждой машины дополнительные парамет- ры, определяя: способы, которыми она может получать файлы с Вашей машины каталоги в которых она может читать и писать команды, доступные ей для дистанционного исполнения Информацию, касающуюся задания этого файла, см. в главе 9. Если Вы хотите изменить содержимое этого файла, используйте редактор для модификации и создания желаемых записей. Создание входов в систему для uucp Вам необходимо создать один или несколько административных вхо- дов (login: ) в Вашу систему, для правильной обработки входных запросов uucp (uucico) с удаленных машин. Каждая удаленная ма- шина должна иметь в своем файле Systems запись для Вашей маши ны, содержащую входной идентификатор и пароль, которые Вы ука- зали в Вашем файле /etc/passwd. Пример записи общего вида в файле /etc/passwd приведен ниже. |nuucp:????:6:1:UUCP.Admin:/usr/spool/uucppublic:/usr/lib/uucp/uucico Эта запись означает, что на требование nuucp входа в систему отвечает /usr/lib/uucp/uucico. Основной каталог пользователя есть /usr/spool/uucppublic. "????" будет заменено зашифрованным паролем, который должен быть создан с помощью passwd nuucp. Прочие сетевые файлы Существует три других файла, имеющих влияние на эксплуатацию базового сетевого обеспечения. В большинстве случаев, значения принятые по умолчанию превосходны, и никакие изменения не нуж- ны. Если Вы все-таки хотите поменять их, используйте стандарт- ный редактор системы UNIX (ed или vi). Maxuuxqts В этом файле определено максимальное количество программ uuxqt, которые могут работать одновре менно. Maxuuscheds В этом файле определено максимальное количество программ uusched, которые могут работать однов- ременно. remote.unknown Этот файл является управляющим файлом командно- го процессора, который выполняется, когда неиз- вестная машина вступает в диалог. Он регистри- рует попытку диалога и не дает установить связь. (Если Вы измените права доступа к файлу, так что он станет невыполняемым, Ваша система будет воспринимать любой запрос на диалог.) ПРОЦЕДУРА 9.2: СОПРОВОЖДЕНИЕ БАЗОВОГО СЕТЕВОГО ОБЕСПЕЧЕНИЯ | +------------------+---------------------------------------------------- | |Назначение |Удержать файлы, относящиеся к базовому сетевому обес | | |чению, от потребления слишком большого дискового пр | | |ранства. | +------------------+---------------------------------------------------- | |Когда выполняется |Автоматически, посредством cron(1M), или по потребно | +------------------+---------------------------------------------------- | |Начальные |Состояние системы - 2 (многопользовательский) ил | |условия |(однопользовательский режим). | +------------------+---------------------------------------------------- Утилиты базового сетевого обеспечения поставляются вместе с че тырьмя shell-процедурами, которые опрашивют удаленные машины, перепланируют передачи, приводят в порядок устаревшие протоколы и неуспешные передачи. Для поддержания гладкой работы Вашего базового сетевого обеспечения эти shell-процедуры должны выпол няться регулярно. Обычно они запускаются автоматически пос редством cron(1M), но могут запускаться и вручную. Небольшое количество областей, нуждающихся в наведении порядка, которые не обрабатываются при помощи этих shell-процедур, должны под- держиваться вручную. Автоматизированное сопровождение сети (cron) Утилиты базового сетевого обеспечения поставляются вместе с за- писями для shell-процедур uudemon и находятся в файле /usr/ spool/cron/crontabs/uucp. Упомянутые shell-процедуры содержатся в каталоге /usr/lib/uucp. Когда компьютер находится в состоянии 2 (многопользовательском режиме), cron просматривает файл /usr/spool/cron/crontabs/uucp каждую минуту на предмет записей, предназначенных для выполне- ния в данный момент. Будучи администратором пакета UUCP, Вы должны уметь обращаться с демоном cron и четырьмя shell-проце- дурами uudemon. uudemon.poll Shell-процедура uudemon.poll, в том виде как она поставляется, делает следующее: Один раз в час читает файл Poll (/usr/lib/uucp/Poll). Если некоторая машина из файла Poll запланирована к опросу, то в каталог /usr/spool/uucp/имя_узла помещается рабочий файл (C.sysxxxx); здесь имя_узла заменяется именем той машины. Этот управляющий файл включен в расписание для выполнения дваж- ды в час, как раз перед uudemon.hour, таким образом, чтобы к моменту вызова uudemon.hour рабочие файлы были на месте. По умолчанию запись в файле crontabs выглядит следующим образом: |1,30 * * * * /usr/lib/uucp/uudemon.poll>/dev/null uudemon.hour Поставляемая shell-процедура uudemon.hour делает следующее: Вызывает программу uusched для поиска в буферных каталогах рабочих файлов (C.), которые не были обработаны, и планирует передачу этих файлов удаленным машинам. Вызывает демон uuxqt для поиска в буферных каталогах выполня- емых файлов (X.), которые были переданы на Вашу машину и не были обработаны в момент передачи. По умолчанию запись в файле crontabs выглядит следующим обра- зом: |41,11 * * * * /usr/lib/uucp/uudemon.hour>/dev/null В том виде, как он поставляется, она выполняется дважды в час. Вы можете пожелать более частого исполнения, если предвидите большое количество сбоев. uudemon.admin Shell-процедура uudemon.admin, в том виде как она поставляется, делает следующее: Запускает команду uustat с опциями -p и -q. -q выдает отчет о состоянии рабочих файлов (C.), файлов данных (D.) и выполняе- мых файлов (X.), находящихся в очереди. -p печатает информа- цию о сетевых процессах, перечисленных в файлах (/usr/spool/ locks). Посылает полученную информацию о состоянии процедуры пользо- вателя uucp по электронной почте. По умолчанию для uudemon.admin нет никакой записи в файле /usr/spool/cron/crontabs/uucp. Рекомендуется следующая запись: |48 8,12,16 * * * /bin/su uucp -c"/usr/lib/uucp/uudemon.admin">/dev/null uudemon.cleanup Поставляемая shell-процедура uudemon.cleanup делает следующее: Берет файлы-протоколы для отдельных машин из каталога /usr/s- pool/uucp/.Log, объединяет их помещает их в каталог /usr/spo- ol/uucp/.Old вместе с другими старыми протоколами. Если про- токолы разрастаются, то может возникнуть необходимость увели- чения параметра ulimit. Удаляет рабочие файлы (C.) семидневной или более давности, файлы данных (D.) семидневной или более давности и выполняе мые файлы (X.) двухдневной или более давности из буферных ка- талогов. Возврашает отправителю почту, которая не может быть доставле на. Пересылает суммарную, собранную за текущий день информацию о состоянии процедуры пользователю uucp посредством сообщения электронной почты. По умолчанию для uudemon.cleanup нет никакой записи в файле /usr/spool/cron/crontabs/uucp. Рекомендуется такая: |45 23 * * * ulimit 5000;/bin/su uucp -c"/usr/lib/uucp/uudemon.cleanup |>/dev/null 2>&1" Сопровождение вручную Некоторые файлы могут разрастаться в результате деятельности uucp и прочего базового сетевого обеспечения. Имеется два фай- ла, которые Вам следует держать под контролем и уничтожать, как только они станут слишком большими. /usr/adm/sulog Этот файл хранит историю всех команд суперпользователя. Если строки файла /usr/cron/root для uudemon содержат ко- манду su, то sulog будет каждый раз увеличиваться. Вам следует удалить этот файл, если он станет слишком большим. /usr/lib/cron/log Этот файл является протоколом деятель- ности демона cron. Хотя файл и растет по мере использования, но он автомати- чески усекается, когда система перево- дится в многопользовательский режим. ПРОЦЕДУРА 9.3: ОТЛАДКА БАЗОВОГО СЕТЕВОГО ОБЕСПЕЧЕНИЯ | +---------------+------------------------------------------------------- | |Назначение | Применение доступных инструментов контроля для реше | | | проблем, возникающих при создании базового сетевого об | | | печения | +---------------+------------------------------------------------------- | |Начальные | Состояние системы - 2 (многопользовательский) или 1 ( | | условия | нопользовательский режим). | +---------------+------------------------------------------------------- | |Команды | uustat(1) | | | cu(1) | | | Uutry(1) | | | uuname(1M) | | | uulog(1) | | | uucheck(1) | +---------------+------------------------------------------------------- Процедуры описывают пути решения общих проблем, возникающих при эксплуатации утилит базового сетевого обеспечения. Проверка повреждений связи Вы можете несколькими способами проверить, правильно ли работа- ет устройство автоматического вызова или модем. Введите uustat -q. Вы получите информацию о количестве и при- чинах повреждений связи. Введите cu -d -lлиния. Тем самым Вы вызываете конкретную ли- нию связи и получаете отладочную информацию об этой попытке. Линия должна быть определена как Direct (непосредственное со- единение) в файле Devices. (Вы должны включить телефонный но- мер в конец командной строки, если линия присоединена к уст- ройству с автоматическим набором номера, или же устройство должно быть определено как direct.) Проверка файла Systems Если у Вас нарушена связь с некоторой машиной, то проверьте, отражает ли информация в Вашем файле Systems текущее состояние. Вот что может устареть для некоторой машины: Номер телефона Входное имя Пароль Передачи информации с отладкой Если Вы не в состоянии связаться с конкретной машиной, Вы може- те проверить коммуникационные связи при помощи Uutry и uucp. Шаг 1: Чтобы просто попытаться установить контакт, введите: |$ /usr/lib/uucp/Uutry -r машина где машина заменяется именем узла, в котором расположе- на машина, с которой у Вас есть проблемы контакта. Эта команда проделает следующее: 1. Запустит демон передачи информации (uucico) в режиме отладки. При этом, если Вы являетесь пользователем root, то получите больше отладоч- ной информации. 2. Направит отладочную выдачу в /tmp/машина. 3. Напечатает отладочную информацию на Вашем терм- нале (tail -f). Чтобы завершить выдачу нажмите BREAK. Если Вы хотите сохранить выдачу, то можете скопировать ее из /tmp/машина. Шаг 2: Если Uutry не позволяет установить причины затруднений, попытайтесь поставить в очередь задание, выполнив: |$ uucp -r файл машина!/каталог/файл где файл заменяется именем файла, который Вы хотите п редать, машина заменяется именем машины на которую Вы хотите его скопировать, а каталог/файл - это то место, куда Вы хотите поместить файл на той машине. Опция -r ставит задание в очередь, но не инициирует передачи. Теперь опять примените Uutry. Если Вы по-прежнему не решили проблемы, то Вам вероятно стоит вызвать обслужи- вающий персонал. Сохраните отладочную выдачу; это помо- жет диагностировать проблему. Проверка сообщений об ошибках Для утилит базового сетевого обеспечения имеется два типа сооб- щений об ошибках: ASSERT и STATUS. Список этих ошибок см. в Приложении B. | СООБЩЕНИЯ ТИПА ASSERT Когда процесс прерывается, сообшение типа ASSERT запи- сывается в файл /usr/spool/uucp/.Admin/errors. Такие сообщения включают в себя имя файла, идентификатор SCCS (sccsid), номер строки и текст. Эти сообщения обычно появляются в результате системных проблем. | СООБЩЕНИЯ ТИПА STATUS Сообшения типа STATUS сохраняются в каталоге /usr/spo- ol/uucp/.Status. Этот каталог содержит по отдельному файлу на каждую машину, с которой Ваш компьютер пытает- ся контактировать. В файлах содержится информация о статусе произведенной попытки связи и сведения о ее ус пешности. Проверка основных данных Имеется несколько команд, которые Вы можете использовать для получения информации о базовом сетевом обеспечении. uuname Пользуйтесь этой командой для получения списка машин, с которыми Ваша может контактировать. uulog Пользуйтесь этой командой для получения содержимого каталогов, содержащих про- токолы для конкретных станций. uucheck -v Запустите эту команду, чтобы проверить наличие файлов и каталогов, необходимых команде uucp. Кроме того, эта команда просматривает файл Permissions и выдает сведения о правах, которые Вы определи- ли.