标签:root权限 查看属性 类型 文本 没有权限 中文 bin 它的 通用
文件权限分基本权限和高级权限
基本权限:
权限主要是设置用户的权限
基本权限分三种:
r:读 可以读取文件的内容
w:写
x:执行
权限 对文件的影响 对目录的影响
r:读 可以读取文件的内容 可以列出目录的内容(文件名)
w:写 可以更改文件的内容 可以创建或者删除目录中的任意一个文件
x:执行 可以作为命令执行文件 可以访问目录的内容(取决于目录中文件的权限)
x权限对文件是非常危险的;w权限对于目录来说是非常危险的
为什么x对于文件是非常危险的?因为:如果一个文件有x权限,就相当于把系统抛了一个接口给用户;用户没有权限没关系,只要有编译器可以往里面写代码 ;所以一般情况下文件是没有x权限的;意味着只能往文件里面写文本,就算写了代码,也认为是文本;x权限要针对目录就只能允许要进那个目录,没有别的作用
# ls -l (ls -l 查看属性)
总用量 0
-rw-r--r-- 1 root root 0 3月 2 03:09 test.txt
- 文件的类型(-:文本文件 d:目录 l:链接文件)
rw-r--r-- 权限(前三个是所有者,指的是谁创建的这个文件,中间三个是所有组,意味着这组里面的用户,都这个文件有什么权限,后面三个叫其他用户,
1 引用次数(快捷方式数量)
root 所有者
root 所有组
0 文件的大小(1k为单位)
3月 2 03:09 文件的创建和最后修改时间
chown:更改文件的属主、属组(既可以改所有者,也可以改所有组)
# chown alice.hr file1 或者也可以写成# chown alice:hr file1//改属主、属组 ;那个除了点,冒号也可以
chgrp:专门改所有组的
-R:递归修改,就是把一个目录下的所有文件的属组和属主都改了
更改权限
使用字符
对象 赋值符 权限类型
u + r u就是改前三个
chmod g - w g就是改中间三个
o = x o就是改后三个
a
# chmod u+x file1 //属主增加执行
# chmod a=rwx file1 //所有人等于读写执行
# chmod a=- file1 //所有人没有权限
# chmod ug=rw,o=r file1 //属主属组等于读写,其他人只读
# ll file1 //以长模式方式查看文件权限
-rw-rw-r-- 1 alice it 17 10-25 16:45 file1 //显示的结果
数字
# chmod 644 file1
# ll file1
-rw-r--r-- 1 alice it 17 10-25 16:45 file1
切记:文件或者目录的权限限制对root用户限制无效,对所有人和其它人的限制有效,如果文件的权限只有读,那所有者可以读和强制写此文件
文件权限管理之二: 特殊权限
数值 作用 文件 目录
suid 4 给普通用户提权 可执行的二进制文件 没用
sgid 2 继承文件所属组 有用
sticky 1 仅允许删除自己的文件 有用
作用:
suid: 当一个文件具有SUID权限的时候,允许运行这个文件用户具有该文件的所有者权限!
当一个文件具有SUID权限的时候,允许这个用户运行文件的时候就意味着如果suid针对一个非可执行文件作用不大,没什么意义,只有用户在运行文件的时候才会产生变化,所谓的变化是具有所有者权限,如果是个普通
文件,没有可执行权限,不能被运行suid权限就没什么作用,当一个用户运行可执行权限文件的时候,具有所有者权限;我们会发现系统当中有很多存在这种矛盾的地方
# which passwd
/usr/bin/passwd
# ll /usr/bin/passwd
-rwsr-xr-x. 1 root root 30768 Feb 22 2012 /usr/bin/passwd--->这个文件的所有者本该是x,确是s,不是x就意味着该文件具有suid权限;用户借用suid的root权限来编辑
sgid: 允许在这个目录里之后创建的文件具有和这个目录相同所有组属性(继承所有组名称)
sgid和所有组有关,针对目录才有作用;作用是允许一个目录具有suid权限之后,这个目录里所有文件和目录都具有相同的所有组属性
粘滞位(o+t):只能删除自己创建的文件,别人的文件就算有权限粘滞位也不允许它删;粘滞位要求不管有没有权限,一旦一个目录有粘滞位,所有者能删,其他人都不行其他人都不行;它的作用就是例如是公共目录
上面的suid是最危险的;不到迫不得已不要用,什么是迫不得已?就是像passwd出现矛盾的地方
设置特殊权限
a、字符
chmod u+s file (+suid) chmod u-s file(-suid)
chmod g+s dir (+sgid) chmod g-s file(-sgid)
chmod o+t dir
b、数字
chmod 7777 file (4+2+1)777
chmod 2770 dir
chmod 3770 dir (2+1)770
chmod 0770 dir 去除以上权限
文件权限管理之三: umask(用来指定系统的默认权限)
umask: 新建文件、目录的默认权限是由umask决定的
创建时默认权限满分:文件是666(没有x执行权限),目录777
root: 文件 644 umask: 0022
目录 755
普通用户:文件 664 umask: 0002
目录 775
[root@master ~]# umask //查看当前用户的umask权限
0022
[root@master ~]# umask -S //查看最终生效的权限(也称为mask值)
u=rwx,g=rx,o=rx
[root@master ~]# umask 000 //设置umask权限
[root@master ~]# umask
0000
算umask权限的时候不要用减法去算,因为算的不准
读,权限是二进制的100,十进制是4;
写,权限是二进制的010,十进制是2;
执行,权限是二进制的001,十进制是1;
具备多个权限,就把相应的 4、2、1 相加就可以了:
若要 rwx 则 4+2+1=7
若要 rw- 则 4+2=6
若要 r-x 则 4+1=5
若要 r-- 则 =4
若要 -wx 则 2+1=3
若要 -w- 则 =2
若要 --x 则 =1
若要 --- 则 =0
标签:root权限 查看属性 类型 文本 没有权限 中文 bin 它的 通用
原文地址:http://www.cnblogs.com/ztc1990/p/6933543.html