Linux学习笔记-权限类命令

1.5.1.chmod

英文原意:change the permissions mode of a file

 

可以修改文件权限的用户:所有者,root

 

语法:

chomod [{ugoa} {+-=} {rwx}] [文件或目录]

                   [mode=421] [文件或目录]

                   -R 递归修改

 

u:User

g:group

o:other

a:all

+:加权限

-:减权限

=:删除之前所有权限,赋值为现在的权限

 

 

User增加执行权限

[root@localhost cn]# chmod u+x yum.log

[root@localhost cn]# ll

total 4

-rwx------. 1 root root 27 Apr 23 21:58 yum.log

 

User去掉执行权限,group增加读写执行,other增加执行权限

多个操作以逗号分隔

[root@localhost cn]# chmod u-x,g+rwx,o+x yum.log

 [root@localhost cn]# ll

total 4

-rw-rwx--x. 1 root root 27 Apr 23 21:58 yum.log

 

 

如果需要修改某个目录,及目录所下所有的资源的权限,需要使用-R参数

 

chomd –R /tmp

 

 

 

文件

目录

r

读权限

可以查看文件内容

可以列出目录中的内容

 w

写权限

可以修改文件内容

可以在目录中创建,删除文件

 x

执行权限

可以执行文件

可以进入目录

 

用root创建一个目录test,有rwxrwxrwx权限,如果test目录下创建一个文件log.log,有-rw-r--r--.权限。

用普通用户登录,是否可以删除log.log文件?

 

[root@localhost cn]# ll

total 4

drwxrwxrwx. 2 root root 21 Apr 24 20:44 test

-rw-rwx--x. 1 root root 27 Apr 23 21:58 yum.log

[root@localhost cn]# ll test/

total 0

-rw-r--r--. 1 root root 0 Apr 24 20:44 log.log

[root@localhost cn]#

 

 

答案是可以删除的,因为普通用户对test目录有w权限

 

1.6.其他权限命令

1.6.1.chown

英文原意:change file ownership

语法:

chown [用户] [文件或目录]

能更改文件的所有者的用户:root

1.6.2.chgrp

change file group ownership

chgrp [用户组] [文件或目录]

改变文件或目录的所属组

1.6.3.umask

创建文件时,权限默认信息:

谁创建了文件,谁就是文件的所有者,他的所属组就是文件的所有者缺省的所属组

 

 

the user file-creation mask

显示、设置文件的缺省权限

 

-S 以rwx形式显示新建文件缺省权限

 

[root@localhost cn]# umask -S

u=rwx,g=rx,o=rx

 

 

Linux系统中新建的文件的执行权限都会去掉,即使umask配置的有执行权限

 

[root@localhost cn]# ll

total 4

drwxrwxrwx. 2 root root 21 Apr 24 20:44 test

-rw-rwx--x. 1 root root 27 Apr 23 21:58 yum.log

[root@localhost cn]# umask -S

u=rwx,g=rx,o=rx

[root@localhost cn]# mkdir test1

[root@localhost cn]# touch test2.log

[root@localhost cn]# ll

total 4

drwxrwxrwx. 2 root root 21 Apr 24 20:44 test

drwxr-xr-x. 2 root root  6 Apr 24 21:10 test1

-rw-r--r--. 1 root root  0 Apr 24 21:10 test2.log

-rw-rwx--x. 1 root root 27 Apr 23 21:58 yum.log

[root@localhost cn]#

 

 

老版本Linux系统中可能不支持-S参数

 

[root@localhost cn]# umask

0022

 

0:特殊权限

0:user

2:group

2:other

 

这个叫权限掩码

777-022=755

对应的值是:rwxr-xr-x

 

 

如果将默认权限修改为:rwxr-xr—

其对应754

777-754=023

执行命令:umask 023即可以了

 

[root@localhost cn]# umask

0022

[root@localhost cn]# umask 023

[root@localhost cn]# mkdir test3

[root@localhost cn]# ll -d test3/

drwxr-xr--. 2 root root 6 Apr 24 21:17 test3/