Samba3系でファイルサーバを運用しています。Active Directoryのメンバサーバにしており、

/home/hoge というディレクトリを社内に公開しておりますが、以下のようなことをするにはどういう運用方法があるでしょうか?

・/home/hogeの直下にあるディレクトリに対しては、ディレクトリの削除・移動・コピー・リネームなどを禁止する
・但し、上記ディレクトリの中については、移動やコピー、削除などについては自由に行えるようにする

例:
/home/hoge/dir1/

上記の場合は、dir1の移動・削除はできないが、dir1/以下に作ったディレクトリやファイルに関しては自由に編集できる

また、特定のディレクトリに関して、そのディレクトリの名前の変更や移動・削除を禁止しつつ、その中についてはフルコントロールできる方法があればあわせてご教示いただければと存じます

回答の条件
  • 1人2回まで
  • 登録:2007/01/20 11:43:42
  • 終了:2007/01/27 11:45:02

回答(2件)

id:b-wind No.1

b-wind回答回数3344ベストアンサー獲得回数4402007/01/20 12:13:44

ポイント35pt

共有自体はフルコントロールにしておき、

$ chown root.root /home/hoge/
$ chmod 755 /home/hoge/
$ chmod 777 /home/hoge/dir1/

とする。

http://www.linux.or.jp/JM/html/gnumaniak/man1/chmod.1.html

ディレクトリに対する書き込み権限はディレクトリそのものではなく、そのディレクトリ以下の作成・削除・移動に対する権限を設定するものです。

id:JULY No.2

JULY回答回数966ベストアンサー獲得回数2472007/01/20 14:48:50

ポイント35pt

Samba3 で ActiveDirectory のメンバーサーバで、という条件ではありませんが、UNIX 系 OS のパーミッションとしては、Sticky bit というのを使うと、「書き込み権があるけど削除できないディレクトリ」は作れます。

たとえば、root ユーザで

# cd /tmp

# mkdir test

# chmod a+wt test または chmod 1777 test

とすると、

# ls -l

drwxrwxrwt 2 root root 4096 Jan 20 14:40 test/

といったパーミッションになります。

一見、このディレクトリに対して誰でも書き込めるパーミッションになっていますが、[drwxrwxrwt」の最後の「t」が Sticky bit が立っていることを表して、このディレクトリの所有者(この場合 root)以外は、ディレクトリ自体を削除することはできません。

しかし、このディレクトリの中には誰でも書き込むことができます。

Samba が動作している OS が ACL に対応していれば、Windows の NTFS に近い、細かいアクセス件の設定ができると思いますので、その場合は、そっちで設定するのが適切かもしれませんが、手元にそういう環境が無いので、とりあえず、UNIX のパーミッションで考えて、これで実現できると思います。

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません