一、基本知识
在Linux中,创建一个文件时,该文件的拥有者都是创建该文件的用户。该文件用户可以修改该文件的拥有者及用户组,当然root用户可以修改任何文件的拥有者及用户组。在Linux中,对于文件的权限(rwx),分为三部分,一部分是该文件的拥有者所拥有的权限,一部分是该文件所在用户组的用户所拥有的权限,另
一部分是其他用户所拥有的权限
。对于文件的权限请参考《
Linux的chmod命令
》
文件(含文件夹,下同)的权限,在shell中可以通过chmod命令来完成,关于此请参考
《
Linux的chmod命令
》
。
在
shell
中,可以使用
chown命令
来改变文件所有者及用户组,
chgrp命令
来改变文件所在用户组。
在 Linux的
C程序
中,可以使用
chown函数
来改变文件所有者,
及
所在用户组。
另外,
在shell中,要修改文件当前的用户必须具有管理员root的权限。可以通过su命令切换到root用户,也可以通过sudo获得root的权限。
二、使用
chown命令
更改文件拥有者
在 shell 中,可以使用
chown命令
来改变文件所有者。
chown命令
是change owner(改变拥有者)的缩写。需要要注意的是,
用户必须是已经存在系统中的,也就是只能改变为在 /etc/passwd这个文件中有记录的用户名称才可以
。
chown命令
的用途很多,还可以顺便直接修改用户组的名称。此外,如果要连目录下的所有子目录或文件同时更改文件拥有者的话,直接加上
-R
的参数即可。
基本语法:
chown[
-R]
账号名称
文件或
目录
chown[
-R]
账号名称:
用户组名称
文件或
目录
参数:
-R: 进行递归( recursive )的持续更改,即连同子目录下的所有文件、目录
都更新成为这个用户组。常常用在更改某一目录的情况。
示例1:
[root@localhost home]#
touch
testfile
//由 root 用户创建文件
[root@localhost home]#
ls
testfile
–l
-rw--w--w- 1 root root 0 Jun 7 19:35 testfile
//文件的拥有者及拥有者级均为 root
[root@localhost home]#
chown
yangzongde
testfile
//修改文件拥有者为 yangzongde
[root@localhost home]#
ls
testfile
-l
-rw--w--w- 1 yangzongde root 0 Jun 7 19:35 testfile
//查看文件拥有者为 yangzongde,但组仍为 root
示例2:
chown
bin
install.log
ls
-l
-rw-r--r-- 1 bin users 68495 Jun 25 08:53 install.log
chown
root:
root
install.log
ls -l
-rw-r--r-- 1 root root 68495 Jun 25 08:53 install.log
三、使用
chgrp命令
更改文件所属用户组
在shell中,可以使用
chgrp命令
来改变文件所属用户组,该命令就是change group(改变用户组)的缩写。需要注意的是要改变成为的用户组名称,必须在
/etc/group
里存在,否则就会显示错误。
基本语法:
chgrp[
-R]
1.linux中管理员和文件的属主可以通过chmod更改文件的权限.chmod 有两种表示方法:文字和数字设定法.
1.linux中管理员和文件的属主可以通过chmod更改文件的权限.chmod 有两种表示方法:文字和数字设定法.
g 就是组group,+是添加权限.r是read读. o是其他人other(非文件所有者和文件所有者所在组以外的其他人)
chmod g+r,o+r aaa.txt 就是给同组人,以及其他人对文件aaa.txt读的权限.
2.chmod n1n2n3 文件或者目录名 750中7是表示的属主(文件所有者)具有读,写和执行的权限,5是文件所有者所在的组的权限,5表示有读和执行的权限,表示文件属主所在组的同组人有读和执行的权限,没有对文件写入的权限.其他人没有权限.