文件权限存在的意义
1】系统最底层安全设定方法之一
2】保证文件可以被可用 的用户作相应操作
文件权限的查看
ls -l file ##查看文件的属性,大小等详细信息 (如创建者,创建时间,读写权力
ll file ##查看文件的属性,大小等详细信息
ls -d dir ##列出目录或文件本身,而不是目录或文件的内容
ls -ld dir ##列出目录的属性参数及信息
ll -d file ##列出目录的属性参数及信息
最后说一下linux下文件的一些文件颜色的含义
绿色---->代表可执行文件,(绿色代表通行证的意思)呵呵
红色---->代表压缩文件
深蓝色---->代表目录
浅蓝色----->代表链接文件
灰色---->代表其它的一些文件
3 文件权限读取内容解释
-rw-rw-r--. 1 kiosk kiosk 0 Mar 26 13:13 file
[1] [2] [3] [4] [5] [6]目录:属性大小 [7] [8]
[1]:文件的类型
相似的参数类型
- ##空文件
d ##目录
l ##软链接
s ##socket 套接字 相当于门 一个出口或者入口
b ##block 块设备
c ## 字符设备
[2]:文件的访问权限
rw- [u] 文件拥有者对文件的权限
rw- [g] 文件所有组对文件的权限
r-- [o] 除去拥有者、所有组其他的对文件的权限
r:读的权限 w:写入的 权限 x:执行的权限
rwx r=2*2=4 w=2*1=2 x=2*0=1 rwx=7 rw=6 rx=5 wx=3
[3] 文件: 被写入次数
目录: 子目录的个数
[4]文件所属的用户
[5]文件所属的用户组
[6]占用磁盘的大小
[7]修改时间
[8]文件名称
4.chown命令 用法:改变文件所有者和所在组
chown user.group file|dir ##改变文件或目录的所有者和组
chown -R user.group dir ##递归改变目录的所有者和组
5.chgrp命令
更改目录或文件的组
`
chgrp group file|dir ##改变文件或目录的组
chgrp -R group dir ##递归改变目录的组
`
6.权限的理解
上面说道rwx具体代表的权限,对文件与目录的效果是不一样。
r: *对文件:*是否可以查看文件中的内容 —>cat file
对目录: 是否可以查看目录中有什么子文件或者子目录 —> ls dir
w: 对文件:是否可以改变文件里面记录的字符
对目录: 是否可以对目录中子目录或子文集的元数据进行更改
x: 对文件:是否可以通过文件名调用文件内记录的程序
对目录: 是否可以进入目录
7 chmod命令
作用:更改目录文件权限的命令
1】chmod (u|g|o)(+|-|=)(r|w|x) file|dir ##更改文件或目录的权限
2】chmod u+x /dir/file ##增加文件所有者的执行权限
3】chmod g-w /dir/file ##减少文件所在组的写入权限
4】chmod ugo+rwx /dir/file ##增加文件所有者、所在组、其它用户的读、写入、执行的权限
5】chmod u=rw,g=wx,o=rwx /dir/file ##赋予所有者rw权限、所在组wx权限、其他用户rwx权限
6】chmod +r /dir/file ##增加ugo的r权限
7】chmod 0755 dir/file ##更改u的权限为rwx、g的权限为rx、o的权限为rx
****注意chmod +w 默认只加文件所有者即u的写入权限,因为该权限较为重要。
2】chmod u+x /dir/file ##增加文件所有者的执行权限
3】chmod g-w /dir/file ##减少文件所在组的写入权限
4】chmod ugo+rwx /dir/file ##增加文件所有者、所在组、其它用户的读、写入、执行的权限
5】chmod u=rw,g=wx,o=rwx /dir/file ##赋予所有者rw权限、所在组wx权限、其他用户rwx权限
6】chmod +r /dir/file ##增加ugo的r权限
7】chmod 0755 dir/file ##更改u的权限为rwx、g的权限为rx、o的权限为rx
8.umask
**umask是设置限制新文件权限的掩码,效果与chmod的效果刚好相反
umask的值越大,获得的权限越少,系统越安全
即时修改
umask xxx 即时修改生效**
一、umask介绍
在linux系统中,我们创建一个新的文件或者目录的时候,这些新的文件或目录都会有默认的访问权限,umask命令与文件和目录的默认访问权限有关。若用户创建一个文件,则文件的默认访问权限为 -rw-rw-rw- ,创建目录的默认权限 drwxrwxrwx ,而umask值则表明了需要从默认权限中去掉哪些权限来成为最终的默认权限值。
当前umask值为0077 创建出的文件权限为600
(https://www.cnblogs.com/zhangchengxiang/p/5196439.html) 这里加个博客对umask的理解
永久修改
vim /etc/profile ##系统配置文件修改
vim /etc/bashrc ##shell配置文件修改
修改方式:用 vim 运行上述配置文件
末行模式键入/umask 高亮显示
找到 if[ $UID -gt 199 ] && ["id -gn
" = “id -un
”]; then
umask 002 ##普通用户的umask
else
umask 077 ##root的umask
fi
修改完毕:wq 退出保存
注意:不会立即生效
需要键入:
source /etc/profile
source /etc/bashrc
才会生效
vim /etc/profile ##系统配置文件修改
vim /etc/bashrc ##shell配置文件修改
注意:不会立即生效
需要键入:
source /etc/profile
source /etc/bashrc
才会生效
9.acl权限列表
作用:让特定用户对特定的文件拥有特定权限
acl列表的查看
drwx------+ 2 root root 6 Mar 28 03:19 /mnt/file
file: mnt/file ##文件名称
owner : root ##文件拥有者
group : root ##文件拥有组
user : : rwx ##文件拥有者的权限
user : student : rwx ##制定用户的权限
group : : — ##文件拥有组的权限
mask : : rwx ##能赋予用户的最大权力伐值
other : : — ##其他人的权限
注意:acl开启时权限末尾会出现"+"
acl列表相关命令
getfacl file ##查看文件的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 ##关闭file上的acl列表
10.mask值
在权限列表中mask标示能生效的权力值,当用chmod减小开启acl的文件权限是mask值会发生改变
即用了chmod g-w file
如果要恢复mask值
setfacl -m m:rw file
11.acl的默认权限设定
acl 默认权限只针对目录设定
acl 权限只针对设定完成之后信件里的文件或目录身生效,而已经存在的文件是不会继承默认权限。
setfacl -R -m u : studet:rwx /mnt/test 对之前目录下存在的文件赋予其权限
例 :setfacl -R -m u : zhangwei:rwx dir/
setfacl -m d : u : student:rwx /mnt/test 对目录之后创建的文件赋予其权限
例 给目录dir目录下新建一个file1 赋予其权限
setfacl -k /mnt/test
12.特殊权限
粘制位:sticky(t)
作用:只针对目录生效,当一个目录上有sticky权限时在这个目录中的文件只能被文件的所有者删除
设定方式:
chmod o+t dir
chmod 1xxx dir
dow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDgxODcyMA==,size_16,color_FFFFFF,t_70)
强制位:sgid(s)
作用:
对文件:只针对与二进制可执行文件,当文件上有sgid时任何人执行此文件产生的进程都属于文件的组
对目录:当目录上有sgid权限时任何人在此目录中建立的文件都属于目录的所有组
设定方式:
chmod g+s file|dir
chmod 2xxx file|dir
冒险位:suid(s)
作用:只针对于二进制可执行文件,当文件上有suid时任何人执行这个文件中的程序产生的进程都属于文件的所有人
设定方式:
chmod u+s file
chmod 4xxx file