samba越しにファイルを編集していると、誰も裏で同じファイルを更新しているわけではないのに「ファイルが更新されてます」みたいに言われました。かなり頻繁に。結論から言えば、ntpで時計を合わせてやる必要があるみたいです。
参考サイト:
- Gentoo Forums :: View topic – Samba CIFS file “changed on disk”
- CentOSにntpサーバを入れて、日本標準時刻に自動的に合わせるためのメモ – Qiita
問題
sambaで共有しているディレクトリをマウントし、そのファイルをemacsで編集していると、以下のようなメッセージが出ました。
[ファイル名] changed on disk; really edit the buffer? (y, n, r or C-h)
emacsの裏で対象のファイルを更新などすると出るやつですね。ただ、このときは誰もこのファイルを編集していないです。でも出るのです。かなり頻繁に。
毎回”y”や”r”を押すのも面倒だし気持ち悪い。どうしたものか…
解決
ググったら、上記参考サイトで同様の問題が質問されてました。で、解決されてました。たった一行で。要はntp使って時刻同期させとけよ、って話でした。デフォルトでは動いてないんですね。
[root@localhost ~]# yum install ntp
[root@localhost ~]# vi /etc/ntp.conf
### 以下コメントアウト
# server 0.centos.pool.ntp.org iburst
# server 1.centos.pool.ntp.org iburst
# server 2.centos.pool.ntp.org iburst
# server 3.centos.pool.ntp.org iburst
### 以下追加
server -4 ntp.nict.jp
server -4 ntp1.jst.mfeed.ad.jp
server -4 ntp2.jst.mfeed.ad.jp
server -4 ntp3.jst.mfeed.ad.jp
[root@localhost ~]# systemctl start ntpd
[root@localhost ~]# systemctl enable ntpd
同期先のサーバーは好きものを選べばいいと思います。プロバイダでも公開しているみたいですね。あともちろん、設定した後はちゃんと時刻を取得できているかとか確認してくださいね。