Ubuntu
ntpd:權限被拒絕寫入 /var/log/ntpstats/(statsdir 目錄)
我在 Ubuntu 20.04 LTS 上執行 NTP 伺服器。伺服器工作正常,客戶端正確輪詢伺服器。但是當我想記錄統計資訊時,我不斷收到權限錯誤。
我試圖在 ntp.conf 中包含以下幾行:
statistics rawstats statsdir /var/log/ntpstats/ filegen rawstats file raw type day link enable
看的時候
systemctl ntp status
:mars 05 09:08:48 RD-NTP ntpd[3534] : can't open /var/log/ntpstats/raw.20210305: Permission denied mars 05 09:08:50 RD-NTP ntpd[3534] : can't open /var/log/ntpstats/raw.20210305: Permission denied mars 05 09:08:52 RD-NTP ntpd[3534] : can't open /var/log/ntpstats/raw.20210305: Permission denied mars 05 09:08:54 RD-NTP ntpd[3534] : can't open /var/log/ntpstats/raw.20210305: Permission denied
但對我來說,該目錄具有正確的權限
ls -al
:drwxr-xr-x 2 ntp ntp 4096 april 2 2020 .
在選擇預設文件夾之前,我嘗試使用我創建的一個並使用此命令在權限中添加 ntp :
chmod ntp:ntp /home/ubuntu/ntpstats/
,它不起作用所以我切換到這個,也不起作用。你知道為什麼 ntpd 一直出錯,即使 ntp 在文件夾上佔了上風嗎?
很可能導致您的權限問題的不是權限位,而是 AppArmor。
ntpd
Ubuntu 20.04 ( ) 上的預設 AppArmor 配置文件/etc/apparmor.d/usr.sbin.ntpd
包含:... /var/log/ntp w, /var/log/ntp.log w, /var/log/ntpd w, /var/log/ntpstats/clockstats* rwl, /var/log/ntpstats/loopstats* rwl, /var/log/ntpstats/peerstats* rwl, /var/log/ntpstats/protostats* rwl, /var/log/ntpstats/rawstats* rwl, /var/log/ntpstats/sysstats* rwl, ...
請注意,與正在生成的文件名相比,它所期望的文件名不匹配
ntpd
。如果您將 AppArmor 配置文件行引用rawstats
更改為:/var/log/ntpstats/raw* rwl,
並使用 重新載入 AppArmor
systemctl reload apparmor
,您的統計數據記錄可能會起作用。還要注意
loopstats
和peerstats
比 . 更有可能有助於診斷 NTP 問題rawstats
。(有關此內容的更多資訊,請參見http://doc.ntp.org/current-stable/monopt.html#types。)就個人而言,我認為如果您要費心記錄 rawstats,最好只擷取每個網路上的NTP數據包並使用wireshark或類似的協議分析器對其進行處理。