• 技术文章 >运维 >linux运维

    Linux学习之文件权限知识点总结

    little bottlelittle bottle2019-04-29 11:26:08转载697
    Linux 中任何一个文件都具有 「用户、用户组与其他用户」三种权限,一个用户可属于多个用户组。所有用户的相关信息都记录在 /etc/passwd 文件中,密码记录在 /etc/shaodw 文件,用户组记录在 /etc/group 文件。

    root 用户权限最高,不算其他用户

    文件属性

    ls -al
    -rw-r--r--@  1 zhoust  staff   58503 Dec  8 07:50 antigen.zsh
    drwxr-xr-x   2 zhoust  staff      64 Apr 10 18:19 database
    drwxr-xr-x   6 zhoust  staff     192 Apr  9 22:12 h5
    drwxr-xr-x   4 zhoust  staff     128 Nov 20 16:15 logs
    drwxr-xr-x   3 zhoust  staff      96 Mar 18 17:42 node_modules
    -rw-r--r--   1 zhoust  staff     320 Mar 18 17:08 package-lock.json
    drwxr-xr-x   7 zhoust  staff     224 Dec  8 07:20 software
    drwxr-xr-x   9 zhoust  staff     288 Nov 20 16:32 store
    drwxr-xr-x   3 zhoust  staff      96 Apr  4 15:43 vkds
    drwxr-xr-x   8 zhoust  staff     256 Oct 23 15:06 照片
    drwxr-xr-x  12 zhoust  staff     384 Apr 19 08:36 学习视频

    分为七个部分:

    1. 文件类型与权限
      文件类型:普通文件(-)、目录文件(d)、链接文件(l
      权限:当前用户、同用户组的权限、其他用户权限,rwx 用数字表示就是 421
    2. 有多少文件名链接到此节点(inode)
    3. 拥有该文件的用户名
    4. 该文件所属用户组
    5. 文件大小:默认为 Byte
    6. 创建时间
    7. 文件名

      相关教程:Linux视频教程

    rwx 对于文件和目录的意义

    对文件来说,w 意味着可以修改该文件的内容(但不包含删除文件),x 意味着该文件有被执行的权限(真正是否能执行与文件内容有关)。

    目录主要负责记录文件名列表

    如果用户只对某目录拥有 r 权限,只能查看该目录下的文件名称和类型,连文件大小以及各种属性都看不到。如 zst 用户只拥有 /home/zhoust 目录的读权限,只能看到该目录下的文件名称

    [zhoust@MyPersonalCentOS ~]$ ls -al
    total 36
    drwxr-xr--  5 zhoust zhoust 4096 Apr 21 14:55 .
    
    [zst@MyPersonalCentOS ~]$ ls -l /home/zhoust/
    ls: cannot access /home/zhoust/learn: Permission denied
    total 0
    d????????? ? ? ? ?            ? learn

    能完成任务的最小权限

    如果用户对某目录没有 x 权限,无法执行该目录下的任何命令,也不能查询该目录下的文件内容。

    操作动作/dir1/dir1/file1/dir2解释
    读取 file1 内容xr-要能够进入 /dir1 才能读到里面的文件数据!
    修改 file1 内容xrw-能进入且能修改
    删除 file1 文件wx--能够进入 /dir1 具有目录修改的权限即可!
    将 file1 复制到 /dir2xrwx要能够读 file1 且能够修改 /dir2 内的数据

    修改文件属性与权限

    三个命令,chownchgrpchmod 分别表示修改文件所属用户、修改文件所属用户组、修改文件权限

    chmod 语法分为两种,一种是用数字修改,另一种是用符号修改文件权限。

    使用数字修改,分别是 421 将对应位置上的数字相加,例如:

    # 在 /home/zhoust 目录下,其他用户都不可进入
    [zhoust@MyPersonalCentOS ~]$ ls -al
    drwxrwxr-x  2 zhoust zhoust 4096 Apr 21 14:55 learn
    
    [zst@MyPersonalCentOS ~]$ cd /home/zhoust/
    bash: cd: /home/zhoust/: Permission denied
    
    # 使用 chmod 修改为其他用户可进入,zst 就能进入这个目录了
    [zhoust@MyPersonalCentOS ~]$ chmod 705 .
    [zhoust@MyPersonalCentOS ~]$ ls -al
    drwx---r-x  5 zhoust zhoust 4096 Apr 21 14:55 .

    使用符号类型修改文件权限,格式为 [范围][修改][某权限]u 所属用户,g 用户组,o 其他用户,a 全部用户,用于修改的符号有 +-=,权限还是那三个 rwx。现在再把 /home/zhoust 目录的其他用户权限关闭:

    [zhoust@MyPersonalCentOS ~]$ chmod o-rx .
    [zhoust@MyPersonalCentOS ~]$ ls -al
    total 36
    drwx------  5 zhoust zhoust 4096 Apr 21 14:55 .

    以上就是Linux学习之文件权限知识点总结的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:博客园,如有侵犯,请联系admin@php.cn删除
    专题推荐:Linux 文件权限
    上一篇:Shell命令 文件压缩解压缩之gzip、zip详解 下一篇:怎么快速让Linux虚拟机连上WiFi
    线上培训班

    相关文章推荐

    • 【Linux】 memcache安装与基本使用教程• Yaconf介绍以及安装配置说明(Windows+Linux)• 怎么解决Linux下编译安装Apache报APR not found• Linux系统下nginx+php实现清理服务器网站日志

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网