ntp 設定ファイルを編集してログが出力されるようにします
編集するファイルはこれですわ。
vim /etc/ntp.conf
ファイル末尾に次を追加しますの。「logconfig」は、「=」の右側にスペースを入れないことがコツですわ。
logfile /var/log/ntpd.log logconfig =all
再起動も忘れずに♪起動時のログもバッチリ、指定しました /var/log/ntpd.log に記録されます。
/etc/init.d/ntpd restart
ntp ログのローテート設定をします♪
ローテート用のファイル /etc/logrotate.d/ntpd を作成しますの。
vim /etc/logrotate.d/ntpd
1行目ではもちろん、設定ファイルに記述しましたログファイルを指定しまして、内容はシンプルに次のようにいたします。
/var/log/ntpd.log { missingok notifempty copytruncate }
これで一安心ですわ。
作業の解説!お勉強♪
まずは設定ファイルの /etc/ntp.conf です。
追加した1行目の「logfile /var/log/ntpd.log」は簡単ですね。ログを出力するファイルをフルパスで指定、ですわ。
2行目の「logconfig =all」もおおよそ想像がつくと思いますの。どこまで詳しく出力するか、ログレベルの設定で、全て出力する指定ですの。ポイントは、「=」の右側にスペースを入れないことのようですの。
理由はよくわかりませんし、実は未検証ですけれども、参考にさせていただいたページがいずれもそのようになっておりましたので、そうなのだろうと自堕落的に考えております><。ともかく、次のページが大変参考になりました。感謝いたします!
続いて、ログのローテート設定ファイル /etc/logrotate.d/ntpd です♪
これは、箇条書きで済ませますわ。
- 1行目でどのファイルに対してローテート設定を行うかを指定
- missingok ログファイルがなければエラーメッセージを出力しない
- notifempty 元のログファイルが空なら、ローテーションしない
- copytruncate ログファイルをコピーして古いログファイルを作成し、コピー元のファイル内容は消去してログの記録を続ける
copytruncate を今回はじめて使用しました。ログファイルをコピーして、内容を削除するといいますのが簡潔な説明となります。ですけれども、混乱してしまいましたの。
logfile.log をコピーして、logfile.log.1 を作成します。次に logfile.log の内容を全て削除します。そして今まで通り logfile.log にログを記録します。
この指定が、copytruncate ですの。copy して、truncate する。名は体を表しておりますね♪
設定も楽ですけれども、copytruncate はコピーしてから削除するまでの間のログは記録されません、というデメリットがあるそうですの。なるほど、たしかにこの間に記録したとしても次に削除されてしまいますので記録に残りませんわね。
さて、次のページが参考になりました。わたくし自身も含んでおりますけれども、てへ♪ともかく、もうひとつの外部ページに感謝ですの。ありがとう存じます。
おわりに
ntp の動きがおかしかったですの。いつまで経っても時刻同期がなされません。では、ログを見てみましょうか!と調べまして???ログ、ないですの???となったことがきっかけでした。
大変勉強になり、嬉しく思います。
結局、その環境ではどうなったかと申しますと、たしかに同期はされず仕方がないのでローカルと同期するよ!というログを延々と吐き続け、結局その時は解決できませんでしたの。。。
以上です。