美文网首页
14.文件权限管理

14.文件权限管理

作者: 辉神来了 | 来源:发表于2019-10-30 15:08 被阅读0次
st_mode中记录的文件权限位
  • st_mode本质上是一个32位的数(类型就是unsinged int),这个数里的每一个位表示一个含义。
  • 文件类型和文件的权限都记录在st_mode中。我们用的时候使用专门的掩码去取出相应的位即可得知相应的信息。
ls -l打印出的权限列表
  • 123456789一共9位,3个一组。第一组三个表示文件的属主(owner、user)对该文件的可读、可写、可执行权限;第2组3个位表示文件的属主所在的组(group)对该文件的权限;第3组3个位表示其他用户(others)对该文件的权限。
  • 属主就是这个文件属于谁,一般来说文件创建时属主就是创建这个文件的那个用户。但是我们一个文件创建之后还可以用chown命令去修改一个文件的属主,还可以用chgrp命令去修改一个文件所在的组。
文件操作时的权限检查规则
  • 一个程序a.out被执行,a.out中试图去操作一个文件1.txt,这时候如何判定a.out是否具有对1.txt的某种操作权限呢?
  • 判定方法是:首先1.txt具有9个权限位,规定了3种人(user、group、others)对该文件的操作权限。所以我们判定1.txt是否能被a.out来操作,关键先搞清楚a.out对1.txt到底算哪种人。准确的说是看a.out被谁执行,也就是当前程序(进程)是哪个用户的进程。
access函数检查权限设置
  • 文本权限管控其实蛮复杂,一般很难很容易的确定对一个文件是否具有某种权限。设计优秀的软件应该是:在操作某个文件之前先判断当前是否有权限做这个操作,如果有再做如果没有则提供错误信息给用户。
  • access函数可以测试得到当前执行程序的那个用户在当前那个环境下对目标文件是否具有某种操作权限。
chmod/fchmod与权限修改
  • chmod是一个linux命令,用来修改文件的各种权限属性。chmod命令只有root用户才有权利去执行修改。

  • chmod命令其实内部是用linux的一个叫chmod的API实现的。

  • chown/fchown/lchown与属主修改

  • linux中有个chown命令来修改文件属主

  • chown命令是用chown API实现的

umask与文件权限掩码
  • 文件掩码是linux系统中维护的一个全局设置,umask的作用是用来设定我们系统中新创建的文件的默认权限的。
  • umask命令就是用umask API实现的

相关文章

  • 14.文件权限管理

    st_mode中记录的文件权限位 st_mode本质上是一个32位的数(类型就是unsinged int),这个数...

  • 系统权限指令

    系统权限指令 chmod 改变文件或者文件的权限 2.其他权限管理命令chown 改变文件目录或者文件的...

  • Linux文件权限管理

    Linux文件权限管理 linux文件属性 改变权限 查看用户组

  • shell命令整理(三)之文件权限管理(上)

    文件权限 chown 更改文件的属主、属组 chmod 更改权限 使用数字的方法 文件权限管理之ACL getfa...

  • linux文件系统权限管理

    一.文件权限 linux中,文件系统有自带有权限管理,针对资源(文件,目录,程序)去管理,我们先来看下针对文件的权...

  • Linux文件权限管理

    简介 介绍如何在Linux中设置文件的权限 文件权限管理 chmod umask lsattr chattr:

  • 【Linux】文件的权限管理

    Linux下文件的权限管理 文章主要从以下几个方面展开介绍: 文件的属性和权限 文件的权限和属性的更改 文件和目录...

  • Flask 构建微电影视频网站(5)

    基于角色的访问控制 权限管理 添加权限 权限列表 删除权限 编辑权限 修改对应的前端文件 角色管理 添加角色 角色...

  • Linux常用命令

    一、文件系统的管理 二、权限管理 三、用户管理 四、常见系统管理(凡是涉及到修改,一定要用root权限) 五、文件...

  • Linux学习笔记 -- 07 Linux文件与目录管理

    目录导读 目录与路径 文件与目录管理 文件内容查阅 文件与目录的默认权限与隐藏权限 命令与文件的查询 权限与命令间...

网友评论

      本文标题:14.文件权限管理

      本文链接:https://www.haomeiwen.com/subject/eysdyctx.html