关于文件

来源:互联网 发布:ppt数据分析图表制作 编辑:程序博客网 时间:2024/06/16 13:25

1.文件属性
ls -l 文件名

这里写图片描述
(1)-代表此为普通文件
(2)rw - - - - - - -代表文件读写权限
前三个代表文件所有者的权限,中间三个字符代表文件组成员的权限,后三个代表其他人对文件的权限
对于文件而言读写权限分别有 r:对文件可读,即可查看文件中的字符
w:对文件可写
x:可以执行文件中
所以此文件file6中所有者root对文件的权限为读写,组成员和其他人均没有权限
(3)1 数字 代表文件被记录的次数
(4)root 代表文件所有者
(5)root 代表文件所在组
(6)0 代表文件大小
(7)时间 代表文件最近一次被修改的时间
(8)file6 代表文件名

ls -ld 目录名
这里写图片描述
与文件相似,(1)d 代表 为目录
(2)rwxr - xr - x 代表读写权限
(3)2 代表目录下子文件或子目录个数
(4)root 代表文件所有者
(5)root 代表文件所在组
(6)17代表目录下文件属性大小
(7)时间 代表文件最近一次被修改的时间
(8)/test代表目录名
2.修改文件所有人所有组属性
chown 希望其所有人 文件名
chgrp 希望其所有组 文件名
chown 希望所有人.所有组 文件名
chown 希望其所有人 目录名 -R(-R 代表将目录及目录下的文件或子目录一起修改)
chgrp 希望其所有组 目录名 -R

3.修改文件读写权限
(1)用字符修改
u: 代表所有人
g: 代表所有组
o: 代表其他人
比如chmod u+x,g-w 文件名 ###使文件所有者权限加上可执行,所有组权限去掉可读,其他人权限不变
(2) 用数字修改
r: 代表4
w: 代表2
x: 代表1
rwx:代表7
所以上面file6的读写权限可表示为600,/test 的读写权限可表示为755

4.系统默认权限
用umask查看,若显示为022,代表系统保留权限为022,则建立目录的权限为777-022=755,建立文件权限为755-111=644.
那么我们可以在配置文件里永久性的修改系统保留权限

5.特殊用户或组建立特殊权限
(1)setfacl -m u:特殊用户名:权限 文件名/目录名 ###设定特殊用户特殊权限
setfacl -m g:特殊组:权限 文件名/目录名 ###设定特殊组特殊权限
getfacl 文件名/目录名 ###查看文件具体权限信息
这里写图片描述
我们可以看到给目录westos增添了student用户权限,前后对比,并且在详细目录信息中可以看到读写权限后增加了一个“+”,代表有权限列表
若要删除特殊用户/特殊组的特殊权限,setfacl -x 特殊用户名/组 目录名/文件名
若设置的特殊用户/组已经全部删掉,我们还需使用命令setfacl -b 文件/目录 来删除列表,否则“+”号一直存在

(2)“+”,代表此时看到的权限是假的,我们只能从getfacl 中获取信息
若此时用chmod 改变了其读写权限,可能会改变mask值,进而影响特殊用户的权限。
这里写图片描述
这里用chmod 改变了组的权限,因为本身student是具有wrx权限的,在我们chmod g- rwx 之后,显示的还是具有rwx权限,但是在student ,以及组group 后面均出现了 “effective:- - - ”我们用student进行
vim /file 写试验
这里写图片描述
发现没有写的权限了,所以也确实影响了特殊用户的权限
可以用setfacl -m m:rwx /file来修改其影响
这里写图片描述

6.使特殊用户对目录下新建立的子目录也具有权限
使用setfacl -m d:u:用户名:权限 目录
这里写图片描述

这里写图片描述

这里写图片描述
我们可以看到,test1是该命令之前设置的,student对其没有默认继承权限,不能在/test1 下建立文件。test2是该命令之后建立的,使student 用户对其具有继承默认权限,能够在其目录下进行读写操作

7.sgid
当一个用户在目录下建立文件时,其文件默认所在的组为用户所在的组,

这里写图片描述
比如我们用tom用户在/hello下新建了一个文件,我们可看出其文件所有者为tom所在的组为所有者所在的组,也为tom
而当我们需要将/hello目录下新创建的文件所在的组,强制归到目录所在的组,而不再归所有者所在的组时,就需要用到强制位
命令为chmod 2xxx 目录名 或者chmod g+s目录名
这里写图片描述

7.sticky
当一个目录设置了很大的权限,比如777,用户就可以随便删除不是该用户所创建的文件,所以我们要给它加上t权限,使用户不能删除别人创建的文件,具体命令为chmod o+t 目录名 或者 chmod 1xxx 目录名

8.冒险位
对于二进制可执行文件,进程发起人是谁,则执行者是谁;设置了冒险位后,程序执行者为其文件所有人,与发起人无关
命令为chmod u+s 文件名 或者为chmod 4xxx 文件名

原创粉丝点击