第六章liunx ~ 文件权限的管理

1 . 文件权限
1.文件权限存在的意义
系统最底层安全设定方法之一
保证文件可以被可用的用户做相应操作
2.文件权限的查看
ls -l file
ls -ld dir
在这里插入图片描述
在这里插入图片描述
ll file
ll -d dir
在这里插入图片描述
3.文件权限的读取

  • |rw-rw-r–| 1 |kiosk | kiosk | 0 | Jul 21 09:18 | file
    [1] [2] [3] [4] [5] [6] [7] [8]

4,文件的类型

  • 空文件,或者文本
    d 目录
    l 软链接,快捷方式
    s socket 套接字
    b block 块设备
    c 字符设备

5,文件的权限
在这里插入图片描述
1.[u] 文件拥有者对文件能做什么操作
2.[g] 文件所有组对文件能做什么操作
3.[o] 其他人对文件能做什么操作

对文件:文件硬链接个数(文件内容被记录的次数)
在这里插入图片描述
对目录:目录中子目录的个数(一般新建文件里面有两个隐藏文件. …)
4,文件的所以人
5,文件的所有组
6,对文件:文件大小
对目录:目录中子文件元数据(matedate可以理解为文件的属性)大小
7,文件被修改的时间
8,文件的名称

6,如何改变文件的所有人和所有组
采用监控命令查看信息,方便后续观察
watch -n 1 ls -lR westos
chown username file|dir 更改文件的所有人
chown user.group file|dir 更改所有人和所有组
chown -R user.group dir 更改目录本身以及里面所有内容和所有人
chgrp group file|dir 更改文件的所有人
chgrp -R group dir 更改目录本身以及里面所有内容的所有组

7,如何改变文件的权限
文件共有 r w x 三种权限在这里插入图片描述

r
对文件:可以查看文件中的字符
对目录:可以查看目录中文件的信息

w
对文件:可以更改文件内字符
对目录:可以在目录中添加删除文件

x
对文件:可以运行文件内记录的程序动作
对目录:可以进入目录中

文件权限的更改有两种
1,chmod <u|g|o><+|-|=><r|w|x> file|dir
u=user g=group o=other
chmod u+x file1
chmod g-r file2
chmod ug-r file3
chmod u-r,g+x file4
chmod -r file5
chmod o=r-x file6

在这里插入图片描述
2, r=4 w=2 x=1
7=rwx
6=rw-
5=r-x
4=r–
3=-wx
2=-w-
1=–x
0=—

8,umask值
umask 系统建立文件是保留的权力
命令umask可直接显示系统的umask值

umask 查看系统保留权限默认为022
umask 077 修改该系统保留权限为077,此设定为临时设定,只当前shell中生效

永久设定方式:
修改shell配置文件 vim /etc/bashrc
70 if [ $UID -gt 199 ] && [ “id -gn” = “id -un” ]; then
71 umask 002 ##普通用户umask
72 else
73 umask 077 ##超级用户umask
74 fi

修改系统配置文件 vim /etc/profile
59 if [ $UID -gt 199 ] && [ “id -gn” = “id -un” ]; then
60 umask 002 #普通用户
61 else
62 umask 077 ##超级用户umask
63 fi

以上两个文件umask设定值必须保持一致
source /etc/bashrc
source /etc/profile

上面两个让设定立即生效

9,acl权限列表
1.acl定义:指定特殊用户对特殊文件有特殊权限
-rw-rwxr—+ 1 root root 0 Jul 21 01:39 file
有‘+’代表acl开启

命令 getfacl file 查看acl开启的文件的权限
如下;

file: file文件名称
owner: root 文件所有人
group: root 文件所有组
user::rw- 文件拥有者权限
user:kiosk:rwx 指定用户权限
group::r-- 文件组权力
mask::rwx 能赋予用户的最大伐力值
other::— 其他人的权限

acl 列表的管理
setfacl -m u:username:rwx file 设定username对file拥有rwx权限
setfacl -m g:group:rwx file 设定group组成员对file拥有rwx权限
setfacl -x u:username file 从acl列表中删除username
setfacl -b file 其他人的权限

mask值
在权限列表中mask标示能生效的权力值
当用chmod减小开启acl的文件权限时mask值会发生改变 chmod g-w westos
如果要恢复mask值setfacl -m m:rwx westos

当目录/mnt/test/具有acl默认权限是,在此目录下新建的文件生效,而已经存在的目录是不会继承默认权限

注意: 默认权限只对目录中新建立的文件或者目录生效,对已经建立的文件无效,
对于目录本身也无效

setfacl -m d:u:student:rwx /westos

####6.特殊权限####
1.suid ##冒险位
之针对二进制可执行文件,
文件内记录的程序产生的进程的所有人为文件所有人
和进程发起人身份无关

设定方式:
chmod u+s file
suid=4
chmod 4xxx file

2.sgid ##强制位
对文件:只针对二进制可执行文件,
任何人运行二进制文件
程序时程序产生的进程的所有组都是文件的所有组
和程序发起人组的身份无关
对目录:当目录有sgid权限后,目录中新建的所有文件的所有组
都自动归属到目录的所有组之中,和文件建立者所在的组无关

设定方式:

chmod g+s file|dir
sgid=2
chmod 2xxx file|dir

3.sticky ##粘制位
t权限:
只针对与目录,当一个目录上有t权限,那么目录中的文件只能被文件的拥有者删除

设定方式:
chmod o+t direcotry
t=1
chmod 1777 direcotry

###end###

猜你喜欢

转载自blog.csdn.net/gc034319/article/details/83005247