日期:2014-05-16  浏览次数:20609 次

redhat Linux系统 chown变更文件或目录拥有者命令

如果要改变文件所有权,可以使用chown和chgrp命令。

chown命令更改一个或多个文件的用户所有者,只有root用户才能使用。

# chown new-owner files

new-owner是制定文件的新所有者的名字(或用户id)。例如将文件brass的所有者改为用户harvey,只需要执行以下命令:

# chown harvey brass

大多数系统中,只有超级用户root何以运行chown命令。

如果要改变整个目录树的所有权,可以使用-R参数(R代表递归)。例如,将目录/home/iago/new/tgh及其所含的所有文件和子目录的用户所有者更变为harvey:

# chown -R harvey /home/iago/new/tgh

也可以用以下格式在一次操作中更改用户和组所有者:

# chown new-owner:new-group files

例如,将/home/cha主目录及其下面所含的所有文件的用户所有者更改为chavez并将组其所有者更改为chem,只需使用以下命令:

# chown -R chavez:chem /home/cha

将/home/kevin组的所有者变更为jack,只需要使用以下命令:

# chown -R :jack /home/kevin

 

如果只需要更改文件的组所有者,则可以使用chgrp命令,chgrp命令可以普通用户使用:

# chgrp new-group files

此处的new-group是指定文件的预期组所有者所在组的名称(或组id)。chgrp也支持-R。非root用户要使用chgrp命令更改文件的所有者就必须是:

a)该文件的所有者

b)同时还必须是新组的成员(但并不要求为当前组的成员)

例如普通用户使用:
$ls -l testfile
    -rw-r--r-- 1 unixguy staff 545 Nov 04 2004 testfile
$chgrp system testfile
$ls -l testfile
     -rw-r--r-- 1 unixguy system 545 Nov 04 2004 testfile
上述命令将文件"testfile"所属的组从"staff"改成了"system"。(执行命令者必须属于"system"组。)