Sambaで生成されたファイルがクライアントオペレーティングシステムによって異なるACL(マスク)権限を取得するのはなぜですか?

Sambaで生成されたファイルがクライアントオペレーティングシステムによって異なるACL(マスク)権限を取得するのはなぜですか?

私はDebian Jessieを新しくインストールしてこれをテストしましたが、他のコンピュータでもこの問題がありました(例:Ubuntu 12.04)。基本設置以外に、、sudosamba設置してみましたcifs-utils

デフォルトのACLを使用する共有ディレクトリ

ルートファイルシステムでACLを有効にして共有ディレクトリを作成しました。

sudo mount -o remount,acl /
mkdir -p /home/ryan/shared
setfacl -d -m u:ryan:rwx /home/ryan/shared

サンバ構成

すべてのデフォルト値を維持し、/etc/samba/smb.conf共有を追加しました。

[shared]
    comment =
    path = /home/ryan/shared
    writable = yes
    valid users = ryan

Sambaユーザーを追加

その後、自分をSambaユーザーとして追加し、サービスを再起動しました。

sudo smbpasswd -a ryan
sudo systemctl restart smbd

Linuxクライアント

次に、Samba共有用のマウントポイントを作成し、それをマウントして空のテキストファイルを作成しました。

mkdir -p /home/ryan/mnt/shared
sudo mount -t cifs -o user=ryan //127.0.0.1/shared /home/ryan/mnt/shared
touch /home/ryan/mnt/shared/linux.txt

Windowsクライアント

また、Windows 8コンピュータから接続してwindows.txt

共有ディレクトリのリスト

以降のディレクトリのリストは/home/ryan/shared次のとおりです。

-rw-r--r--+ 1 ryan ryan 0 Jun 20 23:45 linux.txt
-rwxrwxr--+ 1 ryan ryan 0 Jun 20 23:46 windows.txt

ファイルACL

ACLはlinux.txt次のとおりです。

# file: linux.txt
# owner: ryan
# group: ryan
user::rw-
user:ryan:rwx           #effective:r--
group::r-x              #effective:r--
mask::r--
other::r--

ACLはwindows.txt次のとおりです。

# file: windows.txt
# owner: ryan
# group: ryan
user::rwx
user:ryan:rwx
group::r-x
mask::rwx
other::r--

質問

Linuxクライアントは、私が期待したように正確に動作します。 Windowsクライアントを使用するときはなぜ違いますか? WindowsクライアントにLinuxクライアントと同じ権限を設定させるにはどうすればよいですか?

ベストアンサー1

Sambaにクライアントから送信されたすべてを標準化させることができますman smb.conf。たとえば、次のようになります。

create mask = 0775
force create mode = 0660
directory mask = 2775
force directory mode = 2771

おすすめ記事