1、什么是文件或文件的访问权限
    由于Linux操作系统是一个多用户、多任务操作系统,可能会有不同的用户访问该计算机,如果没有进行访问权限的规定,电脑中的数据就没有安全性可言。
在WindowsXP或Windows2003系统中,如果磁盘文件系统使用NTFS类型,也可以规定访问权限,具体来说就是规定什么用户可以读、写、执行等。但使用的是FAT32文件类型,则不支持访问权限的设置。
Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作。
2、系统中可以设置哪些访问权限
    文件或目录的访问权限分为“可读(r),可写(w)和可执行(x)”三种。以文件为例,可读权限表示允许读其内容,而禁止对其做任何的更改操作。可写权限表示可以改写该文件的内容,但并不能新建或删除文件,那要有目录的写权限才能办到。可执行权限表示允许将该文件作为一个程序执行。对目录而言,可读权限表示允许显示该目录中的内容。可写权限表示可以在该目录中新建、删除、改名文件或子目录。可执行权限表示可以进入该目录,可执行权限是基本权限,如果没有它,就进不了目录,更谈不上显示目录内容了。文件被创建时,文件所有者自动拥有对该文件的读、写和可执行权限,以便于对文件的阅读和修改。用户也可根据需要把访问权限设置为需要的任何组合。如:
rwx 表示用户对该文件可读、可写、可执行;
rw- 表示用户对该文件可读、可写;
r-x 表示用户对该文件可读、可执行;
r-x 对目录而言,表示用户可以进入该目录,并显示目录内容
--x 对目录而言,表示用户可以进入该目录,无法显示目录内容,但如果知道目录中的文件名,也是可以打开文件的。
3、了解三种用户类别
有三种不同类型的用户可对文件或目录进行访问:文件所有者,同组用户、其他用户。所有者一般是文件的创建者,所有者可以允许同组用户有权访问文件,还可以将文件的访问权限赋予系统中的其他用户。在这种情况下,系统中每一位用户都能访问该用户拥有的文件或目录了。
每一文件或目录的访问权限都有三组,每组用三位表示,分别为文件属主的读、写和执行权限;与属主同组的用户的读、写和执行权限;系统中其他用户的读、写和执行权限。当用ls -l命令显示文件或目录的详细信息时,最左边的一列为文件的访问权限。例如:
$ ls -l sobsrc. tgz
-rw-r--r-- 1 root root 483997 Ju1 l5 17:3l sobsrc. tgz
横线代表空许可。r代表只读,w代表写,x代表可执行。注意这里共有10个位置。第一个字符指定了文件类型,如果第一个字符是横线,表示是一个非目录的文件。如果是d,表示是一个目录。
          -          rw-        r--       r-- 
     普通文件 文件所有者 组用户 其他用户
                      可读可写      只可读     只可读

4、修改文件或目录的访问权限

 

    在默认情况下,用户新建目录的访问权限为“rwxr-xr-x”,用户新建文件的访问权限为“rw-r--r—”。确定了一个文件的访问权限后,用户可以利用Linux系统提供的chmod命令来重新设定不同的访问权限。chmod命令是非常重要的,用于改变文件或目录的访问权限。用户用它控制文件或目录的访问权限。该命令有两种用法。一种是包含字母和操作符表达式的文字设定法;另一种是包含数字的数字设定法。
l 字符设定法
chmod [who] [+ - =] [mode] 文件名
命令中各选项的含义为:
操作对象who可是下述字母中的任一个或者它们的组合:
u 表示“用户(user)”,即文件或目录的所有者。
g 表示“同组(group)用户”,即与文件属主有相同组ID的所有用户。
o 表示“其他(others)用户”。
a 表示“所有(all)用户”。它是系统默认值。
操作符号可以是:
+ 添加某个权限。
- 取消某个权限。
= 赋予给定权限并取消其他所有权限(如果有的话)。
设置mode所表示的权限可用下述字母的任意组合:
r 可读。
w 可写。
x 对文件表示可执行,对目录表示可进入
文件名:可以是一个文件名,也可以以空格分开的要改变权限的文件列表,支持通配符。
在一个命令行中可给出多个权限方式,其间用逗号隔开。
例如:chmod g+r,o+r example 表示使同组和其他用户添加对文件example 有读权限。
l 数字设定法
我们必须首先了解用数字表示的属性的含义:
0表示没有权限,
1表示可执行权限x
2表示可写权限w
4表示可读权限r
然后将文件所有者的访问权限,同组用户的访问权限,其它用户的访问权限三位一组分别相加。得到一个3位数,就是该文件的完整访问权限。
例:rwxr-xr-- 首先分成三组rwx r-x r--,再安照0表示没有权限,1表示可执行权限x,2表示可写权限w,4表示可读权限r,进行三位一组的相加,得到
第一组rwx 对应4+2+1=7
第二组r-x 对应4+0+1=5
第三组r-- 对应4+0+0=4
所以最后得到的一个3位数是754
数字设定法的一般形式为:hmod [mode] 文件名