私はWindows Serverを実行しましたが、NASでファイルを共有するのはとても簡単でした。私は必要な方法で動作するようにほとんどの権限を計算し、ほとんどSambaを使用してファイルを提供しました。
私が経験した唯一のことは、各クライアントにマッピングする共有ファイルフォルダを作成することでした。 Linuxは常に755権限を持つユーザーの下にファイルとフォルダを作成しているように見えるため、このフォルダに何かが作成されると、他のユーザーはそれを変更または削除できません。
Windows / NTFSでは、共有ファイルフォルダを「R + W」に設定し、その下のすべての項目にこの設定を継承させることができました。つまり、そのフォルダは意図したとおりにすべての人に無料で提供されました。 Linuxでこれを行う方法が見つかりませんでした。
Ubuntu Server 16.04.3 LTS
答え1
共有ルート(つまり、SAMBApath
ディレクティブ)の権限を077x
(またはいずれかの場合x
があります0
)に設定し、SAMBAに権限を処理させる。 SAMBA共有に対応するファイルシステムのファイルにアクセスする方法が異なる場合は、UNIX / Linuxファイルシステム権限とSAMBA権限を混在させることができます。5
7
force user
すべてのユーザーを同じにするには、このディレクティブを使用します。これにより、共有にアクセスするすべてのユーザーがUNIX / Linuxファイルシステムで同じユーザーと見なされます。 (これは認証とは関係ありません。個人アカウントを設定した場合、ユーザーは引き続き個人アカウントを使用して認証できます。)
これはこれを行う共有の例です。 " remote
"ユーザーとグループは、これらのファイルを所有するローカルUNIX / Linuxアカウントです。 ' family
' グループは、私と私の家族が共有を確認するために使用するアカウントのセットです。
[Family]
comment = Shared
valid users = @family
path = /home/remote/shared
vfs objects = recycle catia
browseable = Yes
read only = No
force user = remote
force group = remote
force create mask = 0664
force directory mask = 0775
答え2
あなたはそれを使用することができますcreate mask
そしてdirectory mask
グループメンバー(または全員)がファイルを変更できるように、より許容できるumaskを構成するオプションを構成します。
たとえば、
create mask = 0775
directory mask = 0775
そして彼らだけforce crate mode
そしてforce directory mode
オプション。有効にすると、生成されたファイルとディレクトリにその権限が常に追加されます。
ユーザーの設定方法によって異なります。
すべてのユーザーが共通のデフォルトグループを共有している場合は、上記のオプションを使用するだけで十分です。
デフォルトグループは共有されていませんが、ユーザーがパブリックグループのメンバーである場合は、ディレクトリグループをパブリックグループに設定して適用します。GIDビット設定それに。いつGIDビット設定ディレクトリに設定すると、作成された新しいファイルはそのディレクトリのグループを継承し、作成された新しいディレクトリはGIDビット設定設定もしてみてください。
使用POSIX アクセス制御リスト。ファイルシステムに対してACLを有効にするには、
acl
マウントオプションを使用する必要があります。ディレクトリにデフォルトのACLが設定されると、作成された新しいファイルとディレクトリはデフォルトのACLを継承します。回答を見るLinuxでグループ権限を継承する方法もっと学ぶ。