我想在chroot环境中配置ntp守护进程。我正在起诉的操作系统是Debian 9.1,内核3.16.0-4-686-pae
服务运行为: /usr/sbin/ntpd -p /var/ run /ntpd.pid -i /var/chroot/ntp -u ntp:ntp -l /var/log/ntpd.log
我面临的问题是:
1) ntp守护进程无法解析DNS名称,但其工作方式与预期的IP地址相同。我在chroot路径中丢失了什么特殊文件吗?
ntpd[2936]: retrying DNS 1.gr.pool.ntp.org: Name or service not known (-2)
ntpd[2936]: retrying DNS 1.europe.pool.ntp.org: Name or service not known (-2)
ntpd[2936]: retrying DNS 0.europe.pool.ntp.org: Name or service not known (-2)
ntpd[2936]: retrying DNS 0.gr.pool.ntp.org: Name or service not known (-2)
ntpd[2936]: retrying DNS 0.pool.ntp.org: Name or service not known (-2)
ntpd[2936]: retrying DNS 1.pool.ntp.org: Name or service not known (-2)
ntpd[2936]: retrying DNS 2.pool.ntp.org: Name or service not known (-2)
ntpd[2936]: retrying DNS 3.pool.ntp.org: Name or service not known (-2)2)虽然ntp服务器以"-i /var/chroot/ntp“开头,但并非ntpd.conf中的所有路径都与此目录相关。例如:
driftfile var/lib/ntp/ntp.漂移
logfile /var/chroot/ntp/var/log/ntpd.log
日志文件需要整个路径;ntpd是否应该能够访问chroot之外的文件?
发布于 2017-10-10 16:18:13
在chroot中运行软件时,需要在chroot中安装必要的系统库和设置,这样软件才能正确运行。例如,链接库需要在chroot中。可以使用ldd -v来显示特定应用程序使用的库。
如果您运行chroot以便您的chroot目录是/var/chroot/ntp,那么它将是chroot中的/目录。因此,例如,logfile /var/chroot/ntp/var/log/ntpd.log将指向主文件系统中的/var/chroot/ntp/var/chroot/ntp/var/log/ntpd.log。
因此,在您的情况下,您需要设置logfile /var/log/ntpd.log。
发布于 2017-10-11 09:52:09
在更改/etc/nsswitch.conf之后,这个问题得到了部分解决。
从…
主机:文件dns
至
主机: dns
现在dns查询工作正常。第二个问题仍然存在: PID文件和日志必须更改为绝对路径,而不是与chroot目录相关。
ntp守护进程是否在创建日志文件后丢弃特权?
https://serverfault.com/questions/877793
复制相似问题