表題どうり。
結構前から問題として認識はあったのですが、社内にもMACユーザーが半数近くになっていて問題が大きくなってきましたので対応。
問題点のおさらい
Linuxで作ったsambaサーバーへMACをクライアントとして接続した時。
新規ファイル/ディレクトリの作成を行うと、
・所有者がsambaへの接続ユーザー
・パーミッションが700とか600とかになる
という問題。
当然他のユーザーから見れず、この問題が起こる度にサーバーにログインしてchmod やchownしてました。
sambaの設定としては
1create mask = 0777
2directory mask = 0777
3
といった設定を入れているのにMacからのみどうやら無視されている様子。
ちなみにWindowsではこんな事はありませんでした。
解決策
ぐぐると同様の原因で困っている人がたくさんいました。
解決策は以下の通り。samba設定の[global]内に以下を記述
vi /etc/samba/smb.conf
1unix extensions = no
2
続いて再起動を行うと問題は解決しました。
unix extensions?
sambaのmanには以下の記述
http://www.samba.gr.jp/project/translation/3.5/htmldocs/manpages-3/smb.conf.5.html
1この真偽値パラメーターは、Samba が HP 社によって定義された CIFS のUNIX拡張を利用するかどうかを制御する。 これらの拡張は、UNIX クライアントからUNIX サーバーに対して接続する際に有用な CIFS を有効にし、シンボリックリンクやハードリンクなどを利用可能にする。 これらの拡張により、Samba はUNIX の CIFS クライアントに対して、シンボリックリンクやハードリンクといった機能を提供することが可能となる。
2既定値:unix extensions = yes
3
つまりクライアントがUNIX系のクライアントの場合は拡張機能が使えるようになる、というオプションみたいです。
ただ同時にバグか仕様かはわかりませんが、create maskとかが無視される様子です。
(Windowsの場合はこの項目は無視されていたのだと思います。)
特にシンボリックリンクなどの使用は考えてませんし、現状maskが無視される方が問題なのでnoに設定しました。