Ротация логов bind средствами самого bind, создаем конфиг:

logging {
        channel update_debug {
                file "/var/log/named-update.log" versions 6 size 512K;
                severity        debug 3;
                print-category  yes;
                print-severity  yes;
                print-time      yes;
        };
        channel security_info {
                file "/var/log/named-auth.log" versions 6 size 512K;
                severity        info;
                print-category  yes;
                print-severity  yes;
                print-time      yes;
        };
#       channel queries {
#               file "/var/log/queries" versions 6 size 10m;
#               print-time      yes;
#               print-category  yes;
#               print-severity  yes;
#       };

#       category queries { queries; };
        category update { update_debug; };
        category security { security_info; };
};

Обратите внимание на опцию:

file "/var/log/named-update.log" versions 6 size 512K;

Директива file указывает на файл, куда нужно писать логи, а опция versions задает количество лог-файлов, size задает размер лог файла, при достижении которого нужно произвести ротацию.

И подключаем в named.conf

include "/etc/namedb/log.conf";

! ! ВАЖНО ! ! !

Не используйте newsyslog для ротации логов bind, т.к. он не поддерживает переоткрытие лог-файла, а после того как newsyslog произведет ротацию и создаст новый файл bind потеряет дескриптор (inode) прежнего лог-файла и перестанет писать логи, мало того bind перестанет еще и обновлять ddns зону! Поэтому разумнее использовать либо встроенные средства ротации логов, либо перенаправить логи в syslog.


Ссылки по теме:

  1. BIND Configuration File Guide - logging Statement
  2. Bog BOS: DNS сервер BIND