一、文件权限查看及读取
1.文件权限
文件权限存在的意义
系统最底层安全设定方法之一
保证文件可以被可用的用户做相应操作
2.文件权限的查看
ls -l file ##查看文件权限
ls -ld dir ##查看目录权限
3.文件权限的读取
文件的属性被叫做文件的元数据(meta date)
一种元数据用1个byte来记录内容
<1>文件权限信息
– | rw-r–r– | . | 1 | root | root | 0 | Apr 12 10:57 | westos
[1] [2] [3] [4] [5] [6] [7] [8] [9]
<2>目录权限信息
d | rw-r–r– | . | 2 | root | root | 0 | Apr 12 10:57 | westosdir
[1] [2] [3] [4] [5] [6] [7] [8] [9]
<3>对于每一位的解释
[1] 文件类型
– ##普通文件##
d ##目录##
l ##软连接##
b ##快设备##
c ##字符设备##
s ##socket套接字##
p ##管道##
[2] 用户权限
rw- | r– | r–
u g o
[u] 文件拥有者对文件能做什么操作
[g] 文件所有组对文件能做什么操作
[o] 其他人对文件能做什么操作
[3] 系统的selinux开启
[4] 对于文件:文件内容被系统记录的次数(硬链接个数)
对于目录:目录中子目录的个数 [5] ##文件拥有者
[6] 文件拥有组
[7] 对于文件:文件内容大小
对于目录:目录中子文件的元数据大小
[8] 文件内容被修改的时间
[9] 文件名称
二、普通权限的类型及作用
1.用户对文件的身份
u: #user 文件的拥有者,ls -l 看到的第五列信息
g: #group 文件拥有组, ls -l 看到的第六列信息
o: #other 既不是拥有者也不是拥有组成员的其他用户的通称
2.权限位
rwx | r– | r–
u g o
3.用户身份匹配
user > group > other
4.权限类型
– #权限未开启
r #可读
#对于文件:可以读取文件内容 —>cat file
#对于目录:可以ls列出目录中的文件 —> ls dir
w #可写
#对于文件:可以更改文件内容
#对于目录:可以在目录中新建或者删除文件
x #可执行
#对于文件:可以用文件名称调用文件内记录的程序
#对于目录:可以进入目录中
三、设定普通权限的方法 ##chmod 设定文件权限
(如何改变文件的权限)
1.chmod 复制权限
chmod –reference=/tmp /mnt/westosdir ##复制/tmp目录的权限到/ mnt/westosdir上
chmod -R –reference=/tmp /mnt/westosdir ##复制/tmp目录的权限到/mnt/westosdir及目录中的子文件上
## -R 代表第归操作
2.chmod 字符方式设定权限
chmod < + | – | => < r | w | x > file | dir ##用字副方式设定文件权限
watch -n 1 “ls -ld ./dir;ls -l dir/” ##监控
示例:
chmod u-rw ./dir
chmod u-rw ./dir/file1
chmod u-rw , g+x , o+wx ./dir/file2
chmod a-rwx ./dir/file3
chmod u=rwx , g=rx , o=— ./dir/file4
chmod -R u=rwx , g=rx , o=— ./dir/dir1/
3.chmod 数字方式设定权限
<1>权限波尔指表示方式
rwx = 111
— = 000
<2>三位二进制可以表示的最大范围为8进至数
rwx=111=7
rw- =110=6
r-x =101=5
r– =100=4=r
-wx =011=3
-w- =010=2=w
–x =001=1=x
— =000=0
chmod 600 ./dir/file5
rw——
四、系统的默认权限设定
系统本身存在的意义共享资源
从安全角度讲系统共享的资源越少,开放的权利越小,系统安全性越高
既要保证系统安全,又要系统创造价值,于是把应该开放的权利默认开放
把不安全的权力默认保留
如何保留权力? ##umask##
umask表示系统保留权力
umask #查看保留权力
umask 权限值 #临时设定系统预留权力
文件默认权限 = 777-umask-111
目录默认权限 = 777-umask
1.umask临时更改
umask 077 ##临时设定系统预留权限为077
2.umask永久更改
普通用户的umask更改为022
vim /etc/ bashrc ##shell系统配置文件
74 if [ $UID -gt 199 ] && [ “id -gn” = “id -un” ]; then
75 umask 002–>022 #普通用户的umask
76 else
77 umask 022 #root用户的umask
78 fi
vim /etc/ profile ##系统环境配置文件
59 if [ $UID -gt 199 ] && [ “id -gn” = “id -un” ]; then
60 umask 002–>022 #普通用户的umask
61 else
62 umask 022 #root用户的umask
63 fi
source /etc/bashrc ##source作用时使我们更改的内容立即被系统识别
source /etc/profile
五、文件用户用户组管理 (如何改变文件的所有人和所有组)
chown username file ##更改文件拥有者
chgrp groupname file ##更改文件拥有组
chown username : groupname file ##同时更改文件的拥有者和拥有组
chown|chgrp -R user | group dir ##更改目录本身及目录中内容的拥有者或者拥有组