一、文件属性的查看
1、ls -l 文件名:查看 文件基本属性
图中各区域对应的属性:
1.“-”文件类型:- :普通文件;d :目录;c :字符设备;s :套接字;p :管道;b :块设备;l:链接
2.“rw-r--r--”文件读写权限:---|---|---|分为3部分,每三个为一部分;第一部分为文件拥有*限,第二部分为所在组权限,第三部分 为其他*限。
r :对文件可查看文件中字符;对目录可查看 目录中文件信息;
w:对文件可更改文件内字符;对目录可在目录中添加和删除文件;
x :对文件可以运行文件内记录的程序动作;对目录可以进入目录中。
3.“1”:对文件:文件内容被系统记录的次数;对目录:目录中文件属性的字节数
4.“root”:文件所有人
5.“root”:文件所有组
6.“0”:文件内容的大小
7.“Oct 6 17:00”:文件最后一次被修改的时间
8.“file”:文件名称
二、文件所有人所有组的管理
1、chown username 文件名:更改文件所有人
2、chown username.groupname 文件名:更改文件的所有人和所有组
3、chown -R username 目录名:更改目录本身及里面所有内容的所有人
4、chgrp -R grouoname 目录名:更改目录本身及里面所有内容的所有组
-R表示递归更改
监控命令:watch -n 1 ls -lR /mnt
三、文件普通权限
1、rw-|r--|r--
u g o
u:对文件所有人的权限;
g:对文件所以组的权限;
o:文件对其他人的权限。
2、 字符方式修改文件权限
(1)chmod u-x 文件名 :文件所有人去掉x权限
(2)chmod g+w 文件名 :文件所有组加上w权限
(3)chmod g-w,o-w 文件名 :文件所有组减去w权限,其他人减去w权限
(4)chmod ugo-r 文件名 :文件所有人,所有组,其他人均去掉r权限
3、数字方式修改文件权限
Linux系统中,r=4,w=2,x=1;例rw-|r--|r--中,u=rw=4+2=6,g=r=4,o=r=4,所以文件权限为644
u g o
7=rwx;6=rw-;5=r-x;4=r--;3=-wx;2=-w-;1=--x
例:chmod 777 文件名:将文件所有人,所有组,其他*限全部改为rwx
4、系统默认权限的设定
从系统存在角度来说,开放权力越大,系统存在意义越高,而从系统安全角度来说,开放权力越少,系统安全性越高,所以系统设定新建文件或目录会去掉一些权限,在umask设置
(1) 设置方式:umask 查看系统默认保留权限为022
umask 077,修改权限为077
注意:该设定只在当前shell中生效,在其他shell中不生效,如下图:
(2)永久设定方式:
vim /etc/bashrc
黑线为普通用户权限,红线为超级用户权限,可将022改为077如图:
vim /etc/profile
黑线为普通用户权限,红线为超级用户权限,必须将其改成和/etc/bashrc一致!!!
然后再source /etc/bashrc
source /etc/profile设定才算成功
该设定为永久设定,在其他shell中也生效:
5、文件的访问控制(acl列表)
当一个文件的权限为---|---|--- +时,即后面跟一“+”时,表示该文件有acl列表,acl列表表示特殊用户对特殊文件有特殊权限,此时文件的权限以权限列表为准。
设定方法:setfacl -m u:用户名:所给权限 文件名
查看列表方法:getfacl 文件名
图中各部分表示信息:
1:文件名称;2:文件所有人;3:文件所有组;4:拥有者权限;5:特殊用户权限;6:组权限;7:权限掩码;
8:其他*限
删除特殊权限:setfacl -x u:student 用户名
关闭权限列表:set -b 文件名
mask:权限掩码,用来标实能够赋予用户最大权限
acl默认权限:当我们需求某个目录对于student可写,并且目录中新建的子目录对student也可写时,就要设定默认默认权限
设定方式:setfacl -m d:u:student:rwx /westos
设定默认权限后新建立的文件都会产生权限列表。
6、特殊权限
(1)suid冒险位:只针对二进制可执行文件,文件内记录的程序产生的进程的所有人为文件所有人,和进程发起人身份无关。
设定方式:chmod u+s 文件名;s=4,或者可设置为:chmod 4xxx 文件名
(2)sgid强制位:对文件:只针对二进制可执行文件,任何人运行二进制文件程序时,程序产生的进程的所有组都是文件的所有组, 和程序发起人组的身份无关
对目录:当目录有sgid权限后,目录中新建的所有文件的所有组都自动归属到目录的所有组之中,和文件建立 者所在的组无关
设定方式:chmod g+s 文件名;sgid=2,所以可设定为chmod 2xxx 文件名
(3)sticky粘制位:只针对与目录,当一个目录上有t权限,那么目录中的文件只能被文件的拥有者删除。
设定方式:chmod o+t 文件名;t=1,所以也可以为chmod 1xxx 文件名
注意:有t权限的文件只能被拥有者删除
westos是由root用户创建的且在上面实验中加入了t权限,所以student用户无法删除。