1.权限:限制用户权利的东西
在linux系统中,将用户分为两类:普通用户(操作受限) ,管理员用户(任何操作都可以)
su 用户名:切换用户,目的是为了获取这个用户的操作权限
2.文件访问对用户的分类:
文件所有者-u 文件所属组-g 其他用户-o
3.文件访问对操作的分类:
可读-r 可写-w 可执行-x
4.文件访问权限的表示
(1)rwxrwxrwx描述了三类用户各自对文件所能进行的操作,每个用户都可以对文件进行三种操作,则三类用户可以分别对文件进行三种操作,-表示不能对文件执行这种操作
(2)rw-rw-r–:文件所有者对文件可读可写不可执行,文件所属组对文件可读可写不可执行,其他用户对文件可读不可写不可执行
(3)在系统中权限的存储使用二进制比特位图,具有占用空间小,操作更方便的优点,二进制比特位只有0(无)、1(有),
rw-rw-r–:110 110 100
(4)为了便于表示和记忆,也可以使用三个八进制数字分别表示三类用户权限
rw- rw- r–:110 110 100 —>664
753:111 101 011 -->rwx r-w- wx–>所有者可读可写可执行 所属组可读可执行但不可写 其他用户可读可执行但不可写
5.创建一个文件的默认权限
(1)umask:查看或者设置文件的创建权限掩码,掩码决定了一个文件的创建默认权限(先设置文件的创建权限掩码,当用户创建一个文件后,会按照之前的创建权限掩码进行显示)
此时我们发现创建权限掩码为002,但我们不懂它具有什么含义,我们可以让其人性化显示
(2)umask -S:人性化显示,显示出来的是权限信息
如果创建的为普通文件,则不能进行可执行,因此会和权限掩码有所差异
(3)umask 数字:直接使用八进制数字对权限掩码进行修改(掩码的第一位忽略,一直为0,不可对它进行修改,只能对后三位进行修改),修改后的权限掩码是之后新创建文件的默认权限掩码。
eg: umask 0001(4)权限掩码与权限信息之间的关系
在shell中创建文件默认给定的权限:111 111 111(777)
权限信息(八进制数字)的计算方法:给定的权限&(~权限掩码),掩码的第一位忽略(特殊掩码位,不代入计算)
eg:777&(~002)—》111 111 101–》rwx rwx r-x
6.对创建好的文件的权限进行修改
(1)chmod 八进制数字 文件名:对指定文件直接使用八进制数字对其权限进行修改(2)chmod [augo] +/- [rwx] filename:针对某类用户进行权限的删除或增加
a表示所有用户(u g o )
eg: chmod a-x renhao.txt 删除所用用户对hello.txt的可执行操作chmod u+x renhao.txt 给renaho.txt文件的所有者增加可执行行操作
如果此时所有者不能进行可写(权限不够),则进行chmod u+x hello.txt,然后echo “nihao” >> renhao.txt 就可以写入到renhao.txt文件中
7.文件用户信息的修改
chown username filename:对指定文件的所有者进行修改
chown grpname filename:对指定文件的所属组进行修改
(注意:以上两个都只能在root下进行修改)
8.文件权限的沾滞位
(1)沾滞位:特殊的权限位,主要用于设置目录的沾滞位,其他用户在这个目录下可以创建文件,可以删除自己的文件,但是不能删除别人的文件
(2)chmod +t filename/dirname
在root用户下的rise目录下创建一个test1.txt文件,chmod +t test1.txt,然后切换到普通用户下,对其进行删除,发现没有这个操作权限。