Linux 读写权限的配置

文件权限

文章目录

Linux文件权限详解

Linux系统中不仅是对用户与组根据UID,GID进行了管理,还对Linux系统中的文件,按照用户与组进行分类,针对不同的群体进行了权限管理,用他来确定谁能通过何种方式对文件和目录进行访问和操作。

一、文件权限

  1. 文件的权限针对三类对象进行定义

    owner 属主,缩写u

    group 属组,缩写g

    other 其他,缩写o

  2. 每个文件针对每类访问者定义了三种主要权限

    r:Read 读

    w:Write 写

    x:eXecute 执行

    另 X:针对目录加执行权限,文件不加执行权限(因文件具备执行权限有安全隐患)

    注意:root账户不受文件权限的读写限制,执行权限受限制

  3. 对于文件和目录来说,r,w,x有着不同的作用和含义:

    针对文件:

     r:读取文件内容
     
     w:修改文件内容
     
     x:执行权限对除二进制程序以外的文件没什么意义
    

    针对目录:目录本质可看做是存放文件列表、节点号等内容的文件

     r:查看目录下的文件列表
     
     w:删除和创建目录下的文件
     
     x:可以cd进入目录,能查看目录中文件的详细属性,能访问目录下文件内容(基础权限)
    

    权限

  4. 用户获取文件权限的顺序: 先看是否为所有者,如果是,则后面权限不看;再看是否为所属组,如果是,则后面权限不看。

二、修改文件访问权限的方法

  • chmod 修改权限 change mode

    方法1:mode法

    格式:chmod who opt per file

      who:u g o a(all)
      
      opt:+ – =
      
      per:r w x X
    

    方法2:数字法

    格式:chmod XXX file

      rwx rw- r–	
      111 110 100
      7   6   4
      
      r:4
      w:2
      x:1
    

    例:chmod 764 file 给file文件添加 rwxrw-r– 权限

    chmod -R +X dir 给dir目录添加X执行权限,dir目录下文件不添加执行权限

    (如果dir目录下有文件已具备执行权限,则添加该文件执行权限)

三、UMASK值

作用:取消对应的权限,影响创建文件和目录的默认权限

对目录:	umask+default=777(dir)

对文件:666-umask:观察结果,如果有奇数,奇数位+1,偶数不变

四、三种特殊权限suid、sgid、sticky(sticky权限工作环境中相对常用)

  1. suid

    作用:给一个用户继承二进制程序所有者拥有的权限

    suid权限位 位于所有者的执行权限位上,如果一个文件具有suid权限,则所有者执行位为s,文件表现为红色背景

     例:ll /usr/bin/passwd
     	-rwsr-xr-x. 1 root root 27832 Jun 10  2014 /usr/bin/passwd
    
     给file文件增加suid权限
     
     	chmod u+s file
     	
     	chmod 4755 file               suid数字法表示为4
    

    注: suid只适合作用在二进制程序上

  2. sgid

    作用1:给一个用户继承二进制程序所有组拥有的权限

    sgid权限位 位于所有组的执行权限位,如果一个文件具有suid权限,则所有组的执行位为s,文件表现为黄色背景

    例:ll `which cat`
    	-rwxr-sr-x. 1 root root 48568 Mar 23  2017 /bin/cat
    
    给file文件增加sgid权限
    
    	chmod g+s file
    	
    	chmod 2755 file               sgid数字法表示为2
    

    作用2:作用在目录上时,使一个目录下的新建的文件继承目录的所属组

  3. sticky

    作用:作用于目录上,此目录的文件只能被所有者删除

    sticky权限位 位于其他的执行权限位上,如果一个文件具有sticky权限,则其他的执行位为t,目录表现为绿色背景

    如:ll -d /tmp
    	drwxrwxrwt. 17 root root 4096 Apr  4 10:02 /tmp
    
    给dir目录添加sticky权限
    
    	chmod o+t dir
    
    	chmod 1777 dir                sticky数字法表示为1
    

五、ACL访问控制列表

作用:实现更加灵活的权限管理,打破了三类用户的权限管理

  1. 添加ACL权限

    setfacl -m u:wang:0 file 使wang账户对指定file文件无权限
    
    setfacl -m u:mage:rw file       使mage账户对指定file文件有读写权限
    
    setfacl -m g:g1:rw file 使g1组对指定file文件有读写权限
    
    getfacl     file                     查看指定file文件的ACL权限
    

    ACL权限执行顺序类似于用户获取文件权限的顺序,getfacl顺序从上到下执行,一旦生效,下面的将不再生效(如果属于多个组,权限累加)

  2. 删除ACL权限

    setfacl -x u:wang file      删除wang账户对指定file文件的ACL权限
    
    setfacl -x g:g1 file   删除g1组对指定file文件的ACL权限
    
  3. ACL权限下的mask

    设置用户对指定文件所能拥有的最大权限(限高作用)
    
    setfacl -m mask::r file             使指定文件file所拥有的最大权限位读r
    
    setfacl -x mask::r file               取消指定文件file的最大权限限制mask
    
    setfacl -b f1                      取消f1文件所有的ACL权限
    

    ACL生效顺序:所有者、自定义用户、自定义组、其他人

  4. 备份和恢复ACL权限

    getfacl -R /tmp/dir1>acl.txt           将dir1目录下ACL权限备份
    
    setfacl -R –set-file=acl.txt /tem/dir      恢复dir1目录下ACL权限
    

