web-dev-qa-db-ja.com

Linuxユーザーは複数のグループに所属できますか?

Linuxユーザーは複数のグループに所属できますか?

それが許可されている場合、1つの使用で2つのグループのファイルにアクセスできます。

そうでない場合、この機能を使用する別の方法はありますか?

この問題は ディレクトリ内の新しいファイルがグループに属していることを確認する または buntuのユーザー/グループの権限を理解するのに役立つ と同じではありません。

19
hugemeow

はい、ユーザー 複数のグループのメンバーになることができます

ユーザーはグループに編成され、すべてのユーザーが少なくとも1つのグループに属しており、他のグループに属している場合もあります。グループメンバーシップは、そのグループに許可されているファイルやディレクトリへの特別なアクセスを提供します。

たとえば、次の username コマンドを使用して、ユーザーusermodをグループgroup1およびgroup2に追加できます。

usermod -a -G group1,group2 username
19
slhck

はい、通常のUNIXユーザーは複数のグループのメンバーになることができます。

ただし、oneのみがあり、そのグループはユーザーのprimary groupです。

たとえばadduserを使用してユーザーを追加する場合、--ingroupオプションを使用してプライマリグループを指定し、Debian/Ubuntuで次のように複数のセカンダリグループを追加できます。

$ # would create user gert and group gert
$ Sudo adduser gert

$ # same, but no group 'gert' will be created, but made member of the existing
$ # group 'adm'
$ Sudo adduser gert --ingroup adm

$ # secondary groups
$ Sudo adduser gert superusers
Adding user `gert' to group `superusers' ...
Adding user gert to group superusers
Done.
$ Sudo adduser gert debianfans

メンバーになっているユーザーを確認するには、idを使用します。

$ id
uid=1000(gert) gid=1000(gert) groups=1000(gert),4(superusers),5(debianfans)
               ^^^            ^^^^^^
               primary        secondary
               group          groups

他のユーザーの場合も、idの最初の引数としてユーザー名を渡すだけです。

-g--gid)オプションを使用して、ユーザーのプライマリグループを変更できますusermod

$ usermod -g new_primary_group username
14
gertvdijk

はい、他の回答をご覧ください。代替手段はアクセス制御リストです。

setfacl
getfacl

各ファイルには、そのファイルにアクセスできるユーザーとグループのリストを含めることができます。

人は1人のユーザーと多くのグループです(グループはadmin/rootユーザーのみが設定できます)。ファイルは通常、1人の所有者ユーザーと1つのグループであり、ACLを使用すると、1人の所有者ユーザー、他の多くのユーザー、および多くのグループにすることができます。

どちらを使用するかは、必要なものによって異なります。 ACLはペインとして使用できますが、管理者は必要ありません(インストールして有効にする場合を除き、通常はデフォルトでインストールされません)。もう1つの方法は、単純ですが強力ではありません。

1
ctrl-alt-delor