[samba-jp:19928] デフォルトパーミッション特に実行フラグについて

Adachi Junichi adachi @ jomon.ne.jp
2007年 12月 25日 (火) 11:33:05 JST


安達です。
いままでずっとWindowsからsambaを使ってきましたので
気にならなかったのですが,
最近linuxからsmbでマウント(正確には/sbin/mount.cifs )
して使うようになり,パーミッションの実行フラグに
苦慮しております。
「chmodで0700にできるが,普通にファィルを作ると0600になる」
というようにはできないものでしょうか。

linuxなどではファイルを作ると0644などとなり,
実行権をつけたいときには
chmod u+x などでできるようになっています。
ところがsmbマウントしたディレクトリでは smb.conf の create mode で
指定したものになってしまうようで,
create mode = 0700
とすると必ず実行権が付いてしまいます。
create mode = 0600
とすると後から実行権を加えることができません。
(もちろんサーバー側やnfs接続をすればできますが)
DOSには実行権という概念がないので無理もないところなのですが,
sambaで制限と,作成時のデフォルトを別に指定できると
簡単に解決できそうもに思います。

gnomeのファイルマネージャnautilusでは
実行権のあるファイルをダブルクリックすると
表示する(対応するソフトウェアを起動して読み込む)か,
実行するかを選ぶダイアログが出ます。
「実行する」を選ぶと実行します。
これは初心者にとって危険なことではないでしょうか。
linux(unix)では
デフォルトでは実行できないファイルができるようになってい
ます。しかもカレントディレクトリをパスをに含めないのが
安全とされています。
ここを考えるとsmbでファイルを作っても実行フラグがたたない
ようにしておくのが筋だと思うのですが,どうでしょうか。
Windows側でも困ることはないと思うのですが。
よい解決方法がないものでしょうか。

linux同士ならnfsを使えとおっしゃる方もあろうかと思いますが,
ユーザー認証のあるマウントが必要でpam_mountを使用しています。
将来的にはnfsv4が使えるのかとも思うのですが。


-- 
 安達 順一
  adachi @ jomon.ne.jp



samba-jp メーリングリストの案内