所有者、所有グループを変更するコマンド

所有者、所有グループを変更するコマンド

所有者、所有グループの変更で使用するコマンド一覧

chown コマンド

対象のファイル、ディレクトリの所有者を変更するためのコマンドです。
引数の指定方法によっては、所有者と所有グループを同時に変更できます。
また、このコマンドは、rootユーザーのみが使用できます。

chgrpコマンド

対象のファイル、ディレクトリの所有グループを変更するためのコマンドです。

chown(change owner)コマンドで所有者を変更する

書式

chown [-R] 所有者名 ファイル名またはディレクトリ名のパス

対象のファイル、ディレクトリの所有者を変更するためのコマンドです。
このコマンドは、rootユーザーのみが使用できます。

実践①:ファイル(hday.txt)の所有者の変更

1. 対象のファイル(hday.txt)の所有者(user01)を確認する
[user01@localhost ~]$ls -l 
-rw-rw-r-- 1 user01 user01  43  2月 12 17:45 hday.txt
2. rootユーザでログインする
[user01@localhost ~]$ su -
パスワード:root123
3. 対象のファイルのディレクトリ(/home/user01)に移動する
[root@localhost ~]# cd /home/user01

4. 所有者を変更(user01 ⇒user02)する
[root@localhost user01]# chown user02 hday.txt
5. 対象のファイル(hday.txt)の所有者(user02)を確認する
[root@localhost user01]# ls -l hday.txt
-rw-rw-r-- 1 user02 user01 43  2月 12 17:45 hday.txt

実践②:ディレクトリ(dir1)の所有者の変更

1. 対象のディレクトリ(dir1)の所有者(user01)を確認する
[root@localhost user01]# ls -ld Books/dir1
drwxrwxr-x 3 user01 user01 16  2月 13 16:38 Books/dir1

2. ディレクトリ(dir1)の所有者を変更(user01 ⇒user02)する
[user01@localhost ~]$ chown user02 Books/dir1
3. 対象のディレクトリ(dir1)の所有者(user02)を確認する
[root@localhost user01]# ls -ld Books/dir1
drwxrwxr-x 3 user02 user01 16  2月 13 16:38 Books/dir1

4. サブディレクトリ(dir1/dir11)の所有者(user01)を確認する

dir1の所有者を変更しても、dir1のサブディレクトリ「dir11」の所有者は変わりません。

[root@localhost user01]# ls -ld Books/dir1/dir11
drwxrwxr-x 2 user01 user01 2  2月 13 16:47 Books/dir1/dir11

実践③:サブディレクトリも含めて所有者を変更する

chownコマンドに「-R」オプションをつけると、ディレクトリ以下の所有者すべてが変更できます。

1. サブディレクトリを含め(dir1、dir11、hello)、所有者を変更(user01 ⇒user02)する
[root@localhost user01]# chown -R user02 Books/dir1

2. サブディレクトリ(dir11)の所有者を確認する
[root@localhost user01]# ls -ld Books/dir1/dir11
drwxrwxr-x 2 user02 user01 22  2月 20 18:29 Books/dir1/dir11
3. サブディレクトリ内のファイル(hello)の所有者を確認する
[root@localhost user01]# ls -l Books/dir1/dir11
合計 4
-rw-rw-r-- 1 user02 user01 43  2月 20 18:29 hello

書式

chgrp [-R] グループ名 ファイル名またはディレクトリ名のパス

対象のファイル、ディレクトリの所有グループを変更するためのコマンドです。

実践①:ファイル(hello)の所有グループを変更する

1. 対象のファイル(hello)の所有グループを変更(user01⇒user02)する
[root@localhost user01]# chgrp user02 Music/dir1/dir11/hello
2. 対象のファイル(hello)の所有グループを確認(user02)する
[root@localhost user01]# ls -l Music/dir1/dir11/hello
-rw-rw-r-- 1 user02 user02 43  2月 20 18:29 Music/dir1/dir11/hello

実践②:サブディレクトリも含めて所有グループを変更する

chgrpコマンドに「-R」オプションをつけると、ディレクトリ以下の所有グループすべてが変更できます。

1. サブディレクトリを含め(dir1、dir11、hello)、所有グループを変更(user01 ⇒user02)する
[root@localhost user01]# chgrp –R user02 Books/dir1

2. サブディレクトリ(dir11)の所有グループを確認する
[root@localhost user01]# ls -ld Books/dir1
drwxrwxr-x 2 user02 user02 22  2月 20 18:29 Books/dir1
3. サブディレクトリ内のファイル(hello)の所有グループを確認する
[root@localhost user01]# ls -l Books/dir1/dir11/hello
-rw-rw-r-- 1 user02 user02 43  2月 20 18:29 hello

chownコマンドで、所有者と所有グループを同時に変更する

書式

chown ユーザ名:グループ名 対象のファイル名(グループ名)
または
chown ユーザ名 . グループ名 対象のファイル名(グループ名)

対象のファイル、ディレクトリの所有者と、所有グループを同時に変更できます。

実践

1. 対象のファイル(hello)の所有者(user01⇒user02)、所有グループ(user01 ⇒user02)を変更する
[root@localhost user01]# chown user02:user02 Movies/dir1/dir11/hello
2. 変更後のファイル(hello)の所有者、所有グループを確認する
[root@localhost user01]# ls -l Movies/dir1/dir11/hello
-rw-r--r-- 1 user02 user02 37  2月  9 03:21 Movies/dir1/dir11/hello


NEXT>> ファイルのアクセス権(パーミッション)の変更