每天一个linux命令:chown

时间:2022-03-27 09:22:37

1、命令简介

        chown(Change owner) 用来改变某个文件或目录的所有者和所属的组,该命令可以向某个用户授权,使该用户变成指定文件的所有者或者改变文件所属的组。用户可以是用户或者是用户ID,用户组可以是组名或组ID。只有文件主和超级用户才可以便用该命令。

2、用法

     chown [选项]... [所有者][:[组]] 文件...
 或:chown [选项]... --reference=参考文件 文件...
更改每个文件的所有者和/或所属组。当使用 --referebce 参数时,将文件的所有者和所属组更改为与指定参考文件相同。

3、选项

每天一个linux命令:chown

4、示例

示例1:将log的修改为oracle:dba
[root@oracledb dir1]# ll
总用量 0
-rw-r--r-- 1 root root 0 4月 24 15:04 log
[root@oracledb dir1]# chown oracle:dba log
[root@oracledb dir1]# ll
总用量 0
-rw-r--r-- 1 oracle dba 0 4月 24 15:04 log
示例2:-v选项
[root@oracledb dir1]# chown -v oracle:dba log
"log" 的所有者已保留为oracle:dba
示例3:-R递归修改
[root@oracledb ~]# ls -ld dir1/
drwxr-xr-x 2 root root 4096 4月 24 15:04 dir1/
[root@oracledb ~]# chown -Rv oracle:dba dir1
"dir1/log" 的所有者已保留为oracle:dba
"dir1" 的所有者已更改为oracle:dba
实例4:所属组若没有指定不会更改,但当加上":"时 GROUP 会更改为指定所有者的主要组。
[root@oracledb dir1]# chown -v oracle:  log
"log" 的所有者已更改为oracle:oinstall
实例5:如果没有指定所有者,只指定组
[root@oracledb dir1]# chown -v :dba  log
"log" 的所有者已更改为:dba
实例6:所有者和所属组可以是ID
[root@oracledb dir1]# chown -v 0:0  log
"log" 的所有者已更改为0:0
[root@oracledb dir1]# ll
总用量 0
-rw-r--r-- 1 root root 0 4月 24 15:04 log
实例7:将log2的所有者和所属组改为和log1一样
[root@oracledb dir1]# ll
总用量 0
-rw-r--r-- 1 oracle dba 0 4月 24 15:04 log1
-rw-r--r-- 1 root root 0 4月 25 20:27 log2 [root@oracledb dir1]# chown --reference=log2 log1
[root@oracledb dir1]# ll
总用量 0
-rw-r--r-- 1 root root 0 4月 24 15:04 log1
-rw-r--r-- 1 root root 0 4月 25 20:27 log2