Linux中关于文件权限的一些小结

来源:互联网 发布:北京化工大学c语言 编辑:程序博客网 时间:2024/05/29 08:46

1.权限

在Linux系统中,每个文件都有很多的属性,这些属性信息都放在了文件的inode中,其中权限是众多属性的一个属性。

 

2.权限的分类

权限的分类有:

          ——》普通的权限:也就是ls命令显示的owner,group以及others的rwx权限

          ——》特殊的权限SUID,SGID,SBIT:

                    a)Set UID:s标识出现在文件所有者权限的x权限位置上。

                    b)Set GID:s标识出现在文件所属用户组权限的x权限的位置上。

                    c)Sticky BIT:t标识出现在others权限的x权限的位置上。

          ——》隐藏的权限或属性:可以利用chattr来设定隐藏权限,利用lsattr来查看隐藏权限

 

3.特殊权限SUID,SGID,SBIT的设置方式

       4代表SUID

       2代表SGID

       1代表SBIT

然后使用chmod命令去设置特殊权限就行了。例如,chmod 4755 filename,其中755代表设置的是普通权限。而4则代表要为filename设置上SUID的权限。

 

4.默认权限的概念

 文件的默认权限指的是,当新建一个文件或者目录时候,这个文件或目录的缺省的权限。

 文件和目录文件的默认权限是不一样的。文件的默认权限是-rw-rw-rw-。目录的默认权限是drwxrwxrwx。

 而当某个用户创建一个文件或者目录文件时,这个新东西的真正的默认权限有这样一个公式:

      真正的新文件或者目录的默认权限 = 文件或目录的默认权限 - umask设定值

 

5.ACL,Access Control List

 ACL的主要的目的是提供传统的owner、group、others的read、write、execute权限之外的具体权限的设置。ACL可以正对指定的用户,指定的用户组等来来进行r、w、x的权限的设置。

ACL的权限设置可以通过setfacl命令来设置,通过getfacl命令来查看。


6.Linux中文件的普通权限修改

有两种方法:

(1)通过数字来改变文件权限

格式:chmod [-R] xyz filename/dirname         #其中-R为递归修改目录,xyz可为4、2、1三个数字

eg:

$ chmod 755 install.log       #将install.log的权限修改为,owner是rwx,owner所属用户组为rx,其他用户为rx

(2)通过字符来修改权限

格式如下:


eg:

$ chmod u+x install.log     #将install.log的拥有着新增执行权限

$ chmod a+x install.log     #将install.log的执行权限赋给系统的所有用户



0 0
原创粉丝点击