所属グループを変更

記事の内容

概要

chgrpコマンドは、ファイルやディレクトリの所属グループを変更するために使います。

chgrp
ディレクトリ階層

dir
├─ sample1.txt
└─ sample2.txt

【dirディレクトリにいる場合】

[tomoji@10moji-blog.com dir]$ ll
-rw-r--r--  1 tomoji  tomoji   0  1  1 12:34 sample1.txt
-rw-r--r--  1 tomoji  tomoji   0  1  1 12:34 sample2.txt

[tomoji@10moji-blog.com dir]$ sudo chgrp users sample1.txt

[tomoji@10moji-blog.com dir]$ ll
-rw-r--r--  1 tomoji  users    0  1  1 12:34 sample1.txt
-rw-r--r--  1 tomoji  tomoji   0  1  1 12:34 sample2.txt

該当しない所有者変更

該当しないグループに変更した場合は、無効扱いになりグループは変わりません。

chgrp
ディレクトリ階層

dir
├─ sample1.txt
└─ sample2.txt

【dirディレクトリにいる場合】

[tomoji@10moji-blog.com dir]$ ll
-rw-r--r--  1 tomoji  tomoji   0  1  1 12:34 sample1.txt
-rw-r--r--  1 tomoji  tomoji   0  1  1 12:34 sample2.txt

『グループ変更が無効』
[tomoji@10moji-blog.com dir]$ sudo chgrp users2 sample1.txt
chgrp: invalid group: 'users2'

[tomoji@10moji-blog.com dir]$ ll
-rw-r--r--  1 tomoji  tomoji   0  1  1 12:34 sample1.txt
-rw-r--r--  1 tomoji  tomoji   0  1  1 12:34 sample2.txt

グループ追加と一覧表示

グループ追加コマンド : sudo groupadd グループ名
グループ一覧表示コマンド : cat /etc/group

chgrp
『グループ一覧表示』
[tomoji@10moji-blog.com ~]$ cat /etc/group
root:x:0
bin:x:1
=====
 省略
=====
tomoji:x:1000:tomoji

『グループ追加』
[tomoji@10moji-blog.com ~]$ sudo groupadd super-tomoji

[tomoji@10moji-blog.com ~]$ cat /etc/group
root:x:0
bin:x:1
=====
 省略
=====
tomoji:x:1000:tomoji
super-tomoji:x:1001

オプション一覧

オプション説明
-R再帰的にグループを変更
-v変更したファイルを詳細に表示
-c変更が行われた場合にのみ結果表示

-R

Rオプションは、指定したディレクトリ内のファイルやサブディレクトリに対して再帰的にグループを変更します。

chgrp -R
ディレクトリ階層

home
└─ dir1
  ├─ sample1.txt
  └─ dir2
    └─ sample2.txt

【homeディレクトリにいる場合】

『現状の一覧を再起的に表示』
[tomoji@10moji-blog.com home]$ ll -R
./:
total 0
drwxrwxr-x  3 tomoji  tomoji  10  1  1 12:34 dir1

dir1/:
total 0
drwxrwxr-x  2 tomoji  tomoji  10  1  1 12:34 dir2
-rw-rw-r--  1 tomoji  tomoji   0  1  1 12:34 sample1.txt

dir1/dir2:
total 0
-rw-rw-r--  1 tomoji  tomoji   0  1  1 12:34 sample2.txt

『再起的にグループ変更』
[tomoji@10moji-blog.com home]$ sudo chgrp -R users dir1

『再度一覧を再起的に表示』
[tomoji@10moji-blog.com home]$ ll -R
./:
total 0
drwxrwxr-x  2 tomoji  users  10  1  1 12:34 dir1

dir1/:
total 0
drwxrwxr-x  2 tomoji  users  10  1  1 12:34 dir2
-rw-rw-r--  1 tomoji  users   0  1  1 12:34 sample1.txt

dir1/dir2:
total 0
-rw-rw-r--  1 tomoji  users   0  1  1 12:34 sample2.txt

-v

vオプションは、実行されたグループ変更の詳細に表示するために使用されます。

chgrp -v
ディレクトリ階層

dir
├─ sample1.txt
├─ sample2.txt
└─ sample3.txt

【dirディレクトリにいる場合】

[tomoji@10moji-blog.com dir]$ ll
-rw-r--r--  1 tomoji  tomoji   0  1  1 12:34 sample1.txt
-rw-r--r--  1 tomoji  tomoji   0  1  1 12:34 sample2.txt
-rw-r--r--  1 tomoji  tomoji   0  1  1 12:34 sample3.txt

『グループ変更のメッセージ』
[tomoji@10moji-blog.com dir]$ sudo chgrp -v users sample1.txt
changed group of 'sample1.txt' from tomoji to users

[tomoji@10moji-blog.com dir]$ ll
-rw-r--r--  1 tomoji  users    0  1  1 12:34 sample1.txt
-rw-r--r--  1 tomoji  tomoji   0  1  1 12:34 sample2.txt
-rw-r--r--  1 tomoji  tomoji   0  1  1 12:34 sample3.txt

『グループ変更がない場合はretainedメッセージ』
[tomoji@10moji-blog.com dir]$ sudo chown -v users *.txt
group of 'sample1.txt' retained as users
changed group of 'sample2.txt' tomoji user to users
changed group of 'sample3.txt' tomoji user to users

[tomoji@10moji-blog.com dir]$ ll
-rw-r--r--  1 tomoji  users   0  1  1 12:34 sample1.txt
-rw-r--r--  1 tomoji  users   0  1  1 12:34 sample2.txt
-rw-r--r--  1 tomoji  users   0  1  1 12:34 sample3.txt

-c

cオプションは、実際にグループが変更されたファイルについてのみ変更を報告するために使用されます。

chgrp -c
ディレクトリ階層

dir
├─ sample1.txt
├─ sample2.txt
└─ sample3.txt

【dirディレクトリにいる場合】

[tomoji@10moji-blog.com dir]$ ll
-rw-r--r--  1 tomoji  tomoji   0  1  1 12:34 sample1.txt
-rw-r--r--  1 tomoji  tomoji   0  1  1 12:34 sample2.txt
-rw-r--r--  1 tomoji  tomoji   0  1  1 12:34 sample3.txt

『グループ変更のメッセージ』
[tomoji@10moji-blog.com dir]$ sudo chgrp -c tomoji sample1.txt
changed group of 'sample1.txt' from tomoji to users

[tomoji@10moji-blog.com dir]$ ll
-rw-r--r--  1 tomoji  users    0  1  1 12:34 sample1.txt
-rw-r--r--  1 tomoji  tomoji   0  1  1 12:34 sample2.txt
-rw-r--r--  1 tomoji  tomoji   0  1  1 12:34 sample3.txt

『グループ変更がのみchangedメッセージ』
[tomoji@10moji-blog.com dir]$ sudo chgrp -c users *.txt
changed group of 'sample2.txt' from tomoji to users
changed group of 'sample3.txt' from tomoji to users

[tomoji@10moji-blog.com dir]$ ll
-rw-r--r--  1 tomoji  users   0  1  1 12:34 sample1.txt
-rw-r--r--  1 tomoji  users   0  1  1 12:34 sample2.txt
-rw-r--r--  1 tomoji  users   0  1  1 12:34 sample3.txt
記事の内容
閉じる