Linux基础指令-4

目录

权限

1 系统操作权限

1.1 系统操作指令

2 文件操作权限

3 权限的另类标识

4 权限的相关指令

4.1 umask

4.2 chmod

5 粘滞位

权限

Linux作为一种多用户操作系统,说明可以同时多个用户同时登录,各自操作互不影响。

随着用户的增加,伴随而来的也会有很多问题,比如说修改他人文件……所以为了避免这样的问题产生,系统进行了权限的控制。

这就意味着用户能够操作的内容得到了限制和规范,有利于维护系统整体的整体性和完整性。

1 系统操作权限

主要将用户分为两类用户:

  • 管理员用户(root用户)
  • 其他普通用户
用户分类

 普通用户在系统上的操作都是受到限制的,比如说安装或者卸载软件,修改系统时间等。

1.1 系统操作指令

  • su:切换用户
  • useradd:添加用户
  • userdel:删除用户
  • passwd:设置用户密码

作为普通用户,不可避免的会产生一些需要管理员权限的操作,比如安装一个工具便需要管理员操作权限,但是频繁的切换操作权限过于繁杂。

所以有:

  • sudo:不是单独的指令,用于为普通用户当前的操作进行临时提权

sudo存在一定的前提条件:时用户需要被添加到sudoers配置文件中。

系统操作指令

2 文件操作权限

系统将对文件访问的用户分为了三类:

  • 文件所有者-u(默认文件创建者):文件访问权限都是文件所有者进行控制
  • 文件所属组-g:某一类用户可以对该文件进行某些操作
  • 其他用户-o:除文件所有者和文件所属组成员外的用户
文件访问用户类别

系统将能够对文件进行的操作分为了三类:

  • 可读-r:可以查看文件内容(对于目录而言,就是能够查看目录中的文件信息)
  • 可写-w:可以修改文件内容(对于目录而言,就是能够在目录中创建和删除文件)
  • 可执行-x:可以执行这个文件(对于目录而言,就是能够进入该目录中)
文件操作分类

在实际的Linux环境当中,对于权限的表示如下所示:

rwx/rwx/rwx,其中实际的显示中并无/符号,不过这里为了将其分隔开来而使用了它。

对于权限标识而言,前三位标识文件所有者的操作权限;中间三位标识文件所属组的组内成员操作权限;后三位标识其他用户的操作权限。

当某个位置是 - 符号,则表示不具备对应权限。

例如,当存在某个文件的权限标识为:rw-r--r--。则对该文件而言,它的所有者有可读可写的操作权限;而它的文件所属组成员和其他用户都只有可读的操作权限。

3 权限的另类标识

权限如果以字符形式存储,会比较耗费磁盘空间,因为权限至少要占据9个比特位来进行存储。

所以为了减少磁盘存储的压力,我们从用户是否具备权限的角度出发,采取二进制的比特位来进行标识,即通过使用0和1来标识是否具备某个权限。

例如可以将这样的权限标识:rwxrw-r--,写为:111110100,即为764。

此时的三个比特位刚好就是一个八进制数组,所以某类用户的操作权限,也可以使用八进制数字来标识。

4 权限的相关指令

4.1 umask

  • umask:查看或设置文件的创建权限掩码

掩码影响了文件创建出来的默认权限,默认权限是掩码取反(仅相遇命令行终端中使用命名创建)

实际的计算方式为:创建文件时给定的权限,与掩码取反的值进行相与

例如,当我们通过使用touch命令来创建文件,其中touch命令默认给定权限时666,umask的掩码默认是002。

则,~002 = 775(111 111 101) & 666(110 110 110) = 664(110 110 100)。

还存在一种简单的权限计算方法:在命令行中创建文件,默认权限便是使用777减去掩码的值。

即777 - 002 = 664。

4.2 chmod

  • chmod:修改一个已存在的文件权限

该命令可以给指定用户添加或移除指定的权限:

chmod [augo](用户类别选项) [+-](添加和删除选项)[rwx](修改权限类别)。

例如:chomd u+x file,即为file文件中的文件所有者添加可执行权限。

同样的,我们也可以直接使用八进制数字进行权限的设置,chmod 777 file,这样操作便会使所有用户都具有全部权限。

权限的相关指令

在了解完大概的Linux操作指令之后,我们需要了解一个叫做“粘滞位”的概念。

5 粘滞位

在实际操作中,公司为避免某个用户对代码库进行删除导致财产损失,因此诞生了一种需求:其他用户在一个目录下,可以创建文件,可以删除自己的文件,但不能删除别人的文件。

这便是粘滞位的功能:

  • 只针对其他用户
  • 不能删除别人文件

实际操作方式为:chmod +t dir。其中 t 字符便为粘滞位特有的标识。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值