The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Авторегистрация зон DNS на SLAVE сервере средствами PERL"
Отправлено AleR, 11-Фев-14 13:28 
Не уверен что в нужном разделе, но все же...
На просторах инета нашел perl скрипт для автоматической регистрации зон DNS с PRIMARY на  SLAVE сервере.

Файл из 2-х частей, сам скрипт соответственно
http://www.tourservice.kz/docs/ru/blog/2010/2/19/zoneadd
и
http://www.tourservice.kz/docs/ru/blog/2010/2/19/zoneadd.conf
conf файл настройки.

Попробовал с дебагом, получилось

main::(zoneadd:9):      my (оg);
  DB<1> n
main::(zoneadd:10):     open CFG,'/etc/zoneadd.conf' or die '/etc/zoneadd.conf '.$!;
  DB<1>
main::(zoneadd:11):     my $cfg=join "\n", <CFG>;
  DB<1>
main::(zoneadd:12):     close CFG;
  DB<1>
main::(zoneadd:13):     eval "$cfg";
  DB<1>
main::((eval 8)[zoneadd:13]:1): my оg=(
  DB<1>
main::(zoneadd:14):     die $@ if $@;
  DB<1>
main::(zoneadd:18):     if ( $cfg{'daemon'} ) {
  DB<1>
main::(zoneadd:30):     open ZONES, $cfg{'named.conf'} or die $cfg{'named.conf'}." ".$!;
  DB<1>
Use of uninitialized value in open at zoneadd line 30.
at zoneadd line 30
Use of uninitialized value $cfg{"named.conf"} in concatenation (.) or string at zoneadd line 30.
at zoneadd line 30
Нет такого файла или каталога at zoneadd line 30.
at zoneadd line 30
Debugged program terminated.  Use q to quit or R to restart,
  use o inhibit_exit to avoid stopping after program termination,
  h q, h R or h o to get additional info.

Т.е. как я понял он не может найти или прочитать named.conf
Решил тогда объеденить файл conf и сам скрипт, и запустил опять в дебаге zoneadd+zoneadd.conf

main::(zoneadd:16):     my оg=(
  DB<1>
main::(zoneadd:48):     if ( $cfg{'daemon'} ) {
  DB<1>
main::(zoneadd:60):     open ZONES, $cfg{'named.conf'} or die $cfg{'named.conf'}." ".$!;
  DB<1>
main::(zoneadd:61):     while (<ZONES>) {
  DB<1>
main::(zoneadd:62):             if ( /^zone\s+"([\w\.]+)"\s+{/ ) {
  DB<1>
main::(zoneadd:62):             if ( /^zone\s+"([\w\.]+)"\s+{/ ) {
  DB<1>
main::(zoneadd:62):             if ( /^zone\s+"([\w\.]+)"\s+{/ ) {
  DB<1>
main::(zoneadd:62):             if ( /^zone\s+"([\w\.]+)"\s+{/ ) {

В perl не очень то разбираюсь. А данная фича очень нужна на сервере.
Никто случаем не делал себе такую штуку?

 

Ваше сообщение
Имя*:
EMail:
Для отправки новых сообщений в текущей нити на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
  Введите код, изображенный на картинке: КОД
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру