Como definir a cláusula de logging para um BIND chrooted?

0

Esta questão é um pouco semelhante a esta , mas a resposta que parecia ajudar mais é específico do Ubuntu, e isso está sendo executado no OSX 10.6.8.

Com esta cláusula de registro:

logging {
         category default {
                 _default_log;
         };

         channel _default_log  {
                 file "/var/chroot/named/var/log/query.log";
                 severity info;
                 print-time yes;
         };
 };

Eu recebo este erro no system.log:

isc_log_open '/var/chroot/named/var/log/query.log' failed: file not found

Este artigo sobre a cláusula de registro do bind9 no arquivo conf diz:

file 'path_name' is a quoted string defining the absolute path to the logging file e.g. "/var/log/named/namedlog.log".

Mas o conf está dentro da prisão em /var/chroot/named/etc/named.conf e eu gostaria que o log fosse escrito em /var/chroot/named/var/log/query.log , que está dentro da cadeia, ou /Library/Logs/named.log que está fora da cadeia (e é onde o log estava apontando para antes do chrooting). Qualquer que eu possa começar a trabalhar, tudo bem.

Qualquer ajuda é muito apreciada!

    
por Iain 13.01.2013 / 02:51

2 respostas

1

Como sua ligação está sendo executada dentro de um chroot da cadeia, seu caminho deve ser relativo a ele.

Para o vínculo chrooted, o diretório / começa em /var/chroot/named , portanto, você deve alterar o nome do arquivo para /var/log/query.log e certificar-se de que a associação tenha permissão para gravar em /var/log .

Além disso, você pode ter seus registros gravados em ambos os arquivos. Se a mudança acima funcionar, você pode vincular os dois arquivos ( /var/chroot/named/var/log/query.log e /Library/Logs/named.log ) em um usando, fora do chroot, o comando:

$ ln /var/chroot/named/var/log/query.log /Library/Logs/named.log

Isso fará com que você tenha o mesmo conteúdo nos dois locais. Mas, esteja avisado que remover um arquivo não removerá o outro, mas esvaziá-lo fará isso para ambos. Então, se você usa logrotate , ou programa similar, você precisará rodar ambos os arquivos e garantir que o link seja recriado toda vez.

    
por 13.01.2013 / 03:29
1

Altere o nome do arquivo na diretiva para /var/log/query.log .... Você está em uma área chroot que possui / var / chroot / named como sua raiz.

    
por 13.01.2013 / 03:30