Linux chown命令

Linux 2015年01月24日 ,

枫竹梦带来Linux下的chown命令。

chown命令

chown用于更改文件和目录的所有者和组。用户可以是用户名或者用户ID,同样组可以是组名或者组ID。

注意:只有文件所有者和系统管理员才有权限使用该命令。

用法

chown [OPTION] ... [OWNER][:[GROUP]] FILE...

常用参数

  • 当只给定OWNER时,只改变文件的所有者,组不变;
  • 如果给定OWNER:GROUP则文件组也改变;
  • 如果给定如OWNER:,则修改所有者为OWNER,组为OWNER的login组;
  • 如果给定:GROUP,则只修改文件组,此时该命令与chgrp相同。
  • -c类似参数-v,但只显示更改部分的处理信息。
  • -v显示详细的处理信息。
  • -R递归处理指定目录及目录下的所有文件及目录。
  • -f忽略大多数的错误信息。
  • -h仅影响符号链接本身,而不是符号链接指向的文件。
  • --deference影响符号链接指向的文件,而不是符号链接本身(默认值)。
  • --from=CURRENT_OWNER:CURRENT_GROUP只影响用户和组与CURRENT_OWNER和CURRENT_GROUP相同的文件。
  • --reference=RFILE将文件用户与组设置为与RFILE文件相同的用户和组。

示例

1.OWNER:GROUP

[root@furzoom log]# ll
total 0
-rw-rw-r--. 1 root root 0 Jan 24 00:00 log001.log
-rw-rw-r--. 1 root root 0 Jan 24 00:01 log002.log
[root@furzoom log]# chown mn:mn log001.log
[root@furzoom log]# ll
total 0
-rw-rw-r--. 1 mn   mn   0 Jan 24 00:00 log001.log
-rw-rw-r--. 1 root root 0 Jan 24 00:01 log002.log

2.OWNER:

[root@furzoom log]# ll
total 0
-rw-rw-r--. 1 mn   mn   0 Jan 24 00:00 log001.log
-rw-rw-r--. 1 root root 0 Jan 24 00:01 log002.log
[root@furzoom log]# chown root: log001.log
[root@furzoom log]# ll
total 0
-rw-rw-r--. 1 root root 0 Jan 24 00:00 log001.log
-rw-rw-r--. 1 root root 0 Jan 24 00:01 log002.log

3.OWNER

[root@furzoom log]# ll
total 0
-rw-rw-r--. 1 root root 0 Jan 24 00:00 log001.log
-rw-rw-r--. 1 root root 0 Jan 24 00:01 log002.log
[root@furzoom log]# chown mn log001.log
[root@furzoom log]# ll
total 0
-rw-rw-r--. 1 mn   root 0 Jan 24 00:00 log001.log
-rw-rw-r--. 1 root root 0 Jan 24 00:01 log002.log

4.:GROUP

[root@furzoom log]# ll
total 0
-rw-rw-r--. 1 mn   root 0 Jan 24 00:00 log001.log
-rw-rw-r--. 1 root root 0 Jan 24 00:01 log002.log
[root@furzoom log]# chown :mn log002.log
[root@furzoom log]# ll
total 0
-rw-rw-r--. 1 mn   root 0 Jan 24 00:00 log001.log
-rw-rw-r--. 1 root mn   0 Jan 24 00:01 log002.log

5.-c-v

[root@furzoom log]# ll
total 0
-rw-rw-r--. 1 root root 0 Jan 24 00:00 log001.log
-rw-rw-r--. 1 root root 0 Jan 24 00:01 log002.log
[root@furzoom log]# chown -c root log001.log
[root@furzoom log]# chown -v root log001.log
ownership of `log001.log' retained as root

6.-f

[root@furzoom log]# ll
total 0
-rw-rw-r--. 1 root root 0 Jan 24 00:00 log001.log
-rw-rw-r--. 1 root root 0 Jan 24 00:01 log002.log
[root@furzoom log]# chown mn log003.log
chown: cannot access `log003.log': No such file or directory
[root@furzoom log]# chown -f mn log003.log

