2020-12-04

一、文件/目录访问权限限简介

文件或目录的访问权限分为只读(r),只写(w)和可执行(x)。



通常文件被创建时,文件的所有者自动拥有对该文件的读,写,以便于对文件的阅读和修改。

有3种不同类型的用户可对文件或目录进行访问:文件所有者(U),同组用户(G)和其他用户(O)。

  所有者一般是文件创建者。该类用户可以允许同组用户有权访问文件,还可以将文件的访问权限赋予系统中的其他用户。在这种情况下,系统中每一位用户都能访问该用户拥有的文件或目录。

每一个文件或目录的访问权限都有3组,没组用3位表示,分别为:文件属主的读、写和执行权限;与属主同组的用户的读、写和执行权限;系统中其他用户的读、写和执行权限。当用ls -l命令显示文件或目录的详细信息时,最左的一列为文件的访问权限。

eg:

 -rw-r--r-- 1 root root 483997 Jul 15 17:31 sobsrc.tgz

   (这里一共有10个位置,第一个字符指定了文件类型(-普通文件,d:目录,l:符号链接,b:块设备文件,c:字符设备文件)。在通常意义上,一个目录也是一个文件。)

横线代表空许可(即表示不具有该权限),r代表只读,w代表只写,x代表可执行。

二、改变文件/目录的访问权限——“chmod”命令

chmod 用于改变文件或目录的访问权限,

  改命令有两种用法:

        一):包含字母操作和操作符表达式的文字设定法

                  eg:

                              chmod [who] [+ - =] [ mode] filename

                who可以是以下字母中的任一个或各字母的组合

                   1):u :表示用户(user)即文件或目录的所有者

                   2):g表示同组(group)用户,即与文件属主相同组ID的所有用户

                   3):o表示 其他用户(others)

                   4):a表示所有(all)用户。其为系统默认值

                允许到 操作符号如下

                     1):+ 添加某个权限

                     2):- 取消某个权限

                     3): =赋予给定权限并取消其他所有权限(如果有的话)

                  设置mode所表示的权限可用下述字母的任意组合

                      1):r 可读

                      2):w  可写

                      3):x 可执行。只有目标文件对某些用户是可执行的或该目标文件时目录时才追加x属性。

                      4):s:在文件执行时把进程的属主或组ID置为该文件的文件属主。可用“u+s”设置文件的用户ID位,而用“g+s”设置组ID位

                      5):t 将程序的文本保存到交换设备上

                      6):u 与文件属主拥有一样的权限

                      7):g 与和文件属主同组的用户拥有一样的权限

                      8):o 与其他用户拥有一样的权限



        二):包含数字的数字设定法

                 数字设定法是与文字设定法功能等价的设定方法,只不过比文字设定法更加简洁。数字设定法用3个二进制来表示文件权限,第一位表示r权限,第二位表示w权限,第三位表示x权限。设定好后将其换算为十进制数即可

                  也可直接用十进制数计算,0表示没有权限,1表示x权限,2表示w权限,4表示r权限,然后将其相加。所以数字属性的格式应为3个从0到7的八进制数,其顺序是 u,g,o。

三、更改文件/目录的默认权限——umask

     “umask”用于显示和设置用户创建文件的默认权限

        通常文件权限只会用到后3位,即022.值得一提的是umask命令与chmod命令设定刚好相反,umask设置的权限“补码”,而chmod设置的是文件权限码。对于文件而言,系统不允许创建之初就对其赋予可执行权限,因此,文件权限的最高设定值为6,目录为7.将最高可选值减去umask中的值即得到默认文件创建权限。因此,当umask为022时,默认创建文件的权限为644,而默认创建目录的权限为755.

四、更改文件/目录的所有权——chown

    chown命令用来更改某个文件或目录的属主和属组

      选项如下:

          -R:递归地改变指定目录及其下面的所有子目录和文件的拥有者

          -v:显示chown命令所做的工作

   eg:

         把文件shiyan.c的所有者改为wang

             #chown  wang shiyan.c

        把目录“/his”及其下面的所有文件和子目录的属主改为wang ,属组改为users

           #chown -R wang .users /his

此空间做资料存储用.所收录的文章.若非特别声明.均源自互联网.此空间尊重作者版权.在收录过程中若非情况不明.否则必注明出处.若收录过程中存在无意侵犯作者版权的行为.请联系22626428229@qq.com协商解决.请各位访问者或阅读、或参照、或摘抄、或收录本空间资料时.同样尊重原作者版权.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值