Debian – chroot ntpd问题

我想在chroot环境中configurationntp守护进程。 我起诉的操作系统是Debian 9.1,kernel 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守护程序无法parsingDNS名称,但其IP地址正常工作。 我是否缺lesschrootpath中的任何特殊文件?

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中的所有path都与这个目录相关。 例如:

ntp.conf

漂移文件var /lib/ntp/ntp.drift

日志文件/ var /chroot/ntp/var/log/ntpd.log

日志文件需要整个path; 应该ntpd能够访问chroot目录之外的文件?

在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

更改/etc/nsswitch.conf后,问题部分解决了

主机: 文件 dns

主机:dns

现在DNS查询正在工作。 第二个问题仍然存在:PID文件和日志必须更改为绝对path,而不是与chroot目录相关。

ntp守护程序在创build日志文件后是否删除特权?