chown命令将目录或文件的拥有者、拥有组改为指定的用户或组

Linux chown 命令

Linux 命令大全 Linux 命令大全

Linux chown(英文全拼:change owner)命令用于设置文件所有者和文件关联组的命令。

Linux/Unix 是多人多工操作系统,所有的文件皆有拥有者。利用 chown 将指定文件的拥有者改为指定的用户或组,用户可以是用户名或者用户 ID,组可以是组名或者组 ID,文件是以空格分开的要改变权限的文件列表,支持通配符。 。

chown 需要超级用户 root 的权限才能执行此命令。

只有超级用户和属于组的文件所有者才能变更文件关联组。非超级用户如需要设置关联组可能需要使用 chgrp 命令。

使用权限 : root

语法

chown [-cfhvR] [--help] [--version] user[:group] file...

参数 :

  • user : 新的文件拥有者的使用者 ID
  • group : 新的文件拥有者的使用者组(group)
  • -c : 显示更改的部分的信息
  • -f : 忽略错误信息
  • -h :修复符号链接
  • -v : 显示详细的处理信息
  • -R : 处理指定目录以及其子目录下的所有文件
  • –help : 显示辅助说明
  • –version : 显示版本

实例

把 /var/run/httpd.pid 的所有者设置 root:

chown root /var/run/httpd.pid

将文件 file1.txt 的拥有者设为 runoob,群体的使用者 runoobgroup :

chown runoob:runoobgroup file1.txt

将当前前目录下的所有文件与子目录的拥有者皆设为 runoob,群体的使用者 runoobgroup:

chown -R runoob:runoobgroup *

把 /home/runoob 的关联组设置为 512 (关联组ID),不改变所有者:

chown :512 /home/runoob

Linux 命令大全 Linux 命令大全

2.系统帮助

  1. 用法:chown [选项]… [所有者][:[组]] 文件…
  2.  或:chown [选项]… reference=参考文件 文件…
  3. Change the owner and/or group of each FILE to OWNER and/or GROUP.
  4. With reference, change the owner and group of each FILE to those of RFILE.
  5.  
  6. c, changes like verbose but report only when a change is made
  7. f, silent, quiet suppress most error messages
  8. v, verbose output a diagnostic for every file processed
  9. dereference affect the referent of each symbolic link (this is
  10. the default), rather than the symbolic link itself
  11. h, nodereference affect symbolic links instead of any referenced file
  12. (useful only on systems that can change the
  13. ownership of a symlink)
  14. from=当前所有者:当前所属组
  15. 只当每个文件的所有者和组符合选项所指定时才更改所
  16. 有者和组。其中一个可以省略,这时已省略的属性就不
  17. 需要符合原有的属性。
  18. nopreserveroot do not treat ‘/’ specially (the default)
  19. preserveroot fail to operate recursively on ‘/’
  20. reference=RFILE use RFILE‘s owner and group rather than
  21. specifying OWNER:GROUP values
  22. -R, –recursive 权限递归
  23.  
  24. The following options modify how a hierarchy is traversed when the -R
  25. option is also specified. If more than one is specified, only the final
  26. one takes effect.
  27.  
  28. -H if a command line argument is a symbolic link
  29. to a directory, traverse it
  30. -L traverse every symbolic link to a directory
  31. encountered
  32. -P do not traverse any symbolic links (default)
  33.  
  34. –help 显示此帮助信息并退出
  35. –version 显示版本信息并退出
  36.  
  37. Owner is unchanged if missing. Group is unchanged if missing, but changed
  38. to login group if implied by a ‘:‘ following a symbolic OWNER.
  39. OWNER and GROUP may be numeric as well as symbolic.
  40.  
  41. 示例:
  42. chown root /u 将 /u 的属主更改为”root”。
  43. chown root:staff /u 和上面类似,但同时也将其属组更改为”staff”。
  44. chown -hR root /u 将 /u 及其子目录下所有文件的属主更改为”root”。
  45.  
  46. GNU coreutils online help: <http://www.gnu.org/software/coreutils/>
  47. 请向<http://translationproject.org/team/zh_CN.html> 报告chown 的翻译错误
  48. 要获取完整文档,请运行:info coreutils ‘chown invocation

3.示例

3.1.更改拥有者

  1. [root@itbkz s]#mkdir mulu
  2. [root@itbkz s]#touch mulu/test.txt
  3. [root@itbkz s]#ll -d mulu
  4. drwxrxrx 2 root root 22 12 5 17:00 mulu
  5. [root@itbkz s]#ll mulu/test.txt
  6. rwrr 1 root root 0 12 5 17:00 mulu/test.txt
  7. [root@itbkz s]#ll
  8. 总用量 0
  9. drwxrxrx 2 root root 22 12 5 17:00 mulu
  10. [root@itbkz s]#chown itbkz mulu
  11. [root@itbkz s]#ll
  12. 总用量 0
  13. drwxrxrx 2 itbkz root 22 12 5 17:00 mulu

3.2.更改拥有组

  1. [root@itbkz s]#chown .itbkz mulu
  2. [root@itbkz s]#ll
  3. 总用量 0
  4. drwxrxrx 2 root itbkz 22 12 5 17:00 mulu

3.3.更改拥有者和组

  1. [root@itbkz s]#chown itbkz:itbkz mulu
  2. [root@itbkz s]#ll
  3. 总用量 0
  4. drwxrxrx 2 itbkz itbkz 22 12 5 17:00 mulu

3.4.拥有用户及组权限递归

  1. 方法1
  2. [root@itbkz s]#chown -R itbkz:itbkz mulu
  3. [root@itbkz s]#ll -d mulu
  4. drwxrxrx 2 itbkz itbkz 22 12 5 17:00 mulu
  5. [root@itbkz s]#ll mulu/test.txt
  6. rwrr 1 itbkz itbkz 0 12 5 17:00 mulu/test.txt
  7. 方法2
  8. [root@itbkz s]#chown -R itbkz.itbkz mulu
  9. [root@itbkz s]#ll -d mulu
  10. drwxrxrx 2 itbkz itbkz 22 12 5 17:00 mulu
  11. [root@itbkz s]#ll mulu/test.txt
  12. rwrr 1 itbkz itbkz 0 12 5 17:00 mulu/test.txt