文件属性的介绍(权限,所有者,所属组,组的管理),权限的修改(chmod,chown,chgrp),umask,文件掩码,如何切换/新建/修改/删除用户,粘滞位(t)的介绍

目录

权限

定义

文件属性

第一列(10个字符)

第一个字符 -- 说明该文件的类型

后9个字符 -- 说明该文件的各种权限情况

other

权限介绍

数字表示权限

第二列 -- 文件连接数

第三列 -- 文件拥有者的用户名

第四列 -- 所属组组长的用户名

介绍

管理组的指令

第五列 -- 文件大小

后三列 -- 最近一次修改时间

权限的修改

chmod--设置文件的访问权限

示例

选项介绍

八进制修改

chown--修改文件的拥有者

示例

-R选项

chgrp--修改文件的所属组

umask -- 设置掩码

起始权限

文件掩码

介绍

示例

用户分类

切换用户的命令

root用户

普通用户

新建用户(只有在root下可以)

选项

修改用户信息 

选项

删除用户 

粘滞位

引入

介绍


权限

定义

指一件事情是否允许你去做

允许的范畴也不一样,分为两种 -- 是否允许,允许做的范围有多大

  • 一件事能否被做,和事情本身有关
  • 一件事不同的人去做,情况会不同

类推到linux中的权限概念:

  • 权限和事物的属性有关(linux下,一切皆文件,所以事物也就是指文件 )
  • 身份的认证也会影响权限

那么,事物(文件)的属性是什么呢? 

文件属性

  • 对于文件来说,属性有很多,文件的类型和权限,文件所有者和所属组,文件大小,上次修改的时间,以及文件名
  • 这里我们着重介绍权限属性
  • 还记得我们的ls -l指令吗,它可以打印文件的文件属性

第一列(10个字符)

第一个字符 -- 说明该文件的类型

  • d :目录文件
  • - :普通文件(文本,可执行程序,库基本都属于普通文件)
  • l :软链接
  • b:块文件(磁盘文件)
  • c:字符设备文件(键盘,显示器文件)
  • p:管道文件

linux中,文件名后缀没有直接意义,系统通过第一个字母来判断文件类型

9个字符 -- 说明该文件的各种权限情况

表示对三类人的权限情况

  • 权限具有优先级,user 权限覆盖 group 权限, group 覆盖 other 权限
  • 拥有者,所属者的概念将在下面介绍

other
  • 除了 拥有者和所属组的人 之外,都是其他人
  • 在认证身份的时候,只能选择一个角色进行认证
  • 如果你是拥有者,你就只有 拥有者的权限,即使你也是所属组的组长
权限介绍
  • 每三个字符作为一个整体
  • 三个字符中,第一个对应读权限,第二个对应写权限,第三个对应可执行权限
  •  r  可读
  • w  可写
  • x  可执行
  • -  对应的权限位置 没有权限
  • 这四种权限对于文件和目录的表现也不同

除了用字母/-来表示权限,也可以用数字表示

数字表示权限

 

第二列 -- 文件连接数

  • 表示了一个文件或目录的硬链接数量
  • 它指示了有多少个文件名引用了同一个inode(索引节点)

(硬链接,inode将会在后面的文章中介绍)

第三列 -- 文件拥有者的用户名

  • 通常是创建文件的用户
  • 文件的所有者拥有最高的权限,可以读、写和执行文件,也可以修改文件的权限
  • 属于other的mufeng,由于wang这个目录对于other的权限是---,所以无法进入该目录

第四列 -- 所属组组长的用户名

  • 文件的所属组是一个用户组,通常与创建文件的用户的默认用户组相关联
  • 所有属于该组的用户都可以访问文件,具体权限取决于文件的权限设置
  • 原本,为了防止文件被恶意删除,两个不同用户之间无法相互查看对方的文件

  • 但在公司/团队中做项目时,会出现需要他人查看的情况(例如上司检查),便创建了所属组这一概念

  • 这个组的存在允许多个用户协同工作并访问共享文件,同时保持一定的安全性
