OS XのNFSクライアントとUnicode正規化

最近身近で困ったので。

Mac OS Xではファイル名はNFDで正規化されているので、NFCでファイル名が正規化されたファイルシステムをそのままNFSでマウントすると、濁音や半濁音などが混じったファイル名を正しく扱うことができません。

mount_nfs(8)を参照すると、nfcというオプションがあります。このオプションを指定してマウントすると、NFSサーバとのやりとりをする際にファイル名をNFCで正規化するため、濁音や半濁音などが混じったファイル名でも正しく扱うことができるようになります。

mount_nfs(8)にも記載がありますが、/etc/nfs.confにマウント時のデフォルトオプションを記述することができます。私の周辺では、ファイル名をNFDで正規化するNFSサーバは存在しないので、/etc/nfs.confに

nfs.client.mount.options = nfc

と書きました。これにより、FinderからNFSサーバを指定してマウントした場合でも上記オプションが指定されます。