ファイルの所有者を変更するコマンドchownasの使い方をまとめました。
chownコマンドの概要
chownはシーエイチオウン、チェンジオーナーなどと読みます。
Linuxで管理されるファイル・ディレクトリにはそのファイル・ディレクトリを所有するユーザーとグループが設定されています。chownコマンドはファイル・ディレクトリを所有しているユーザーとグループを変更することができるコマンドです。
ls -laコマンドでファイル・ディレクトリの所有者、グループを確認する
以下のコマンドを実行して、ファイル・ディレクトリの所有ユーザーとグループを確認できます。
[root@RHEL95 ~]# ls -la
合計 44
dr-xr-x---. 5 root root 4096 4月 5 21:15 .
dr-xr-xr-x. 19 root root 266 4月 5 21:07 ..
drwxr-xr-x 3 root root 17 3月 29 20:46 .ansible
-rw-------. 1 root root 3850 4月 9 20:23 .bash_history
-rw-r--r--. 1 root root 18 8月 11 2021 .bash_logout
-rw-r--r--. 1 root root 141 8月 11 2021 .bash_profile
-rw-r--r--. 1 root root 429 8月 11 2021 .bashrc
drwx------. 2 root root 6 3月 2 21:29 .cache
-rw-r--r--. 1 root root 100 8月 11 2021 .cshrc
-rw------- 1 root root 20 3月 29 21:38 .lesshst
drwx------. 2 root root 6 3月 2 20:23 .ssh
-rw-r--r--. 1 root root 129 8月 11 2021 .tcshrc
-rw------- 1 root root 5762 4月 5 21:15 .viminfo
-rw-------. 1 root root 864 3月 2 20:32 anaconda-ks.cfg

chown コマンドでファイルの所有者を変更する
実際にchownコマンドでファイルの所有者を変更してみます。
touchコマンドでファイルの所有者を変更するためのテストファイルを作成します。
[root@RHEL95 ~]# touch change-owner-test
[root@RHEL95 ~]# ls -la change-owner-test
-rw-r--r-- 1 root root 0 4月 13 12:12 change-owner-test

今作成したファイルは所有しているユーザーが「root」、グループが「root」になります。このファイルの所有者はファイルを作成したユーザーとそのグループがファイルに適用されます。
ファイルの所有ユーザーを変更する
以下コマンドを実行してファイルの所有者をuserにします。
# chown user change-owner-test
[root@RHEL95 ~]# chown user change-owner-test
[root@RHEL95 ~]# ls -la change-owner-test
-rw-r--r-- 1 user root 0 4月 13 12:12 change-owner-test

ファイルの所有者がuserになりました。
ファイルを所有しているユーザーのグループを変更する
次に、ファイルのグループだけを変更します。
# chown :user change-owner-test
本来、chown <ユーザー名>:<グループ名> ファイル名という形式で実行しますが、今回は変更するユーザー名を省略するため、chown :<グループ名> ファイル名という形式でコマンドを実行します。
[root@RHEL95 ~]# chown :user change-owner-test
[root@RHEL95 ~]#
[root@RHEL95 ~]#
[root@RHEL95 ~]# ls -la change-owner-test
-rw-r--r-- 1 user user 0 4月 13 12:12 change-owner-test

グループ名もrootからuserに変更されました。
なお、chgrpコマンドでもファイルのグループだけを変更することができます。
ファイルを所有しているユーザーとグループを変更する
ユーザー名とグループ名を変更してみます。以下のコマンド実行でユーザー名とグループ名を同時に変更します。
# chown root:root change-owner-test
[root@RHEL95 ~]# chown root:root change-owner-test
[root@RHEL95 ~]#
[root@RHEL95 ~]#
[root@RHEL95 ~]# ls -la change-owner-test
-rw-r--r-- 1 root root 0 4月 13 12:12 change-owner-test

chown コマンドでディレクトリの所有者を変更する
chownコマンドはファイルだけでなく、ディレクトリの所有者情報も変更が可能です。
mkdirコマンドでディレクトリを作成し、そのディレクトリの所有者情報をchownコマンドで変更します。
# mkdir change-owner-dir
[root@RHEL95 ~]# mkdir change-owner-dir
[root@RHEL95 ~]# ls -ld change-owner-dir
drwxr-xr-x 2 root root 6 4月 13 12:24 change-owner-dir


ディレクトリの作成ができました。実際にコマンドで所有ユーザーとグループを変更します。
ディレクトリもファイルと同様のコマンドで所有ユーザーを変更可能
[root@RHEL95 ~]# chown user change-owner-dir
[root@RHEL95 ~]# chown user change-owner-dir
[root@RHEL95 ~]#
[root@RHEL95 ~]#
[root@RHEL95 ~]#
[root@RHEL95 ~]# ls -ld change-owner-dir
drwxr-xr-x 2 user root 6 4月 13 12:24 change-owner-dir

ディレクトリに対してもファイルに対して実行したコマンドと同様のコマンドで所有ユーザーを変更できます。
ディレクトリのグループ変更もファイルと同様にできる
ディレクトリのグループ変更もファイルの時に実施したコマンドと同様に可能です。
[root@RHEL95 ~]# chown :user change-owner-dir
[root@RHEL95 ~]# ls -ld change-owner-dir
drwxr-xr-x 2 user user 6 4月 13 12:24 change-owner-dir


ディレクトリの配下のユーザーとグループを変更するには-Rオプションをつける
ディレクトリの配下のファイル・ディレクトリに対しても所有ユーザーとグループの変更を行うには以下のコマンドを実行します。
chown -R user:user ディレクトリ名
以下は実行例です。
[root@RHEL95 ~]# chown -R user:user change-owner-dir/
[root@RHEL95 ~]# ls -la change-owner-dir/
合計 4
drwxr-xr-x 2 user user 24 4月 13 12:31 .
dr-xr-x---. 6 root root 4096 4月 13 12:24 ..
-rw-r--r-- 1 user user 0 4月 13 12:31 owner-test
