web-dev-qa-db-ja.com

Samba共有で作成されたファイルのデフォルトグループを設定する方法

ディレクトリを共有しています/home/pi/pydev Sambaを使用したdebianボックス(実際にはRaspberry Pi)で。私はWindows 7マシンからそのディレクトリを読み書きしています。私がW7の下でそのディレクトリにファイルを作成すると、それは0764権限を取得し、それはユーザーrolfとグループrolfによって所有されます-それはW7マシン上の私です。

Debianボックスのユーザーpiと(W7の)ユーザーrolfはどちらもそのディレクトリ内のファイルを変更できる必要があるため、両方をグループcodersのメンバーにしました。そのディレクトリ内のファイルへの少なくとも読み取りおよび書き込みアクセス権を持っている。 。

ただし、ユーザーpiはグループrolfに属するファイルを変更できません。

私はできた chmod rolf:coders <filename>ファイルごと。
ユーザーpiをグループrolfに追加することは醜く、機能しません(期待していませんでした。Sambaは、Debianとは別に、グループとはまったく異なるユーザー管理を維持していますか?)。
robianとしてdebianマシンにログオンし、そのフォルダに移動することもできます。

しかし、(私にとって)最もエレガントな方法は、W7マシンからrolfによって作成されたファイルがデフォルトでユーザーID rolfおよびgroupidコーダーを取得する場合です。

それを行うようにSambaを構成できますか、それともそのタスクを自動化する他の方法がありますか?

11
RolfBly

私があなたが正しく尋ねていることを理解しているなら、あなたが望むものはここにあるsmb.confの中にあります:

   /etc/samba/smb.conf

これらのオプションを[global]セクションに追加します。

   force user = rolf
   force group = coders
10
devnull

そのフォルダのグループにスティッキービットを追加してみてください

chmod 2770 foldername
find foldername -type d -exec chmod g+s {} \;
8
Abey