記事の内容
概要
chownコマンドは、ファイルやディレクトリの所有者を変更するために使います。
※change owner の略
chown
ディレクトリ階層
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 chown super-tomoji sample1.txt
[tomoji@10moji-blog.com dir]$ ll
-rw-r--r-- 1 super-tomoji tomoji 0 1 1 12:34 sample1.txt
-rw-r--r-- 1 tomoji tomoji 0 1 1 12:34 sample2.txt
該当しない所有者変更
該当しない所有者に変更した場合は、無効扱いになり所有者は変わりません。
chown
ディレクトリ階層
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 chown tomoji2 sample1.txt
chown: invalid user: 'tomoji2'
[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
所有者追加と一覧表示
chown
『所有者一覧表示』
[tomoji@10moji-blog.com ~]$ cut -d: -f1 /etc/passwd
root
bin
=====
省略
=====
tomoji
『所有者追加』
[tomoji@10moji-blog.com ~]$ sudo adduser super-tomoji
[tomoji@10moji-blog.com ~]$ cut -d: -f1 /etc/passwd
root
bin
=====
省略
=====
tomoji
super-tomoji
オプション一覧
オプション | 説明 |
---|---|
-R | 再帰的に権限を変更 |
-v | 変更したファイルを詳細に表示 |
-c | 変更が行われた場合にのみ結果表示 |
-R
Rオプションは、指定したディレクトリ内のファイルやサブディレクトリに対して再帰的に所有者を変更します。
chown -R
ディレクトリ階層
home
└─ dir1
├─ sample1.txt
└─ dir2
└─ sample2.txt
【homeディレクトリにいる場合】
『現状の一覧を再起的に表示』
[tomoji@10moji-blog.com home]$ ll -R
./:
total 0
drwxrwxr-x 3 user tomoji 10 1 1 12:34 dir1
dir1/:
total 0
drwxrwxr-x 2 user tomoji 10 1 1 12:34 dir2
-rw-rw-r-- 1 user 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 chmod -R tomoji dir1
『再度一覧を再起的に表示』
[tomoji@10moji-blog.com home]$ ll -R
./:
total 0
drwxrwxr-x 2 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
-v
vオプションは、実行された所有者変更の詳細に表示するために使用されます。
chown -v
ディレクトリ階層
dir
├─ sample1.txt
├─ sample2.txt
└─ sample3.txt
【dirディレクトリにいる場合】
[tomoji@10moji-blog.com dir]$ ll
-rw-r--r-- 1 user tomoji 0 1 1 12:34 sample1.txt
-rw-r--r-- 1 user tomoji 0 1 1 12:34 sample2.txt
-rw-r--r-- 1 user tomoji 0 1 1 12:34 sample3.txt
『所有者変更のメッセージ』
[tomoji@10moji-blog.com dir]$ sudo chown -v tomoji sample1.txt
changed ownership of 'sample1.txt' from user to tomoji
[tomoji@10moji-blog.com dir]$ ll
-rw-r--r-- 1 tomoji tomoji 0 1 1 12:34 sample1.txt
-rw-r--r-- 1 user tomoji 0 1 1 12:34 sample2.txt
-rw-r--r-- 1 user tomoji 0 1 1 12:34 sample3.txt
『所有者変更がない場合はretainedメッセージ』
[tomoji@10moji-blog.com dir]$ sudo chown -v tomoji *.txt
ownership of 'sample1.txt' retained as tomoji
changed ownership of 'sample2.txt' from user to tomoji
changed ownership of 'sample3.txt' from user to tomoji
[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
-c
cオプションは、実際に所有者が変更されたファイルについてのみ変更を報告するために使用されます。
chown -c
ディレクトリ階層
dir
├─ sample1.txt
├─ sample2.txt
└─ sample3.txt
【dirディレクトリにいる場合】
[tomoji@10moji-blog.com dir]$ ll
-rw-r--r-- 1 user tomoji 0 1 1 12:34 sample1.txt
-rw-r--r-- 1 user tomoji 0 1 1 12:34 sample2.txt
-rw-r--r-- 1 user tomoji 0 1 1 12:34 sample3.txt
『所有者変更のメッセージ』
[tomoji@10moji-blog.com dir]$ sudo chown -c tomoji sample1.txt
changed ownership of 'sample1.txt' from user to tomoji
[tomoji@10moji-blog.com dir]$ ll
-rw-r--r-- 1 tomoji tomoji 0 1 1 12:34 sample1.txt
-rw-r--r-- 1 user tomoji 0 1 1 12:34 sample2.txt
-rw-r--r-- 1 user tomoji 0 1 1 12:34 sample3.txt
『所有者変更がのみchangedメッセージ』
[tomoji@10moji-blog.com dir]$ sudo chown -c tomoji *.txt
changed ownership of 'sample2.txt' from user to tomoji
changed ownership of 'sample3.txt' from user to tomoji
[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