Linux每日命令Linux学习之路我用 Linux

chown、chmod详解

2019-05-07  本文已影响0人  快乐程序员

首先通过`ll`命令查看目录下文件

主要看最前面一列,我把"drwxr-xr-x"拿出来说

d:目录       (文件类型)

rwx: 可读、可写、可执行 2-4位 (所属者权限)

r-x: 可读、可执行          5-7位    (所属组权限)

r-x: 可读、可执行          8-10位    (其它权限)

详细可查看前面文章中ls的用法;

十进制表示权限

r : 4 

w : 2

x : 1

- :  0

将rwx看成是二进制的数,有用1表示,没有用0表示,那么 [rwx] [r-x] [r--]就可以表示成:111 101 100,将其转换成为一个十进制数就是:754。

chown:用来更改某个目录或文件的用户名和用户组

语法:

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

参数:

-c : 显示更改的部分的信息

-f : 忽略错误信息

-h :修复符号链接

-v : 显示详细的处理信息

-R : 处理指定目录以及其子目录下的所有文件

--help : 显示辅助说明

--version : 显示版本

user : 文件拥有者的使用者

group : 文件拥有者的使用者组(group)

使用实例

实例1:将文件test1 的拥有者设为 lvjinliang,组设为 developer

命令:

chown lvjinliang:developer test1

输出: 

实例2:将目录dir2及其子目录 的拥有者设为www,组设为www

命令:

chown -R www:www dir

输出: 

说明:

加上参数-R递归处理处理指定目录及其子目录下的所有文件

chmod:用来修改某个目录或文件的访问权限

语法:

chmod [-cfvR] [--help] [--version] mode file...

参数:

mode : 权限设定字串,格式如下 :

[ugoa][+-=][rwxX] 或 [abc]

u 表示该文件的拥有者,g 表示与该文件的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。

+ 表示增加权限、- 表示取消权限、= 表示唯一设定权限。

r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该文件是个子目录或者该文件已经被设定过为可执行。

其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。

r=4,w=2,x=1

若要rwx属性则4+2+1=7;

若要rw-属性则4+2=6;

若要r-x属性则4+1=5。

其他参数说明:

-c : 若该文件权限确实已经更改,才显示其更改动作

-f : 若该文件权限无法被更改也不要显示错误讯息

-v : 显示权限变更的详细资料

-R : 对目前目录下的所有文件与子目录进行相同的权限变更(即以递回的方式逐个变更)

--help : 显示辅助说明

--version : 显示版本

使用实例

实例1:将文件test1设为所有人皆可读取 :

命令:

chmod a=r test1

chmod ugo=r test1

chmod 444 test1

输出: 

实例2:将文件test1的所属者加上写权限

命令:

chmod u+w test1

输出: 

实例3:将文件test1的所属者设成可读可写可执行,所属组设成可读可写,其它设可读

命令:

chmod u=rwx,g=rw,o=r test1

chmod 764 test1

输出: 

实例4:将目录dir2及其子目录的所属者设成可读可写可执行,所属组设成可读可写,其它设可读

命令:

chmod -R u=rwx,g=rw,o=r dir2

chmod -R 764 dir2

输出: 

说明:

加上参数-R递归处理处理指定目录及其子目录下的所有文件

上一篇 下一篇

猜你喜欢

热点阅读