NFS Server Debian 9 Stretch から NFS Client macOS 10.12.6 へのNFS Export / NFS Mount したディレクトリ内に resource folk (dot underscore ._ ファイル)が作れず lockd not responding, ビーチボールアイコンになる問題への対症療法

問題の表面的かつあいまいな記述. 具体的な export / mount option は書いてない.

Debian 7 以前から, Debianext3 filesystem を, NFS v3で macOS = OS X に static mount していた. しかし, 次のような不具合が, 両者のバージョンアップとともに発生するようになった.

  • Mount したディレクトリを mac OS の Finder で開き, 日本語の濁点半濁点を含むファイル名に変更/新規ファイルを保存しようとすると, 「そのファイル名は使えません」と言われる
  • Debian 側で Dropbox を動かして, 特定のディレクトリを, macOSの(NFS mountされたものでないHFS+ filesystem 上の)ディレクトリと同期していると「ファイル名(NFS Server ホスト名の競合コピー日付)」という名前で重複してファイルが作られることがある
    • 同時編集(NFS側も含め)しているわけではない

Debian 9 にバージョンアップした直後から, さらに次の問題が発生するようになった.

  • macOS 側で NFS mount されたディレクトリのファイルを Preview.app で編集したり, Microsoft Office でファイルを保存したりすると, busy cursor (ビーチボールまたは砂時計カーソル)となり, 保存できない
    • ターミナルで cp や touch してもこのようなことは起きない
  • この状態で, ターミナルから当該ディレクトリ内のファイルにアクセスすると,
nfs server サーバ名:ディレクトリ名: lockd not responding
nfs server サーバ名:ディレクトリ名: lockd live again

のような警告がでてアクセスできない.

砂時計になるのは,

  • ACL拡張の情報が resouce fork すなわち dot underscore ファイル( ._元のファイル名) に新たに保存されようとするとき,

であるようだ( resource forlk はしょせんただのファイル(名)であるので NFS transparent でないのは不思議に思えるが). このような事象のレポートとして次がある. ファイヤウォール(的にlockdのportが開いてるか)やNFSを確認しろとのことだが.

https://discussions.apple.com/thread/2733032?start=0&tstart=0

これに対する対症療法のひとつとして, NFS client 側で

mount -o locallocks ...

を指定すると解消することがわかっている. 副作用のありそうな療法である.