基于linux下的文件权限控制

文件权限的控制

1.权限存在的意义

权限对于文件

r(read): 可读取文件的实际内容。

w(read): 可以编辑、新增或者修改该文件的内容(不包含删除该文件)。

x(execute): 该文件具有可以被系统执行的权限。

注: 在Windows中文件可以通过拓展名来判断是否具有执行能力,但是在Linux中,文件能否被执行那个则是由是否具有”x”权限来决定,与文件名没有绝对的关系。同样文件可以执行与可以成功执行是不一样的。成功执行不仅需要”x”权限,还需看该文件的内容。

权限对于目录

r(read): 表示具有读取目录结构的权限。

w(modify contents of directory):

新建新的文件和目录;

删除已经存在的文件和目录;

将已经存在的文件和目录重命名(不论该文件的权限为何);

转移该目录内的文件、目录位置。

x(access directory): 表示的是用户能否进入该目录成为工作目录 。
注: 具有”r”权限并不能进入目录,必须需要”x”权限。

2.权限的识别
ls -l file
ls -ld dir

基于linux下的文件权限控制
3.权限的查看和理解
- rw-r--r-- 1.  root root  0   Aug 17 01:30  wxp
1  2        3      4    5       6                    7          8   

以上标号下面将一一作出解释。
1.文件类型
- 普通文件
d  目录
l  软链接
s  socket
c  字符设备,把文件的内容直接显示出来

2.文件权限
rw-r--r--
u   g  o
user  用户
group   组
other    其他

3.文件硬链接个数,文件内容被系统记录的次数

基于linux下的文件权限控制

4.文件拥有者

5.文件拥有组

6.文件大小

7.文件最后一次被修改的时间

8.文件名

ls -ld  /mnt/ :
d rwxr-xr-x. 1 root root  4096 May 12 2017 /mnt/
1    2      3    4    5      6      7        8
1.类型
2.权限
3.目录中子目录的个数
4.用户
5.组
6.子文件或子目录元数据(描述数据的数据,即文件属性)大小

基于linux下的文件权限控制

以上截图表述:

当ww目录下没有创建文件时,子目录为6字节;当创建file文件后ww子目录字节为17,将file文件删掉创建fil文件时ww子目录字节数变为16。

7.最后一次被更改的时间
8.名称

修改用户和用户组
1.此命令必须用root用户执行
chown username file|dir    改变某文件或目录的拥有者
chown username:|.group file|dir   改变某文件或目录的拥有者及组,但不改变里面的内容

基于linux下的文件权限控制

chown -R username dir   改变某目录的拥有者
chgrp -R group dir    改变目录的组并改变里面的内容

基于linux下的文件权限控制

文件权限
r
对文件   是否可以查看文件中的字符
对目录   是否可以查看目录中有什么文件

w
对文件    是否可以改变文件中记录的字符
对目录    是否可以在目录中管理文件,是否可以改变目录中文件的元数据
x
对文件    是否可以可以通过文件名称调用文件内记录的程序
对目录         是否可以进入此目录


2.权限的管理
字符形式
chmod  <u/g/o>  <+|-|=>  <r|w|x> file|dir

+为增加权限

-为取消某权限

=直接给某权限

改变文件权限如下:

基于linux下的文件权限控制

改变目录权限如下:

基于linux下的文件权限控制

数字方式
rwx
210
x权限:2^0x1|0=1|0
w=2^1x1|0=2|0
r=2^2x2|x0=4|0
x=1
w=2
r=4

故有:

rwx=7
rw-=6
r-x=5
r--=4
……
--x=1

例如:chmod 755 wxp

           chmod  775  ww/

 

基于linux下的文件权限控制
练习:

基于linux下的文件权限控制

基于linux下的文件权限控制

基于linux下的文件权限控制

access  control(acl)权限列表
特定用户对特定文件有指定权限
-rw-r--r--+ 1 root  root  216 May 12 2017 rht
+为权限列表开启

getfacl file  查看文件权限
##file:file   ##文件名
##owner:root   文件所有人
##group:root  文件所有组
user::rw-  用户权限
user:可iosk:rwx  特殊指定用户权限
group::r--  组权限
mask::rwx  权限最大值
other::r--  其他*限


setfacl -m u:admin:rwx wxp  设定列表用户权限

基于linux下的文件权限控制
setfacl -x u:student file   删除列表中指定用户
setfacl -b file    关闭权限列表

基于linux下的文件权限控制