您的位置:首页 > 运维架构 > Linux

Linux文件权限的解析

2010-05-06 16:43 246 查看
Linux文件权限的解析
  LINUX当前目录下可以用ls -l 命令来查看当前目录下所有文件夹和文件的权限。

[align=left][/align]
  用ls命令得到的权限表示格式类似这样:-rwxr-xr-x
下面解析一下格式所表示的意思。这种表示方法一共有十位:
9 8 7 6 5 4 3 2 1 0
- r w x r - x r - x
第9位表示文件类型,可以为p、d、l、s、c、b和-:
p表示命名管道文件
d表示目录文件
l表示符号连接文件
-表示普通文件
s表示socket文件
c表示字符设备文件
b表示块设备文件
第8-6位、5-3位、2-0位分别表示文件所有者u的权限,同组用户g的权限,其他用户o的权限,其形式为rwx:
r表示可读,可以读出文件的内容
w表示可写,可以修改文件的内容
x表示可执行,可运行这个程序
没有权限的位置用-表示
在系统管理的时候,我们经常遇到需要修改文件的权限。
变更文件或目录权限的命令:chmod(change mode)
用法:chmod [选项]... 八进制模式 文件...
-R : 对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐个变更)
范例 :
-v, --verbose 处理任何文件都会显示信息
-c, --changes 类似 --verbose,但只在有更改时才显示结果
u:User,即文件或目录的拥有者。
g:Group,即文件或目录的所属群组。
o:Other,除了文件或目录拥有者或所属群组之外,其他用户皆属于这个范围。
a:All,即全部的用户,包含拥有者,所属群组以及其他用户。

r:读取权限,数字代号为"4"。
w:写入权限,数字代号为"2"。
x:执行或切换权限,数字代号为"1"。
-:不具任何权限,数字代号为"0"
例:
将档案 file1.txt 设为所有人皆可读可写可执行 :
Chmod ugo+rwx file1.txt 或chmod 777 file1.txt
将档案 file1.txt 设为所有人皆可读取 :
chmod ugo+r file1.txt 或chmod a+r file1.txt
将档案 file1.txt 与 file2.txt 设为该档案拥有者,与其所属同一个群体者可写入,但其他以外的人则不可写入 :
chmod ug+w,o-w file1.txt file2.txt
将 ex1.py 设定为只有该档案拥有者可以执行 :
chmod u+x ex1.py
将目前目录下的所有档案与子目录皆设为任何人可读取 :
chmod -R a+r *
此外chmod也可以用数字来表示权限如 chmod 777 file
语法为:chmod abc file
其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。
权限分为三种:读(r=4),写(w=2),执行(x=1)。综合起来还有可读可执行(rx=5=4+1)、可读可写(rw=6=4+2)、可读可写可执行(rwx=7=4+2+1)。
r=4,w=2,x=1
若要rwx属性则4+2+1=7;
若要rw-属性则4+2=6;
若要r-x属性则4+1=5
范例:
chmod a=rwx file

chmod 777 file
效果相同
chmod ug=rwx,o=x file

chmod 771 file
效果相同
若用chmod 4755 filename可使此程序运行时具有root的权限
chmod 4755与chmod 755的区别:
多出的4表示其他用户执行文件时,具有与所有者相当的权限。
例如:root用户创建了一个上网认证程序netlogin,如果其他用户要上网也要用到这个程序,那就需要root用户运行chmod
例如:
[root@localhost ~]# chmod 1755 test.txt
-rwxr-xr-t 1 root root 0 Apr 27 20:03 test.txt
[root@localhost ~]# chmod 2755 test.txt
-rwxr-sr-x 1 root root 0 Apr 27 20:03 test.txt
[root@localhost ~]# chmod 3755 test.txt
-rwxr-sr-t 1 root root 0 Apr 27 20:03 test.txt
[root@localhost ~]# chmod 4755 test.txt
-rwsr-xr-x 1 root root 0 Apr 27 20:03 test.txt
[root@localhost ~]# chmod 5755 test.txt
-rwsr-xr-t 1 root root 0 Apr 27 20:03 test.txt
[root@localhost ~]# chmod 6755 test.txt
-rwsr-sr-x 1 root root 0 Apr 27 20:03 test.txt
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: