3.9. カレントグループの確認と変更【newgrp】

$ newgrp グループ名

ユーザーは、複数のグループに属することができますが、現在、属しているグループのことをカレントグループといいます。カレントグループを変更するには、newgrp コマンドを使用します。なお、カレントグループは、id コマンドで確認することができます(項3.10 を参照)。

例えば、project1 と project2 という 2つのグループに属しているユーザー taro のカレントグループを project2 に変更するには次のコマンドを実行します。

$ newgrp project2

カレントグループの変更は、新規ファイルを作成するときによく使用されます。ファイルの所有グループはファイルを作成したユーザーのカレントグループとなりますので、複数のグループに所属しているユーザーが所有グループを意識してファイルを作成したい場合には、newgrp コマンドでカレントグループを変更してからファイルを作成します。

例えば、カレントグループが project1 である taro というユーザーがファイルを作成すると次のようになります。

$ touch sample1.txt
$ ls -l
total 0
-rw-rw-r--   1 taro     project1        0 Apr 23 21:02 sample1.txt

作成されたファイルの所有グループが project1 であることを確認できます。

次に、カレントグループを projetct2 に変更してファイルを作成します。

$ newgrp project2
$ touch sample2.txt
$ ls -l
total 0
-rw-rw-r--   1 taro     project1        0 Apr 23 21:02 sample1.txt
-rw-rw-r--   1 taro     project2        0 Apr 23 21:06 sample2.txt

作成されたファイルの所有グループが project2 であることを確認できます。

もとのグループに戻るには、exit コマンドを実行します。