ГЛАВА 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) │ ------------- ------------------------------------------------ │Ссылка │Руководство по утилитам базового сетевого обес- │ │ │печения │ ------------- ------------------------------------------------ Следующая далее процедура позволяет создать среду базового се- тевого обеспечения и привести ее в действие. Это делается пос- редством подкоманд команды и текстового редактора. Последовательные шаги содержат инструкции по добавлению строк в три стандартных поддерживающих файла: 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 (многопользовательский)│ │условия │или 1 (однопользовательский режим). │ ------------ ------------------------------------------------- Утилиты базового сетевого обеспечения поставляются вместе с че- тырьмя 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 Пользуйтесь этой командой для получения содержимого каталогов, содержащих про- токолы для конкретных станций. check -v Запустите эту команду, чтобы проверить наличие файлов и каталогов, необходимых команде uucp. Кроме того, эта команда просматривает файл Permissions и выдает сведения о правах, которые Вы определи- ли.