[sisyphus] ez-ipupdate: критика
sergey ivanov
=?iso-8859-1?q?seriv_=CE=C1_parkheights=2Edyndns=2Eorg?=
Вт Июн 1 17:43:21 MSD 2004
Yura Zotov пишет:
>Обнаружил, что инитскрипт для ez-ipupdate срабатывает с ошибками.
>Разборки выявили как банальные опечатки, так и более
>принципиальные недочёты. На основе этого скрипта и
>/etc/init.d/template я написал новый скрипт, который работает как
>положено. Он прицеплен. Предлагаю включить в пакет ez-ipupdate
>новый скрипт вместо старого.
>
>P.S. Не совсем понял, какой смысл в выделении файла
>ez-ipupdate.pid в отдельный каталог /var/run/ez-ipupdate/.
>По-моему его было бы правильнее держать вместе с остальными
>pid-файлами в /var/run/. Ведь с lock-файлом вы (обращение к
>мантейнеру пакета) так и поступали, оставляя его в
>/var/lock/subsys/.
>
>
Большое спасибо за критику и за предложенный скрипт.
Я попытался разобраться с pid-файлом. Нашел способ, как его можно
держать в /var/run а не в специальной поддиректории. Для этого нужно:
1) передать создание этого файла start-stop-daemon'у, который работает с
правами root;
2) для этого передать с помощью хитрости, например, приклеив к параметру
$EZ_PID ключик --make-pidfile, который функциями
/etc/rc.d/init.d/functions напрямую не поддерживается;
3) и потом ещё надо отнять у ez-ipupdate функциональность демона,
отсоединяющегося от консоли в которой был запущен, иначе
start-stop-daemon получает pid не того процесса, который будет работать,
а того который создается для запуска
этого демона и тут же завершается.
Поэтому я решил что лучше оставить с pid-файлами как есть, то есть
создать для них поддиректорию в которую имеет право писать
непривилегированный юзер.
Однако мне показалось, что примерно ту же функциональность, что и
pid-файлы, обеспечивают lock-файлы. И тогда непонятно, чем может быть
оправдано одновременное применение /var/lock/subsystem/* файлов и
pid-файлов в одном скрипте. Я пробовал, и у меня функции condrestart и
condreload хорошо работали и с ипользованием просто пути к исполнимой
программе /usr/sbin/ez-ipupdate, и с использованием pid-файлов.
Однако я не решился удалить из стартового скрипта все упоминания об
lock-файлах, так как не нашел документации или описаний, из которых
можно было бы понять к чему это может привести. Если кто-нибудь
подскажет, буду очень благодарен.
Исправленная версия ez-ipupdate направлена в incoming.
С уважением,
Сергей Иванов.
Подробная информация о списке рассылки Sisyphus