Linux下的访问权限说明(原创)

来源:互联网 发布:ajax返回类型json数据 编辑:程序博客网 时间:2024/06/05 09:22

1、什么是文件或文件的访问权限

    由于Linux操作系统是一个多用户、多任务操作系统,可能会有不同的用户访问该计算机,如果没有进行访问权限的规定,电脑中的数据就没有安全性可言。

    WindowsXPWindows2003系统中,如果磁盘文件系统使用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+ro+r example     表示使同组和其他用户添加对文件example 有读权限。

 

l         数字设定法

  我们必须首先了解用数字表示的属性的含义:

    0表示没有权限,

    1表示可执行权限x

    2表示可写权限w

    4表示可读权限r

    然后将文件所有者的访问权限,同组用户的访问权限,其它用户的访问权限三位一组分别相加。得到一个3位数,就是该文件的完整访问权限。

例:rwxr-xr--   首先分成三组rwx     r-x      r--,再安照0表示没有权限,1表示可执行权限x2表示可写权限w4表示可读权限r,进行三位一组的相加,得到

第一组rwx    对应4+2+1=7

第二组r-x     对应4+0+1=5

第三组r--     对应4+0+0=4

所以最后得到的一个3位数是754

数字设定法的一般形式为:hmod [mode] 文件名

我个人比较喜欢用数字设定法,数字比字母好记,但是字符设定法比较直观,各有所长吧。

 

原创粉丝点击