Следующая:Testing the Compilation, Следующая:Installing the Binaries, Предыдущая:Compilation, Вверх:Installing Taylor UUCP
Проверка откомпилированного пакета
Если ваша система поддерживает псевдотерминалы, и код компилируется
с поддержкой файлов конфигурации нового стиля (в файле policy.h
макро HAVE_TAYLOR_CONFIG
установлено в 1), то вы можете использовать
программу tstuu
для тестирования демона uucico
. Если Ваша система
поддерживает STREAMS псевдо-терминалы, то сборка программы tstuu.c
должна осуществляться с ключом -DHAVE_STREAMS_PTYS
. (Код для
потоков пожертвовал Marc Boucher).
Для того чтобы запустить tstuu
, напечатайте tstuu
без
параметров. Запускать данную программу следует в каталоге компиляции,
так как при этом запускаются ./uucp
, ./uux
и ./uucico
. Программа
tstuu
выполняет длинную серию испытаний (что занимает порядка десяти
минут на медленном VAX). При этом требуется достаточное количество
пространства в /usr/tmp
. Кроме того, по всей видимости, Вам
захочется запустить программу в фоновом режиме. Для этого не
используйте ^Z, потому что программа перехватывает сигналы SIGCHLD
и завершает свою работу. Программа tstuu
создает каталог
/usr/tmp/tstuu
, в котором размещает конфигурационные файлы, кроме
того, создаются spool каталоги /usr/tmp/tstuu/spool1
и
/usr/tmp/tstuu/spool2
.
Если ваша система не поддерживает вызов FIONREAD
, программа
tstuu
будет выполняться очень медленно. Этот может быть исправлено,
а может быть, и не исправлено в более поздней версии.
Программа tstuu
заканчивает работу с исполнением файла по имени
X.something
и файла данных по имени D.something
каталоге /usr/tmp/tstuu/spool1
(или, более вероятно, в подкаталогах,
в зависимости от выбора SPOOLDIR
в файле policy.h
). В каталоге
/usr/tmp/tstuu
создаются два журнала. Они называются как Log1
и Log2
, или если в policy.h
выбрано HAVE_HDB_LOGGING
,
то данные файлы называются Log1/uucico/test2
и Log2/uucico/test1
.
В этих файлах не должно быть никаких ошибок.
Вы можете оттестировать программу uuxqt
запустив ./uuxqt -I
/usr/tmp/tstuu/Config1
. При этом должны остаться файл команд
C.something
и файл данных D.something
в каталоге
/usr/tmp/tstuu/spool1
в его подкаталогах. В журнале не должно быть
никаких ошибок. Кроме того в log файлах не должно быть также сообщений
о ошибках.
Предположим что код откомпилирован с разрешением кода отладки,
опция -x
может использоваться для установки режимов отладки; смотри
команду debug
(смотрите Debugging Levels). Для того чтобы включить
всю отладку используйте -x all
. Демон uucico
помещает отладочный
вывод в файл Debug1
и Debug2
каталога /usr/tmp/tstuu
.
На некоторых системах Вы можете также использовать tstuu
, чтобы
проверить uucico
вместо системного uucico
, используя опцию -u
.
Для того, чтобы это работало, замените определения ZUUCICO_CMD
и
UUCICO_EXECL
верхнего файла tstuu.c
на соответствующие значения
для вашей системы. Определения в файле tstuu.c
это те определения,
которые использовались в Ultrix 4.0, на котором особенно трудно
запустить /usr/lib/uucp/uucico
в качестве дочернего процесса;
это можно было выполнить только, создав пользователя с именем входа в
систему, но без пароля, и с командной оболочкой /usr/lib/uucp/uucico
.
При входе в систему, таким образом, в файлы wtmp
и utmp
будут
записаны отдельные элементы; если программа tstout.c
(каталога
contrib
) собирается как программа setuid root
, tstuu
запускает эту программу, для того чтобы убрать данные записи. Для большинства
систем, так не следует действовать, хотя под SCO я должен был
выполнить команду su, чтобы стать root
прежде, чем я смог запустить
/usr/lib/uucp/uucico
.
Также можно оттестировать uucp
и uux
запустив их с ключом -r
,
(для блокировки запуска uucico
) и проверив, что программы создают
правильные файлы. К сожалению, если вы не знаете, какими должны
выглядеть правильные файлы, я (автор) не собираюсь приводить их здесь.
Если не возможно запустить tstuu
, или он завершается неудачно,
то не следует слишком сильно об этом волноваться. На некоторых
системах программа tstuu
завершается неудачно из-за проблем,
связанных с использованием псевдо терминалов, которые при нормальном
выполнении не используются. При реальном тестировании пакет
взаимодействует с другой системой.