7.-R

[root@furzoom shell]# ll
total 4
drwxrwxr-x. 2 mn mn 4096 Jan 24 00:01 log
[root@furzoom shell]# chown root: log -R
[root@furzoom shell]# ll
total 4
drwxrwxr-x. 2 root root 4096 Jan 24 00:01 log
[root@furzoom shell]# ll log
total 0
-rw-rw-r--. 1 root root 0 Jan 24 00:00 log001.log
-rw-rw-r--. 1 root root 0 Jan 24 00:01 log002.log
[root@furzoom shell]# chown -R mn: log
[root@furzoom shell]# ll
total 4
drwxrwxr-x. 2 mn mn 4096 Jan 24 00:01 log
[root@furzoom shell]# ll log
total 0
-rw-rw-r--. 1 mn mn 0 Jan 24 00:00 log001.log
-rw-rw-r--. 1 mn mn 0 Jan 24 00:01 log002.log

8.--reference

[root@furzoom log]# ll
total 0
-rw-rw-r--. 1 mn   mn   0 Jan 24 00:00 log001.log
-rw-rw-r--. 1 mn   mn   0 Jan 24 00:01 log002.log
-rw-r--r--. 1 root root 0 Jan 24 00:21 log003.log
[root@furzoom log]# chown --reference=log003.log log002.log
[root@furzoom log]# ll
total 0
-rw-rw-r--. 1 mn   mn   0 Jan 24 00:00 log001.log
-rw-rw-r--. 1 root root 0 Jan 24 00:01 log002.log
-rw-r--r--. 1 root root 0 Jan 24 00:21 log003.log

9.--from

[root@furzoom log]# ll
total 0
-rw-rw-r--. 1 root mn   0 Jan 24 00:00 log001.log
-rw-rw-r--. 1 root root 0 Jan 24 00:01 log002.log
-rw-r--r--. 1 root root 0 Jan 24 00:21 log003.log
[root@furzoom log]# chown --from=:root mn *.log
[root@furzoom log]# ll
total 0
-rw-rw-r--. 1 root mn   0 Jan 24 00:00 log001.log
-rw-rw-r--. 1 mn   root 0 Jan 24 00:01 log002.log
-rw-r--r--. 1 mn   root 0 Jan 24 00:21 log003.log

10.--deference

[root@furzoom log]# ll
 total 0
 -rw-r--r--. 1 mn mn  0 Jan 24 00:26 log001.log
 lrwxrwxrwx. 1 mn mn 10 Jan 24 00:27 log1 -> log001.log
 [root@furzoom log]# chown root log1
 [root@furzoom log]# ll
 total 0
 -rw-r--r--. 1 root mn  0 Jan 24 00:26 log001.log
 lrwxrwxrwx. 1 mn   mn 10 Jan 24 00:27 log1 -> log001.log

11.-h

[root@furzoom log]# ll
total 0
-rw-r--r--. 1 mn mn  0 Jan 24 00:26 log001.log
lrwxrwxrwx. 1 mn mn 10 Jan 24 00:27 log1 -> log001.log
[root@furzoom log]# chown -h root log1
[root@furzoom log]# ll
total 0
-rw-r--r--. 1 mn   mn  0 Jan 24 00:26 log001.log
lrwxrwxrwx. 1 root mn 10 Jan 24 00:27 log1 -> log001.log

转载请注明,本文地址:http://furzoom.com/linux-chown/

如无特别说明,本站文章皆为原创,若要转载,务必请注明以下原文信息:
日志标题:《Linux chown命令》
日志链接:http://furzoom.com/linux-chown/
博客名称:枫竹梦

发表评论

插入图片

NOTICE1:请申请gravatar头像,没有头像的评论可能不会被回复!

回到顶部