Linux教程

Linux11--文件权限管理

本文主要是介绍Linux11--文件权限管理,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1 文件权限

权限管理:指的是操作文件权限

超管用户不受普通权限的限制

# 1.文件权限分类: 
    r (read)    : 4    可读
    w (write)   : 2    可写
    x (execute) : 1    可执行
    - (N/A)     : 0    没有权限
    
# 2.权限位的概念:
    rw-   ---    ---
    属主   属组   其他人     # 三个字符,为一个权限位
    user  group  other
     
# 3.设置权限的命令 
# 3.1 设置用户及用户组(修改文件和文件夹的用户和用户组属性 )
    chown   [选项] [用户].[用户组(非必须)]  [路径]

    选项: 
       -R:递归修改文件的属主、属组
           
    # eg:chown root:root /tmp/tmp1
    	只修改了/tmp下的tmp1文件 的用户名和用户组改成root和root
    # eg:chown -R root:root /tmp/
    	把/tmp目录以及/tmp下的所有文件 的用户名和用户组都改成root和root
          
# 3.2 设置权限
    以每个权限位为单位,把 数字权限和 使用chmod来设置
	
    格式:
        chmod [选项] [数字权限和] [路径]
    选项:
        -R:递归设置

    # eg:将test目录对应 属主、属组、其他人 的权限,全是可读可写可执行 (4+2+0)
    chmod 777 -R test/ 

2 路径对于文件权限的意义

# linux一般是最小化安装,为了提高性能;linux一般是设置最小权限,为了提高安全性

注:一定要使用普通用户,同时使用全路径来测试

1.读权限
    当目录有可执行权限,文件有可读权限时,文件可读。
	
2.写权限(用echo测试,vi和vim需要读文件)
    当目录有可执行权限,文件有可写权限时,文件可写。
    
3.可执行权限
    文件可执行权限的最小权限是:目录有可执行权限,文件有可读可执行权限。

# 总结:目录必须有可执行权限,文件才能拥有其他权限。

3 文件权限的归属

# 归属 
    可读    r        
    可写    w  (文件夹必须先有x权限,才可以在文件中新建文件 touch mkdir等操作)
    可执行  x

    属主    u
    属组    g
    其他人   o
    所有用户 a
    
    
    
# 案例:  通过权限归属来修改权限,不需要再计算数字权限和
# 1.给1.sh的属主可执行权限
chmod 100 1.sh  # 或 chmod u+x 1.sh
   
# 2.给1.sh的属组可读权限
chmod 040 1.sh  # 或 chmod g+r 1.sh

# 3.在原权限不变的情况下,给一个其他人的可读权限
chmod 144 1.sh  # 或 chmod o+r 1.sh  

# 4.去掉1.sh的其他人的可读权限
 chmod 140 1.sh  # 或 chmod o-r 1.sh

# 5.要求把1.sh加上可执行权限
chmod +x 1.sh  # 如果不跟用户,则默认所有用户

# 6.修改1.sh权限为属组只读,属主只写,其他人只读
chmod u=w,g=r,o=r 1.sh

4 案例

# 创建普通文件时有一个默认的权限,为:644,请问这个默认的权限怎么修改?

umask 002
创建文件时,默认的权限时666,跟umask值计算,用666 减 umask值 如果得到的值为奇数,那么加一,偶数不变

创建文件夹,默认的权限时777,跟umask值计算,用777 减 umask值


假设:umask值为 022 ,那么创建的文件及文件夹的默认权限是多少

644

123 644 654

456 220 321
这篇关于Linux11--文件权限管理的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!