***********文件权限**********

查看文件属性方式:ls -l filename
例如:

-  rw-  r--  r--. 1  root  root  46 Oct 1 05:03 file
1  2    3    4    5   6    7     8
监控指令:watch -n 1 ls -lR 文件名
Linux笔记1- 6 --文件_linux

1:文件类型
-     //普通文件
d     //目录
c     //字符设备
s     //套接字
p     //管道
b     //块设备
l     //链接
如果为目录:
3表示文件子文件的个数,6表示子文件的属性大小

2:文件读写权限
rw- r-- r-x
u g o
u
:所有人权限
g:所有组权限
o:其他人权限
其中:
r表示可读(可查看文件中的字符信息,可查看目录中的文件信息),w表示可写(可以更改文件内字符,可以在目录中添加删除文件,x
示可执行(可以运行文件内记录的程序动作,可以进入目录中),
ugo依次表示匹配优先度
修改权限:
chmodd [-R] <u|g|o><+|-|=><r|w|x> file|dir
linux中还可以数字方式修改文件权限 r=4w=2x=1 例如 rw- r-- r-- 表示为644
修改为rw- rw- rw-可写为 chomd 666 file|dir

3:文件的内容被系统记录的次数 --即删多少次才能被删掉

4:文件所有人
chown username filename|dir             //更改文件所有人
Linux笔记1- 6 --文件_linux_02
chown-R username dir                    //更改目录本身及里面内容的所有人
Linux笔记1- 6 --文件_linux_03

5:文件所有组
chgrp usernamegroupname filename|dir //更改所有人所有组

Linux笔记1- 6 --文件_linux_04

chgrp-R username dir                    //更改目录本身及里面内容的所有组
Linux笔记1- 6 --文件_linux_05

6:文件内容的大小

7:文件最后一次被修改的时间

8:文件名

######系统默认权限的设定
从系统存在的角度来说,开放权力越大,系统存在意义越高
从系统安全的角度来说,开放权力越小,系统安全性越高
所以系统设定新建文件或目录会去掉一些权限
设定方式
umask       //查看系统保留权限

umask      //修改系统保留权限为077,此设定为临时设定,只在当前shell中生效

Linux笔记1- 6 --文件_linux_06永久设定方式
vim /etc/bashrc //shell
70 if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; then
71 umask 002 //普通用户umask
72 else
73 umask 077 //超级用户umask
077
74 fi

vim /etc/profile //系统
70 if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; then

File: /run/media/kiosk/HELLO/linux/学习笔记/Linux学习6 Page 2 of 2
71 umask 002 //普通用户umask
72 else
73 umask 077 //超级用户umask
077
74 fi

Linux笔记1- 6 --文件_linux_07以上俩个文件umask设定值必须保持一致
source /etc/bashrc
source /etc/profile
让设定立即生效

练习:
1.新建用户组 shengchancaiwujishu
2.
新建用户要求如下:
1tom是生产组的附加用户
2harry是财务组的附加用户
3)leo是技术组的附加用户
3.新建目录要求如下;
1)/pub
目录为公共存储目录对所有用户可以读,写,执行
2/sc目录为生产部存储目录只能对生产部人员可以写入
3/cw目录为财务部存储目录只能对财务部人员可以写入

Linux笔记1- 6 --文件_linux_08

############特殊权限
1.suid(冒险位)
只针对二进制可执行文件
文件内记录的程序产生的进程的所有人为文件所有人
和进程发起人无关
设定方式:
chmod u+s file
suid=4
chmod 4chmod xxx file
修改回来 ;chmon 755 file
2.sgid(强制位)
注:监视进程 ps ax -o user,group,comm | grep watch
对文件:只针对二进制可执行文件,任何人运行二进制文件程序时程序产生的进程的所有组和程序发起人组的身份无关
对目录:当目录有sgid权限后,目录中新建的所有文件的所有组都自动归属到目录的所有组之中,和文件建立者所在组无关
设定方式:
chmod g+s file|dir
sgid=2
3.sticky(粘制位)
只针对与目录,当一个目录上有t权限,那么目录的文件只能被所有人删除
chmod o+t direcotry
t=1
chmod 1777 direcotry
rht-vmctl reset desktop 恢复虚拟机初始状态

练习2:
1.新建用户组 shengchancaiwujishu
2.
新建用户要求如下:
1tom是生产组的附加用户
2harry是财务组的附加用户
3)leo是技术组的附加用户
4)新建admin用户,此用户不属于以上提到的三个部门
3.新建目录要求如下;
1)/pub
目录为公共存储目录对所有用户可以读,写,执行,但用户只能删除属于自己的文件
2/sc目录为生产部存储目录只能对生产部人员可以写入,并且生产部人员所建立的文件自动归属于生产组
3/cw目录为财务部存储目录只能对财务部人员可以写入,并且财务部人员所建立的文件自动归属于财务组
4admin用户能用touch工具在/sc目录和/cw目录中任意建立文件,但不能删除文件

在练习1的基础上设定如下:

Linux笔记1- 6 --文件_linux_09