Linux-(11)权限

来源:互联网 发布:wamp mysql使用教程 编辑:程序博客网 时间:2024/06/01 18:39

  权限是操作系统用来限制资源访问的机制,在Linux中权限一般分为读、写和执行。操作系统中每个文件都拥有特定的权限、所属用户和所属组。通过这样的机制来限制哪些用户、哪些组可以对特定的文件进行什么样的操作。

  Linux中的每个进程都是以某个用户的身份运行,所以进程的权限与该用户的权限是一样的。

  在Linux中文件的普通权限有三中,分别是:r(读)、w(写)、x(执行)

    r(读):可以读取文件的内容;可以列出目录的内容

    w(写):可以修改文件的内容;可以在目录中创建、删除文件

    x(执行):文件可以执行;可以访问目录中的内容

  这里有一点需要注意,目录必须拥有x(执行)权限,否则无法进入目录。

    看下面这个文件夹,没有x权限

  drw-r--r--  3 lhc  lhc      4096  4月 26 17:11 001/
    使用cd命令,无法进入

  lhc@lhc-virtual-machine:~/Documents$ cd 001  -su: cd: 001: Permission denied  lhc@lhc-virtual-machine:~/Documents$ 

  权限的控制:

  Linux权限基于UGO模型进行控制,U(User)、G(Group)、O(Other),权限3个一组(rwx),分别对UGO进行设置。文件的所属用户对应U权限,所属组对应G权限,其他用户和组对应O权限

  通过ls -l查看目录下的文件,一般是这样的:

  drwxr-xr-x  3 lhc  lhc      4096  4月 26 17:11 001/
    第一个字母d:表示文件类型 (d:文件夹、-:普通文件、l:链接)

    接下来的rwxr-xr-x表示的就是UGO权限,前三个字母rwx代表U的权限,中间三个r-x代表G的权限,最后的r-x代表O的权限,“-”表示没有某一种权限。

    针对这个就是所有者拥有读写执行权限,所属组拥有读和执行权限,其他用户拥有读和执行权限

    权限后面的数字表示链接数,其后是所属用户,所属组,再后面是大小,时间,文件名

    合起来就是:

    类型UGO权限 链接数 用户 组 大小 时间 文件名


  修改文件所属用户、组:

    修改文件所属用户:

      chown <用户> <文件>

      参数:

        -R  递归修改目录下的所有文件

    修改文件所属组:

      chgrp <组> <文件>

      参数:

        -R  递归修改目录下的所有文件


  修改文件权限:

    chmod <模式> <文件>

    模式的表示方法如下:

      u,g,o分别代表用户,组和其他,a可以代表所有

      +,-代表加入或删除对应权限

      r,w,x代表三种权限

    例子:

      chmod u+w file  给文件的所属用户增加写权限

      chmod g-x file  去除文件的所属组的执行权限

      chmod go+r file  给文件的所属组和其他用户增加读权限

      chmod a-x file  去除所有用户的执行权限


  chmod命令也支持以数字方式修改权限,三种权限分别由3个数字表示

    r=4 (2的2次方)

    w=2 (2的一次方)

    x=1 (2的0次方)

    使用数字表示权限权限的话,每一类用户的权限分别对应数字之和,即:

      rw=4+2=6

      rwx=4+2+1=7

      rx=4+1=5

    例如:

      chmod 660 file  这个执行完后,文件的权限就变成rw-rw----


  默认权限:

    在Linux中使用umask来确定新建文件,目录的默认权限.每一个终端都拥有一个umask属性

    umask通常是使用数字权限来表示的,通常,普通用户的umask是002,而root用户的默认权限是022.

    文件的默认权限就是666-umask,目录的默认权限是777-umask

    所以,对于普通用户,新建文件的权限是666-002=664,新建目录的权限是777-002=775

    umask值的查看和修改都是通过umask命令

      直接输入umask命令是查看, umask <数字>是修改.


  Linux的普通权限基本就是这么多内容了,下次再写Linux的特殊权限


  转载请注明出处

 http://blog.csdn.net/redstarofsleep/article/details/45289543


1 0
原创粉丝点击