OSX から Samba 共有がマウントできない

自宅サーバ上で動作させている Samba、今まで特に問題なく自宅の他のマシン (Linux、Mac OSX、Windows) からマウントして使っていました。

それが昨日、突然ある1台のマシンからのみ、マウントできなくなってしまいました。

結局解決はできたのですが、なぜこうなったのかは未だに疑問です。

というわけで、以下、解決への流れを。





自宅サーバ (Vine Linux 5.1/x86_64) 上で動かしている samba-3.3.10。

その共有にアクセスしているクライアントマシンは以下の通り。

  • VineSeed/ix86
  • VineSeed/ppc
  • Mac OS X 10.5.8 Intel
  • Mac OS X 10.5.8 PowerPC
  • Windows Vista Home Basic
  • Windows Vista Home Premium

このうち、なぜか OSX Leopard PowerPC のみ、昨日の朝からマウント不可能になってしまいました。マウントできない時のメッセージは以下の通り。


[OSX Finder - Mounting SMB Public]

[OSX Finder - Mounting SMB Public]

[OSX Finder - Mounting SMB Public]

[OSX Finder - Mounting SMB Public]

エラーコード -6602 ってなんですか。。。

マウントに失敗した時の Samba 側のエラーログはこんな感じ。


[2010/07/29 15:54:27,  0] lib/util_sock.c:matchname(1749)
  matchname: host name/address mismatch: ::ffff:192.168.0.251 != elmo
[2010/07/29 15:54:27,  0] lib/util_sock.c:get_peer_name(1870)
  Matchname failed on elmo ::ffff:192.168.0.251
[2010/07/29 15:54:27,  1] librpc/ndr/ndr.c:ndr_pull_error(467)
  ndr_pull_error(11): ndr_pull_advance by 536870910 failed
[2010/07/29 15:54:27,  1] librpc/ndr/ndr.c:ndr_pull_error(467)
  ndr_pull_error(11): Pull bytes 2
[2010/07/29 15:54:27,  0] rpc_server/srv_pipe.c:api_rpcTNP(2381)
  api_rpcTNP: srvsvc: SRVSVC_NETSHAREENUMALL failed.

はっきりいって、ようわからん。。。


手動でマウントできるかどうかをターミナルから確認。


elmo:~ shaolin$ mkdir /tmp/hoge
elmo:~ shaolin$ mount_smbfs //homeuser:(パスワード)@oscar/Public /tmp/hoge

なんの問題もなくマウントされます。Finder にもフツーに登場。

マウントに成功した時の Samba 側のエラーログはこんな感じ。


[2010/07/29 16:19:11,  0] lib/util_sock.c:matchname(1749)
  matchname: host name/address mismatch: ::ffff:192.168.0.251 != elmo
[2010/07/29 16:19:11,  0] lib/util_sock.c:get_peer_name(1870)
  Matchname failed on elmo ::ffff:192.168.0.251
[2010/07/29 16:19:11,  0] lib/util_sock.c:matchname(1749)
  matchname: host name/address mismatch: ::ffff:192.168.0.251 != elmo
[2010/07/29 16:19:11,  0] lib/util_sock.c:get_peer_name(1870)
  Matchname failed on elmo ::ffff:192.168.0.251
[2010/07/29 16:19:11,  1] smbd/service.c:make_connection_snum(1119)
  __ffff_192.168.0.251 (::ffff:192.168.0.251) connect to service public initiall
y as user homeuser (uid=570, gid=570) (pid 24231)

さて、何が違うのやら。


そういえば、Finder からマウントした場合、普通は /Volumes/Public といった風に、/Volumes 以下にマウントポイントが作られるんやったよなぁ、と、以下を試す。


$ mkdir /Volumes/Public
mkdir: /Volumes/Public: Permission denied

ん? /Volumes のパーミッションがおかしいのか?


elmo:~ shaolin$ ls -lad /Volumes
drwxr-xr-x@ 5 root  admin  170 Jul 29 16:24 /Volumes

そらあかんわ。。。マウントしたくてもマウントポイントが作られなくてエラーになっていた、というところでしょうか。

というか、なんでこうなってもうたんやろう。謎。ちなみにこの OSX Leopard PowerPC マシンは、ずっと立ち上げっぱなしでした。

ちなみに、フツーの OSX ではこんな感じ (のはず)。


bart:~ shaolin$ ls -lad /Volumes
drwxrwxrwt@  3 root  admin   102  7 29 15:27 /Volumes

というわけでパーミッションを修正。


elmo:~ shaolin$ sudo chmod 1777 /Volumes 
Password:
elmo:~ shaolin$ ls -lad /Volumes 
drwxrwxrwt@ 5 root  admin  170 Jul 29 16:24 /Volumes

ついでに、なぜか Finder 上で /Volumes フォルダが見えるようになってたので、こちらも修正。


elmo:~ shaolin$ sudo SetFile -a V /Volumes

なんでパーミッションやら EA (拡張属性) やらが変わってしまってたのかは謎やけど、とりあえず意図する動作に戻ったということで、よしとしましょう。





Pages

Powered by Movable Type 4.23-en

About this Entry

This page contains a single entry by Shaolin published on July 29, 2010 4:37 PM.

Phoenix Slides was the previous entry in this blog.

iScrob - a perfect replacement for iPod app is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.