web-dev-qa-db-ja.com

特定のグループのメンバーとしてログインする方法

現在のユーザーの非プライマリグループのメンバーとして所有者がいるファイルを作成するには、非プライマリグループのメンバーとしてログインします。

-rwxr-xr-x 2 gowtham  gowtham      4096 Sep  5 14:48 defaultNewFile
drwxr-xr-x 2 gowtham  specificgrp  4096 Sep  5 14:50 requiredNewFile

chownでファイルを作成した後、グループの所有権を変更したくありません。

非プライマリグループのメンバーとしてログインすることに興味があります。

7
Necktwi

これを行う理由によっては、別の方法がある場合があります。

ディレクトリのアクセス権のsetgidビットが設定されている場合、そのディレクトリで作成されたすべてのファイルは、そのディレクトリを所有する同じグループによって所有されます。

$ chgrp specificgrp .
$ chmod g+s .
$ touch newfile
$ ls -l newfile
-rw-r--r-- 2 gowtham  specificgrp  4096 Sep  5 14:48 newfile
$ ls -ld .
drwxr-sr-x 2 gowtham  specificgrp  4096 Sep  5 14:48 .

newgrpがお手伝いします。ウォークスルーについては、以下を参照してください。自分自身のために話す必要があります。

$ id
uid=1000(gert) gid=1000(gert) groups=1000(gert),4(adm),[...]
$ touch file1
$ newgrp adm
$ id
uid=1000(gert) gid=4(adm) groups=1000(gert),4(adm),[...]
$ touch file2
$ ls -al
[...]
-rw-rw-r--  1 gert gert     0 Nov 23 11:58 file1
-rw-rw-r--  1 gert adm      0 Nov 23 11:59 file2

はい、これによりプライマリグループが変更されますが、永続的には変更されません。そのセッション/シェルについてのみなので、スクリプトではこれは問題になりません。

8
gertvdijk

を使用して特定のグループのメンバーとしてシェルにログインできます

login <username>:<group>
0
Necktwi