我正在尝试按照说明在 Debian Jessie 上设置 Bind9来自 Debian 的 Wiki。当我完成并尝试启动 BIND ( service bind9 start
) 时,我收到了可怕的 FAIL 消息。以下是我的 的结尾/var/log/syslog
:
...
Jul 5 20:23:16 debian named[8309]: command channel listening on 127.0.0.1#953
Jul 5 20:23:16 debian named[8309]: the working directory is not writable
Jul 5 20:23:16 debian named[8309]: isc_stdio_open '/var/log/update_debug.log' failed: permission denied
Jul 5 20:23:16 debian named[8309]: configuring logging: permission denied
Jul 5 20:23:16 debian named[8309]: loading configuration: permission denied
Jul 5 20:23:16 debian named[8309]: exiting (due to fatal error)
我似乎无法通过这里。我创建了chroot
目录结构,仔细检查了权限并按顺序运行了命令,但没有变化。
我该怎么做才能继续?我没有在这个系统上启用 SELinux。
答案1
“工作目录不可写”消息是一个警告,与随后的致命错误无关。您可以通过修复基目录的权限来消除该消息(根据该 wiki 页面上的说明,该目录似乎设置为 /var/bind9/chroot/var/cache/bind),但实际上没有必要这样做,不修复它会更安全。
致命错误是无法创建文件,named 认为是 /var/log/update_debug.log,但实际上是 /var/bind9/chroot/var/log/update_debug.log。我希望这将解决该问题:
mkdir /var/bind9/chroot/var/log
chown bind:bind /var/bind9/chroot/var/log
答案2
标准 debian bind9 版本上的正确目录是:/var/cache/bind
chown -R bind:root /var/cache/bind
rndc reload or service bind9 reload
tail -f /var/log/syslog
没有更多错误。
如果运行 chrooted,它将取决于您将目录设置到哪里,但原理是一样的。
答案3
错误很明显;但是您尝试从哪里启动安装程序?如果您尝试从其他位置启动,请尝试从 /tmp/ 或 /usr/ 启动,以确保不会出现非本地干扰。
您是否更改了 /var/named 的权限?如果这样做了,但不起作用,请转到 chroot 环境文件 (BIND.chroot.dist) 并进行更改
/set type=dir uname=root gname=wheel mode=0644
到
/set type=dir uname=bind gname=wheel mode=0755