如何使用chown命令

chown 命令允许您修改指定文件、目录或符号链接的用户和组的所有权。 在本教程中,我们将通过实例向您展示如何使用 chown 命令。
在 linux ,所有文件都与一个所有者以及一个组相关联,并为文件所有者、组成员和其他人分配访问权限。
chown 命令在介绍如何使用该chown命令之前,让我们先回顾一下基本语法。 chown 命令表达式采用以下形式:
chown [options] user[:group] file(s)user 是所有者的用户名或用户 id (uid)。 group 是组的名称或组 id (gid)。 file(s) 是一个或多个文件、目录(文件夹)或链接的名称。 数字 id 应以 + 符号为前缀。
user 如果只指定用户,指定的用户将成为指定文件的所有者,组所有权不变。user: 当用户名后跟一个冒号:,并且没有给出组名时,用户将成为文件的所有者,文件组所有权更改为用户的登录组。user:group 如果同时指定了用户和组(它们之间没有空格),则文件的用户所有权将更改为指定的用户,组所有权更改为指定的组。:group 如果省略 user 并且组以 : 冒号为前缀,则只有文件的组所有权更改为指定的组。如果只给出一个 : 冒号,而不指定用户和组,则不会进行任何修改。默认情况下,成功时。 chown 命令不产生任何输出并返回零。 可以使用 ls -l 命令找出谁拥有文件或文件属于哪个组:
ls -l filename.txt-rw-r--r-- 12 linuxize users 12.0k apr 8 20:51 filename.txt|[-][-][-]- [------] [---] | | | +-----------> group +-------------------> owner普通用户只有在拥有文件时才能修改文件的组,并且只能修改为他们所属的组。 管理用户可以修改所有文件的所有权。
如何修改文件的所有者要修改文件的所有者,请使用以下 chown 命令,后跟新所有者的用户名和目标文件作为参数:
chown user file例如,以下命令会将名为 file1 文件的所有权修改为所有者 myfreax :
chown myfreax file1要修多个文件或目录的所有权,请将多个文件木使用空格分隔。 下面的命令将文件 file1 和目录 dir1 的所有权更改为 myfreax:
chown myfreax file1 dir1可以使用数字用户 id (uid) 代替用户名。 以下示例将会修改文件 file2 的所有权为uid 1000 的用户:
chown 1000 file2如果数字就是所有者的用户名,则所有权将转移到该用户名。 为避免这种情况,可以使用 + 作为 uid 的前缀,这样就可以避免将uid解释为用户名 :
chown 1000 file2如何修改文件的所有者和组要同时修改文件的所有者和组,请使用 chown 命令,后跟所有者和组,中间用冒号 : 分隔,中间没有空格,然后是目标文件。
chown user:group file以下命令会将名为的文件 file1 的所有权更改为 myfreax 用户,组的所有权为 user 组:
chown myfreax:users file1如果在冒号 : 后省略组名,文件的组将更改为指定用户,组的所有权是指定用户的主要组:
chown myfreax: file1如何修改文件所有组要仅修改文件组的所有权,请使用 chown 命令后跟冒号 : 和组名(它们之间没有空格)以及目标文件作为参数:
chown :group file以下命令将 file1 文件的所属组更改为 www-data:
chown :www-data file1另一个可用于修改文件组所有权的命令是 chgrp .
如何修改符号链接的所有权当不使用递归选项时,chown 命令修改符号链接指向的文件组的所有权,而不是符号链接本身。
例如,如果您尝试修改符号链接 symlink1 指向的文件 /var/www/file1 用户和组的所有权:
chown www-data: symlink1很有可能您不会修改目标文件目录的所有权,而是会收到 “cannot dereference ‘symlink1’: permission denied” 无法取消引用 symlink1 权限被拒绝的错误。
出现该错误是因为在大多数 linux 发行版,默认情况下符号链接是受保护的,您无法对目标文件进行操作。
此选项在 /proc/sys/fs/protected_symlinks 中指定。 1表示启用, 0 禁用。 我们建议不要禁用符号链接保护。
要修改符号链接本身组所有权,请使用 chown 命令的 -h选项:
chown -h www-data symlink1如何递归修改文件所有权要对指定目录的所有文件和目录进行递归操作,请使用 chown 命令的 -r / --recursive 选项:
chown -r user:group directory以下示例将 /var/www 目录下的所有文件和子目录的所有权更改为为 www-data 所有者和组:
chown -r www-data: /var/www如果目录包含符号链接指定 -h 选项 :
chown -hr www-data: /var/www递归修改目录所有权时可以使用选项是 -h 和 -l。
如果传递给 chown 命令的参数是指向目录的符号链接,则 -h 选项将使命令遍历它。
-l 指示 chown 遍历每个符号链接到遇到的目录。 通常,您不应使用这些选项,因为这可能会弄乱系统或产生安全风险。
使用参考文件--reference=ref_file 选项允许您将指定文件的用户和组所有权更改为与指定参考文件相同的权限。 如果引用文件是符号链接,chown 将使用目标文件的用户和组。
chown --reference=ref_file file例如,以下命令将 file1 的用户和组所有权分配给 file2 :
chown --reference=file1 file2结论chown 是一个 linux/unix 命令行程序,用于修改文件的用户或组所有权。
要了解 chown 命令的更多信息,请访问 chown 手册页或在您的终端运行命令 man chown。

航天科工与吉利合作打造高速飞行列车
光电式液位传感器的分类
功率限制器原理和应用
大唐电信将收购联芯等三家公司引爆大唐系重组
从人类的航天能力和3D生物打印技术的发展现状来看
如何使用chown命令
关于乒乓球/羽毛球运动状态识别手表的设计
机器人在医疗保健行业的应用优势
LTC6752脉冲展宽器电路/单稳多谐振荡器
集微指数跌1.64% 卓胜微去年净利润大增112.69%
2020年网络安全攻防技术大赛已圆满落下帷幕
TDK与iCAN合作举办iCAN“未来杯”HarmonyOS技术应用创新大赛
中兴华为入美遭封杀:自由市场的铁锈时代
五夺美国商业大奖 跨境电商婕斯凭什么?
智能日报:工业机器人产量保持增长、格力电器10亿元注册芯片公司
鸿蒙OS系统详解
快速检测有毒有害物的十大技术
广东做了哪些准备迎接5G的到来
电流输出电路技术为您的模拟工具箱增添多功能性
特斯拉欲利用宁德时代闲置设备扩充电池产能,提升MEGA竞争力