Linux中的文件和目录的权限管理

Linux系统通过完善的权限管理来限制每一个用户对于系统中文档和目录的访问。在Linux系统中,文件和目录的权限是有些差异的。
一、权限介绍:
如上所示,通过ll命令列出目录下文件的时候同时也会列出文件的权限,从第二位开始,一直到第九位,即rw-r–r–就是文件的权限描述:其中3位为一组:
第一组:rw-:代表文件的属主(user)对文件的权限;
第二组:r–:代表文件的属组(group)对文件的权限:
第三组:r–:代表其他人(other)对文件的权限;
1.1权限分类:
文件的权限又分为三种:
r:读权限
w:写权限
x:执行权限
这三种权限对于文件和目录来说意义也是不一样的:
对文件:
r:可以通过cat等文档查看命令查看该文件;
w:可以编辑该文件的内容;
x:可以执行该文件;
对目录:
r:可以通过ls命令列出目录下的文件;
w:可以在目录下新建、删除、移动文件;
x:可以通过cd命令切换到目录下;
1.2 修改文件属主、属组和权限:
文件属组,属组和权限的更改:
chown 属主:属组 文件名
-R:递归修改文件属主和属组
chgrp 属组 文件名
-R:递归修改文件属组
修改文件的权限通过chmod命令:
其中有两种修改方法:
1、字符修改法:
其中:
u:属主
g:属组
o:其他人
a:所有人
例子:
chmod u+x test:代表给test的属主加上执行权限;
chmod u=rwx test:代表给test的属主所有权限;
chmod a=rwx test:所有人对test文件都有读、写和执行的权限;
2、数字表示法:
通过八进制来表示读、写和执行权限:
r:4
w:2
x:1
例子:
chmod 777 test:代表所有人对test有读写和执行权限;
chmod 644 test:代表属主有读、执行权限,属组有读权限,其他人有读权限;
二、umask介绍:
反掩码umask的介绍
创建一个新文件的时候文件的默认权限就是通过去除umask来生成的:
root用户的反掩码为0022
普通用户的反掩码为0002
其中:
r=4
w=2
x=1
创建一个文件的时候其权限就是rw-rw-rw-去除—-w–w-,所得即为:rw-r–r–
创建一个目录的时候其权限就是rwxrwxrwx去除—-w–w-,所得即为:rwxr-xr-x
通过umask+反掩码即可修改反掩码;
三、文件的特殊权限:
SUID:只作用于文件当用户在执行一个具有SUID权限的文件的时候,该用户会临时取得该文件属主的权限来执行此文件,常用于系统文件;
如passwd属于root用户和root组,但是普通用户也可以使用该文件来修改自己的密码,就是因为passwd具有SUID权限:
-rwsr-xr-x. 1 root root 27832 Jun 10 2014 /bin/passwd;其中属主权限的s位表示passwd具有SUID权限;
SGID:作用于文件和目录,对文件来说,如果其拥有SGID权限,那么其他用户就可以用文件拥有者的身份来执行此文件;对目录来说,主要用于团队协作;
Sticky:只作用于目录,在具有Sticy权限的目录下所有用户都可以创建文件,但是只有文件的属主可以删除自己的文件,其他人没有删除别人文件的权限,比如/tmp目录:
drwxrwxrwt. 20 root root 4096 Apr 1 09:25 /tmp/ ;其中其他人权限的t位表示目录具有Sticky权限;
修改特殊权限:
特殊权限区分如下:
SUID:4
SGID:2
Sticky:1
通过chmod修改特殊权限:
如:chmod u+s test:表示赋予test文件SUID的权限:其权限变为:-rwSr–r–. 1 root root 0 Apr 1 09:28 test
chmod g+s test:表示赋予testSGID权限:-rwSr-Sr–. 1 root root 0 Apr 1 09:28 test
chmod o+t /test:表示赋予test目录Sticky权限:drwxr-xr-t. 2 root root 6 Apr 1 09:29 test
四、文件的隐藏权限:
-rw-r–r–. 1 root root 2949458 Mar 31 17:50 access_log
文件的第11位是隐藏权限位,隐藏权限为分为两种:
i:表示不能删除、改名、更改文件
a:表示只能追加文件内容
它的设置方法为:
Chattr +i|-i test
Chattr +a|-a test
查看方法lsattr test
五、文件访问控制列表ACL
可以通过对文件添加ACL来控制不同用户对文件的访问,是否开启通过SELinux来进行控制;
1、查看ACL:
[root@localhost ~]# getfacl access_log

file: access_log

owner: root

group: root

user::rw-
group::r–
other::r—
2、设置ACL,允许wzh对access_log文件具有rwx权限:
[root@localhost ~]# setfacl -m user:wzh:rwx access_log
[root@localhost ~]# getfacl access_log

file: access_log

owner: root

group: root

user::rw-
user:wzh:rwx
group::r–
mask::rwx
other::r–

原创文章,作者:王子豪,如若转载,请注明出处:http://www.178linux.com/72269

(0)
王子豪王子豪
上一篇 2017-03-31 23:29
下一篇 2017-04-01 10:48

相关推荐

  • Linux高级文件系统管理之磁盘配额、软RAID及LVM

    高级文件系统管理之磁盘配额、软RAID及LVM   本章内容: 设定文件系统配额 设定和管理软RAID设备 配置逻辑卷   一、文件系统配额:     执行软限制(soft limit) 硬限制(hard limit)     注:磁盘配额只能针对分区控制有效,不能对整个磁盘控制…

    Linux干货 2016-09-01
  • 马哥教育网络班20期+第2周课程练习

    马哥教育网络班20期+第2周课程练习 练习题: 1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。2、bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容及其示例演示。3、请使用命令行展开功能来完成以下练习:   (1)、创建/tmp目录下的:a_c, a_d, b_c, b_d  …

    Linux干货 2016-06-23
  • Linux程序包管理yum

    yum客户端: 配置文件: /etc/yum.conf:为所有仓库提供公共配置 /etc/yum.repos.d/*.repo:为仓库的指向提供配置 仓库指向的定义: [repositoryID] name=Some name for this repository baseurl=url://path/to/repository/ enabled={1|0…

    Linux干货 2015-11-23
  • Nginx

    Nginx简介     Nginx(”engine x”)是俄罗斯人Igor Sysoev(伊戈尔.塞索耶夫)编写的一款高性能的HTTP和反向代理服务器。Nginx能够选择高效的epoll、Kqueue、eventport作为网络I/O模型,在高连接并发的情况下,Nginx是Apache服务器不错的替代品,它能够支持高…

    2017-05-07
  • five

    1;显示当前系统上root, fedora或user1用户的默认shell。 #   grep "^\(root\|fedora\|user1\)" /etc/passwd #   grep -E "^(root|fedora|u…

    Linux干货 2017-01-16
  • linux 文件管理命令

    目录与路径    1.相对路径与绝对路径 因为我们在Linux系统中,常常要涉及到目录的切换,所以我们必须要了解 "路径" 以及 "相对路径" 与 "绝对路径" 的概念。在之前的学习中,就反复的强调了Linux的目录是 "树状目录" 。假设我们需要在任意一个目…

    Linux干货 2016-11-06

评论列表(1条)

  • renjin
    renjin 2017-04-05 15:36

    主要总结了linux下的文件及目录权限的管理,内容写的很不错,排版有待加强。