名为工作目录不可写

名为工作目录不可写

我正在尝试按照说明在 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

相关内容