hibitekitou
AFPでのマウントポイントを任意の位置に設定する
mac |2011-10-01
Thnderbolt? なんですか、それは?
これはFirewire 800で繋がっています。バスパワーで動くからコンセントを消費せずに便利なんです。Blackmagicのツールでチェックすると、書き込み60MB/s、読み込み80MB/s程度出ました。こいつをLion Serverの動くMac miniにぶら下げて、共有させようと考えています。
さて、どのMacからもこいつの共有フォルダを同じパスとして認識させるにはどうすべきでしょうか。
サーバーにより共有された共有フォルダの名前がShareであるとします。別のサーバーでもShareという名前で共有がかけられているフォルダが存在しているとします。そうした時、両者を普通にFinderからマウントしてみます。同じShareという名前がどうのように区別されるかというと
/Volumes/Share
/Volumes/Share 1
というように2つのShareという名前の共有フォルダが/Volumesにマウントされる際、ボリューム名の後ろに数字が添付されるわけですね。もちろんFinderからはどちらもShareって名前で見えるのですけど、ターミナルとか、例えばmayaなんかでこのボリュームを見ると、片方は/Volumes/Shareであり、もう片方は/Volumes/Share 1である、というようになるわけです。
しかも、数字がどう添付されるかはマウントされるタイミング次第であり、結果として、その共有フォルダのパスが一定しないわけですね。
そこでUNIX的にはNFSを使い、適当な場所にマウントすることになります。
例えば、サーバー1のShareは/SERVERS/Server1_Share、サーバー2のShareは/SERVERS/Server2_Shareとかいう場所と名前で必ずマウントするようにし、その設定をすべてのクライアントで行っておけば、すべてのマシンでいつでも同じ名前でサーバーの共有フォルダを見ることが出来ます。
しかしNFSはLion ServerではGUIで設定を行えないようになっているし、クライアントからはNFS経由ですとファイルの検索が行えない(Spotlight検索を行えない)とか、ファイルにラベルを付けられないとか、そんなこんなMac的に不都合が結構あるんです。
というわけで、Mac的にはAFPで共有フォルダをマウントできればこんなにいいことはないというわけですね。しかし、Finderからマウントすると前述した問題が生じます。そこで、利用するコマンドが
mount_afp
です。
sudo -u [クライアントにログイン中のユーザ名] mount_afp afp://[サーバにログインするユーザ名]:[パスワード]@[サーバ名もしくはIP]/[共有フォルダ名] [マウントポイント]
というコマンドになります。ちなみにLeopardではsudo -u部分はいらないみたいですね。例えば、クライアントマシンにログインしているuserAというアカウントから、MacServer.localというマシンのShareフォルダを /SERVERS/Shareにマウントするには
sudo -u userA mount_afp "afp://serverUser:userPassWord@MacServer.local/Share" /SERVERS/Share
です。serverUser:userPassWordの部分は、サーバにserverUserという名前でuserPassWordというパスワードでログインする、という意味です。
これをAppleScriptを使ってログイン時に実行するようにすれば大丈夫、のはずです。
実際にやってみますと、とりあえずMayaからは意図した通りのパスで認識されております。
afpでマウントしているので、Finderから検索もできますし、ラベル付けも出来る。
問題はスクリプト内にユーザ名とパスワードが平文で記入されているために、セキュアじゃないってことっすな。これ、どうにかできないものなのかな?
なお、Windows同士では\\PC名\\共有フォルダ名 というアクセスが可能なので、マウント時の名前を一定させるためにする苦労はあんまり無いんですよね。Windowsはそこだけがうらやましいですな。
コメント ( 2 )|Trackback ( )
コメント |
|
|
コメントを投稿する |
ブログ作成者から承認されるまでコメントは反映されません |