はじめに

Snow Leopardでnfsマウントしようとしたら詰まったので、ここに手順を書いておきます。nfsについてはNetwork File System – Wikipediaを参考にしてください。

nfsサーバー側の設定

ネットワーク構成はこのような感じです:

nfsサーバーの設定は「Electronic Genome – Ubuntu + NFSサーバでファイル共有」を見て実施しました。結果的には、

  1. パッケージのインストール
  2. /etc/exports の設定
  3. /etc/exports の設定の反映

を実施すれば大丈夫でした。

NFSクライアント(Snow Leopard)側の設定

NFSサーバ側は特に問題がなかったのですが、クライアント側では問題がありました。

そこで検索をしてみると、「yamaq blog » OSXからLinuxのnfsマウント」を発見しました:

まずは前回の補足から。Finderの「サーバへ接続」ウィンドウからNFS領域をマウントする方法を紹介したが、LinuxやSolarisなど他のUNIX系OSで公開されているNFS領域をマウントできないことがある。Linuxを例にすると、最近のLinuxディストリビューションの多くが1024番以下の特権ポートをNFSのデフォルトとしているため、1024番以上のポートを使うようにマウントしなければならないからだ。

【コラム】OS X ハッキング! %2814%29 OS XでNFSを利用する%282%29 | パソコン | マイコミジャーナル

これが原因で、nfsのマウントに失敗していました(ここも参考になりました: 「聖アンドレアスの失敗: Mac OS から NFS mount する」)。

回避するには、

% sudo mount_nfs -P linux:/mnt/cdrom /tmp

【コラム】OS X ハッキング! %2814%29 OS XでNFSを利用する%282%29 | パソコン | マイコミジャーナル

mount_nfsコマンドをpオプションで実行すればよいというものでした。これでマウントできたぞ。

起動時に自動でマウントする方法

当初私は、「Snow Leopard で ディスクユーティリティを使わずにうまく NFS マウントする方法」を参考にしたのですが、うまくいきませんでした。

おそらく自動起動時のマウントコマンドはpオプションをつけていないことが問題だと思って検索してみました。すると発見!

Most NFS servers require mount requests to come from “secure” ports (ports <1024) but it appears the Mac NFS client does not adhere to this by default. So, to fix this edit /etc/autofs.conf and add “resvport” to the options line:

AUTOMOUNTD_MNTOPTS=nosuid,nodev,resvport

Note you have to be root to edit that file.

Jeff’s Place » Blog Archive » Mac OS-X Server as a NIS Client with Automount

結局、下記のように

  • /etc/autofs.conf
  • /etc/auto_master

を編集すると自動で/net配下にマウントされ、finder上で表示されるようになりました:

kazu634@kazu634% diff /etc/auto_master.20091225bk /etc/auto_master                          ~ [920]
5c5
< /net                  -hosts          -nobrowse,hidefromfinder,nosuid
---
> /net                  -hosts          -nosuid,nolocks,locallocks
kazu634@kazu634% diff /etc/autofs.conf.20100106bk /etc/autofs.conf                          ~ [919]
39c39
< AUTOMOUNTD_MNTOPTS=nosuid,nodev
---
> AUTOMOUNTD_MNTOPTS=nosuid,nodev,resvport

結果