介绍
  • 分为主组和辅助组
  • 每个用户只属于一个主组,但可以有多个辅助组/补充组
  • 通常,在创建新的普通用户时,会创建一个与该用户同名的新组,这个组将作为新用户的主要组,而且该用户是它的主要组的唯一成员 
管理组的指令

第五列 -- 文件大小

  • 指文件所占用的磁盘空间的大小
  • 通常以字节为单位表示

后三列 -- 最近一次修改时间

  • 像上面图中,表示a.out在5月13号21:32时修改过

权限的修改

chmod--设置文件的访问权限

示例

修改后,会发现c++目录中,三种用户的权限都没有了读权限

选项介绍

八进制修改

还记得前面说过,权限除了用字母表示,也可以用数字表示吗?

这里演示用对应的八进制进行修改(直接设置了所有用户的权限):

chown--修改文件的拥有者

示例

可以看到,c++,目录的拥有者更改了

-R选项

修改目录下所有文件的拥有者

chgrp--修改文件的所属组

与chown的操作一样

umask -- 设置掩码

起始权限

创建文件后的初始权限:

  • 目录文件:775
  • 普通文件:664 
  • 就像下面一样:

其实默认给普通文件的起始权限是666,目录文件是777

由于文件掩码的作用,使其权限变成了我们看见的样子

文件掩码

介绍

它就像漏斗一样,将 掩码中代表的权限 在 最终权限 中滤掉(本来就没有的不受影响)

  • umask的值是一个八进制数,通常在0到777之间
  • 第一个0可以当做八进制的前导0,忽略
  • 它通常表示为三个八进制数字,分别控制文件的所有者、所属组和其他用户的权限
  • 用于设置文件和目录权限掩码
  • 022代表:最终user无限制,group没有w权限,other没有w权限
示例

目录默认应该是777,但第二类和第三类都没有w权限

 普通文件默认666,但第二类和第三类都没有w权限

都是因为刚刚设置了022作为文件掩码的值,所以把所属组和other的写权限过滤掉了


用户分类

切换用户的命令

  • su+用户名
  • sudo -u +用户名 + 命令(可以切换到某个用户来指向命令,一般是root用户)

root用户

基本不受权限约束(像挂哥一样)

根目录下,root用户单独在一个目录下

普通用户

 

普通用户都在home目录下

家目录的权限是700,除了自己,别人都无法看到自己家目录中的文件

新建用户(只有在root下可以)

  • adduser+用户名+选项
  • passwd+用户名  --创建密码
  • 系统会设置用户的主目录和账户信息,并为该用户创建一个同名的专用组, 并且会创建该用户的家目录和用户信息
选项

修改用户信息 

usermod + 选项 + 用户名

选项

删除用户 

  • userdel username
  • 删除用户,但是保留家目录  
  • userdel –r username
  • 删除用户和家目录

粘滞位

引入

  • 当我们多个用户想要进行文件数据的共享,但又不想让自己创建的文件被别人不小心删除
  • 那如果去掉w权限,虽然确实不能删除了,但也不能创建文件了
  • 所以,为了改善这个缺陷,设计了粘滞位

介绍

  • 是一种特殊的文件权限设置,通常与目录一起使用,以限制其他用户对该目录中文件的删除
  • 当粘滞位被设置在一个目录上时,只有文件的所有者和超级用户才能删除目录中的文件,即使其他用户对文件具有写权限
  • 可以确保在共享目录中,其他用户不会意外或恶意删除其他用户创建的文件
  • 当一个目录拥有x权限时,并且+t权限,该目录的x位置就变成了t
  • 而当该目录不具有x权限时,粘滞位t变成了T,此时,other是不具有写权限的
  • 对于特殊权限的添加是添加在原有的执行权限上的
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值