文件权限的查看
名称 | 方法 |
---|---|
查看文件 | ls -l filename 和 ll filename |
查看目录 | ls -ld dir 和ll -d dir |
文件权限的读取
在终端中查看文件权限后或出现以下内容
-rw-r–r--.1 root root 0 Jun 15 10:17 file
-:代表文件的类型
类型 | 字符 |
---|---|
空文件或者文本 | - |
目录 | d |
软连接 | I 快捷方式 |
socket套接字 | s 和外部实现数据交互,例如进入数据库 |
block块设备 | d 往里面放数据(u盘) |
字符设备 | c 典型的线性设备 |
rw-r–r--代表文件的权限
rw-:[u]——文件拥有者对文件所能作出的操作
r–:[g]——文件所有组对文件所能作出的操作
r–:[o]——除了以上都为其他者,表示其他者对文件所能作出的操作
1:对文件来说:文件硬链接的个数
对目录来说:目录中子目录的个数
root root:文件所有人 ,文件所有组
0:对文件来说:文件大小
对目录来说:目录中子文件元数据大小
Jun 15 10:17:文件被修改的时间
file:文件名称
除了文件名其他都是一个字节(1-7)
软连接:两个(多个)节点区对应数据区————节省磁盘空间
硬连接:一个节点区对应多个数据区————备份文件
改变文件所有人和所有组
名称 | 方法 |
---|---|
改变文件所有人 | chown username file |
改变文件所有组 | chgrp group file |
改变目录所有人 | chown -R username dir |
改变目录所有人 | chgrp -R group dir |
改变文件或目录所有人和所有组 | chown username.group file/dir |
文件权限的理解
1.普通权限
权限 | 文件 | 目录 |
---|---|---|
r | 读权限 查看文件内容 | 列出其子目录结构信息 |
w | 写权限 配合r权限,则可对文件进行修改和删除 | 配合x权限就可以添加、删除和移动内部文件,而删除目录和复制目录内文件则需要配合r和x权限。 |
x | 执行权限 是否可以通过文件名称调用文件内的记录的程序 | 可以进入该目录和对其下文件作操作 |
2.特殊权限
权限 | 文件 | 目录 |
---|---|---|
suid | 二进制可执行文件会以所有者和调用者的用户标识去执行,也就是拥有两者的权限 | 无 |
sgid | 二进制可执行文件会以所属组和调用者的标识去执行,也就是拥有两者的权限。 | 在目录下创建文件、目录等,其所属组与该目录的所属组相同。而不是所有者的用户组了。 |
stickyid | 不对文件设置 | 配合wx权限,仅目录的所有者、子目录或文件的所有者和root用户才能删除、移动该目录下的子目录和文件 |
文件权限的设定方法
1.普通权限
1.字符方式----chmod [参数] 权限… 目标…
2.数字方式----chmod [参数] 权限值… 目标…
3.复制文件权限----chmod [参数] --reference=模板 目标…
方法 | 程序 |
---|---|
chmod (u/g/o)+(-)rwx file/dir | 文件拥有者获得(+)或减少(-)对应权力 |
chmod 0-7,0-7,0-7 file/dir | 通过数字方式设定权限 |
数字过程可通过计算得到结果
语法为:chmod abc file
其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。
r=4,w=2,x=1
例 --wx =2+1=3
rwx=4+2+1=7
2.特殊权限
suid作用:当文件上有suid时任何人执行这个文件中的程序产生的进程都属于文件所有人
设定方式:chmod u+s file
chmod 4xxx file
sgid作用:当文件上有sgid权限时任何人执行此文件产生的进程都属于文件的组;当目录上有sgid权限时任何人此目录中建立的文件都属于目录的组;
设定方式:chmod g+s file|dir
chmod 2xxx file|dir
sticky作用:当目录上有sticky权限时,在这个目录中的文件只能被文件的所有者删除
设定方式:chmod o+t file
chmod 1xxx file
xxx为原文件属性
系统预留权限阈值----umask
对权限系统预留值的理解
1:资源的意义在于共享,权限开放越大,共享效果越明显,但安全性越差
2:对于系统安全而言,开放权力越小,系统越安全
3:在系统中开放的权力,保留不安全的权力以确保系统的功能性和安全性
umask相当于chmod 的补码。
chmod的值=777-umask-111
临时修改umusk的值
##显示系统预留权限值————umask
##临时修改umask值————umask 077
永久修改umusk的值
/etc/profile是系统的配置文件,使用vim进入修改
/etc/bashrc是shell的配置文件,使用vim进入修改
修改以上两个文件的对应属性可以永久改变umask的值
配置完以上两个文件后,并不能立刻生效,使用source /etc/bashrc和source /etc/profile让设置后的文件立刻生效
、在这里插入图片描述
权限列表
(1)作用:让特定的用户对特定的文件拥有特定权限
(2)acl列表查看
-rw-rwxr–+ 1 root root 0 Jul 21 14:25 file
1中权限中的“+”即为acl开启
开启权限列表——getfacl file1
文件名称————# file: file1
文件拥有者———# owner: root
文件拥有组———# group: root
文件拥有人的权限———user::rw-
指定用户的权限———user:westos:rwx
文件拥有组的权限———group::r–
赋予用户最大权力阀值———mask::rwx
其他人的权力———other::r–
(3) facl默认权限的改变
目的 | 方法 |
---|---|
在该目录以后生成的新文件含有的权力为rwx | setfacl -m d:u:用户名:rwx /目录 |
在该目录以前旧文件全部生效 | setfacl -R -m u:用户名:rwx /目录 |
取消默认权限 | setfacl -k /目录 |
facl默认权限只针对目录设定,且对于设定完成后新建的文件或者目录生效,已经存在的文件不会继承默认权限
(4)facl的mask阈值
在权限列表中mask表示能生效的权力值
当用chmod减小开启facl的文件权限时mask会发生改变