六、文件权限操作的常用命令

  • chown 设置文件所有者(普通用户无法修改文件所有者)

  • chgrp 设置文件所属组(普通用户要想该所属组,前提是文件所有者为自己,自己在所属组中)

  • chmod 设置指定文件权限

      -R     递归
      
      –reference=f1 f2 f3        参考f1文件权限设置f2,f3文件
    
  • chattr 给指定文件添加保护,避免root账户误操作

      +i      锁定文件,不能删除,不能改名,不能更改内容
      
      -i      解锁+i
      
      -a     锁定文件,不能删除,不能改名,但可追加内容(追加重定向)
      
      -a     解锁+a
      
      +A    指定文件读时间atime不再更改
    
  • lsattr 查看指定文件是否有锁定状态

  • setfacl 设置文件ACL权限

      -m mask::r file          使指定文件file所拥有的最大权限位读r
      
      -x mask::r file            取消指定文件file的最大权限限制mask
      
      -b f1                   取消f1文件所有的ACL权限
      
      -R –set-file=acl.txt /tem/dir   恢复dir1目录下ACL权限
    
  • getfacl 查看文件ACL权限

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: 在 Linux 系统中,可以使用 chmod 命令来修改文件读写权限。 语法: chmod [选项] 权限 文件名 示例: - 为文件 file1.txt 赋予读写权限: chmod 644 file1.txt - 为文件 file2.txt 赋予所有权限: chmod 777 file2.txt 权限可以使用数字或符号表示,其中: - 7 = rwx (读、写、执行) - 6 = rw- (读、写) - 5 = r-x (读、执行) - 4 = r-- (只读) - 0 = --- (无权限) 选项: - -R : 递归修改权限(修改目录下的所有文件和子目录的权限) - -v : 显示修改权限的详细信息 例如: chmod -R 777 /path/to/folder 递归修改/path/to/folder 目录下所有文件和目录权限为777 ### 回答2: Linux系统中修改文件读写权限是一个基本的操作,也是Linux系统管理的重要内容之一。通过修改文件的读写权限,可以让用户控制文件的访问权限,保护文件的安全性。下面就来介绍一下如何在Linux系统中修改文件的读写权限。 1. chmod命令 chmod命令是最基本也是最常用的修改文件读写权限的命令。假设我们要将file.txt文件的读取权限添加给所有用户,则可以使用以下命令: chmod a+r file.txt 其中,“a”表示所有用户,“+”表示添加权限,“r”表示读取权限。同样,如果要将文件的写入权限添加给所有用户,则可以使用以下命令: chmod a+w file.txt 其中,“a”表示所有用户,“+”表示添加权限,“w”表示写入权限。除了“r”和“w”之外,还有“x”(执行权限)和“-”(删除权限)等参数,读者可以根据需要自行查阅。 2. chown命令 chown命令可以修改文件的所有者和所属组,从而控制文件的读写权限。假设我们要将file.txt文件的所有者和所属组都改成user1,则可以使用以下命令: chown user1 file.txt 如果要修改文件所属组,则可以使用以下命令: chown :group1 file.txt 如果要同时修改文件的所有者和所属组,则可以使用以下命令: chown user1:group1 file.txt 3. chgrp命令 chgrp命令可以直接修改文件所属组,从而控制文件的读写权限。假设我们要将file.txt文件的所属组改成group1,则可以使用以下命令: chgrp group1 file.txt 总结 Linux系统中通过chmod命令修改文件读写权限和通过chown、chgrp命令修改文件所有者和所属组这两个操作是非常基础的系统管理操作。无论是安装软件、编写脚本还是维护系统安全,都需要掌握这些操作。希望本文对Linux初学者有所帮助。 ### 回答3: 在Linux中,文件或文件夹的权限控制是十分重要的。它可以决定着用户能否对文件或文件夹进行读写、执行等操作。因此,正确合理的修改文件或文件夹的权限Linux系统安全管理中的必要操作。本文将介绍如何在Linux系统中修改文件或文件夹的读写权限。 首先,使用cd命令切换到需要修改文件或文件夹权限的目录下。如需要修改`/home/work/test.txt`文件的权限,则可使用以下命令: ``` cd /home/work/ ``` 接着,使用ls命令查看文件或文件夹的权限。如: ``` ls -l test.txt ``` 这个命令的输出中包含了读取、写入、执行权限权限信息包括9个字符:第1个字符是文件类型,如d表示目录文件,-表示普通文件;第2-4个字符是所有者的权限;第5-7个字符是同组用户的权限;第8-10个字符是其他用户的权限。其中r表示可读,w表示可写,x表示可执行,-表示无此权限。 接着,使用chmod命令修改文件或文件夹的权限。如: ``` chmod 755 test.txt ``` 该命令将文件`test.txt`的权限改为-rwxr-xr-x,即文件所有者拥有读写执行权限,同组用户和其他用户拥有读、执行权限。 另外,chmod命令还有一些常用的快捷方式。如: ``` chmod u+x test.txt ``` 该命令将只给文件所有者增加可执行权限。 ``` chmod go-rwx test.txt ``` 该命令将去除同组和其他用户对文件的读写执行权限。 最后,使用ls命令查看修改后的权限是否生效: ``` ls -l test.txt ``` 以上就是在Linux系统中修改文件或文件夹的读写权限的简单介绍。需要注意的是,文件权限的修改需要具备足够的权限,如果当前用户没有足够的权限,可考虑使用sudo或su命令切换到root用户进行修改。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xiaowang_lj

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值