【linux】root大王如何制约普通用户——权限管理

简介: 【linux】root大王如何制约普通用户——权限管理

用户

超级用户(root):可以在linux下几乎不受权限约束

普通用户:几乎受所有权限的限制

root用户只有一个,root用户可以创建多个普通用户。创建方法如下:

创建用户:useradd 用户名

设置用户密码:passwd 用户名

示例:

普通用户的家目录在 /home,可输入如下指令验证

cd ~ 转跳到家目录

cd.. 进入上级目录

ls 查看该目录下的用户

root用户和普通用户可以相互转化

su 用户名 普通用户转root用户需要输入root用户的密码,root用户转普通用户一般不需要输入普通用户的密码

示例

su - 用户名切换身份,并且回到被切换用户的家目录。

示例


文件属性

在linux下一切皆文件。无论是root用户还是普通用户访问文件时被分为三类

文件的拥有者
文件的所属组
其他用户

所属组代表一个用户,介于拥有者和其他用户之间的一个用户

文件类型

d :文件夹

- :普通文件

l :软链接(类似 Windows 的快捷方式)

b :块设备文件(例如硬盘、光驱等)

p :管道文件

c :字符设备文件(例如屏幕等串口设备)

s :套接口文件

基本权限

r:读权限,

对普通文件而言,具有读取文件内容的权限;对目录文件来说,具有浏览该目录信息的权限

w:写权限

对普通文件而言,具有修改文件内容的权限;对目录文件来说具有删除移动目录内文件的权限

x:可执行权限

对普通文件而言,具有执行文件的权限;对目录文件来说,具有进入目录的权限

-:无权限

有了上述了解就可以查看文件属性了

输入ll 可查看文件属性。如果没有文件,可输入touch 文件名 创建文件,如果没有目录文件,可输入mkdir 目录文件名 创建目录文件

如下是一个文件的属性

文件权限值的表示方法

符号表示 说明 符号表示 说明
r-- 可读 -w- 可写
--x 可执行 rw- 可读可写
-wx 可写可执行 r-x 可读可执行
rwx 可读可写可执行 --- 无权限

文件权限八进制表示

权限符号 二进制 八进制
r-- 100 4
-w- 010 2
--x 001 1
rw- 110 6
r-x 101 5
-wx 011 3
rwx 111 7
--- 000 0

更改文件权限

chmod

功能: 设置文件的访问权限

格式: chmod 选项 权限 文件名

常用选项:

R -> 递归修改目录文件的权限

说明:只有文件的 拥有者 root 才可以改变文件的权限

  用户表示符+/-=权限字符:

+: 向权限范围增加权限代号所表示的权限

-: 向权限范围取消权限代号所表示的权限

=: 向权限范围赋予权限代号所表示的权限

用户符号:  

u :拥有者

g :拥有者同组用

o :其它用户

a :所有用户

普通文件示例

目录文件示例


更改文件拥有者

需要root权限更改

chown

功能 :修改文件的拥有者

格式 chown  用户名 文件名

示例


更改文件所属组

需要root权限更改

chgrp

功能 :修改文件或目录的所属组

格式 chgrp 选项 用户组名 文件名

常用选项 -R 递归修改文件或目录的所属组

示例


用户的权限

普通用户:

访问文件时,会先去匹配是否是文件的拥有者,不是的话再去匹配是否是文件的所属组,都不是的话会认为该用户为其他用户。

如果该用户同时是拥有者和所属组,那么该用户只会被匹配成拥有者,而不是所属组或两者都是。

完成上述工作后,会看该用户是否有 r w x 三种权限

超级用户:

不受拥有者,所属组,其他用户分类的限制,也不受r w x 三种权限的限制。

只要是文件,超级用户都有:读权限,写权限,可执行权限,更改拥有者权限,更改所属组权限


文件掩码

umask

功能

查看或修改文件掩码

格式 umask 权限值

说明 :将现有的存取权限减去权限掩码后,即可产生建立文件时预设权限。超级用户默认掩码值为 0022 ,普通用户默认为0002

新建文件默认权限为 0666  新建目录默认权限为0777

0666 :666对应的是:

拥有者为八进制的6,所属组为八进制的6,其他用户为八进制的6

6对应的权限为可读可写

但实际上所创建的文件和目录,看到的权限往往不是上面这个值。原因就是创建文件或目录的时候还要受到 umask的影响。

实际创建的出来的文件权限是(二进制计算) :

实际权限 = 默认权限 & (按位与) ( ~ (按位取反) 权限掩码)

经过上述算法, 在权限掩码中出现的过的权限不会在实际权限中出现

权限掩码就像一个漏斗,把文件不想要的权限默认去掉

演示效果:

如果想要让生成的文件的所属组和其他用户无权限该怎么做呢


粘滞位

目录文件的 r w x 三种权限对应如下功能

可执行权限: 如果目录没有可执行权限, 则无法cd到目录中.

可读权限: 如果目录没有可读权限, 则无法用ls等命令查看目录中的文件内容.

可写权限: 如果目录没有可写权限, 则无法在目录中创建文件, 也无法在目录中删除文件

创建用户本质是在home目录下创建了一个目录文件,该目录的权限如下图

这说明 各个用户之间是隔离的

那么各个用户如果要共享资源怎么办呢?方案之一是在根目录下创建一个权限放开的目录,该目录存放公共资源,由于权限开放,每个用户都可以访问公共资源

如下图

那么问题来了

只要用户具有目录的写权限, 用户就可以删除目录中的文件, 而不论这个用户是否有这个文件的写

权限

那么有什么解决方案吗

于是就有了一个特殊的权限, t —— 粘滞位。 t 是特殊的 x 的权限。

如果目录被设为 t 权限,那么该目录下的文件只能被拥有者和root删除

设置方法: chmod +t 文件名

现在还能删吗

其他用户以无权删除


总结

这里小小总结一下

用户分为两种:普通用户,超级用户

文件属性有:拥有者,所属组,其他用户,可读权限,可写权限,可执行权限,文件大小,修改时间,文件名

普通用户受到的限制很大,超级用户几乎不受限制

更改文件权限 : chmod

更改文件拥有者: chown

更改文件所属组: chgrp

文件掩码: umask

粘滞位: t

相关文章
|
11天前
|
Linux 数据安全/隐私保护
linux权限管理
本文介绍了Linux系统中的权限管理,包括权限的概念、用户和用户组与权限的关系、文件权限位的说明以及rwx权限的具体含义。同时,详细讲解了如何使用`chmod`和`chown`命令更改文件和目录的权限,并通过多个实验演示了不同权限组合对文件和目录的实际影响。最后,总结了文件和目录权限的一些重要知识点,帮助读者更好地理解和应用Linux权限管理。
34 1
linux权限管理
|
1月前
|
Linux 数据安全/隐私保护
探索Linux操作系统下的权限管理
【8月更文挑战第66天】在数字世界中,操作系统的权限管理就如同现实世界中的钥匙和锁,保护着我们的数据安全。本文将带你深入理解Linux系统中的权限设置,通过实际代码示例,让你掌握文件和目录权限的分配与管理技巧。准备好了吗?让我们开始这场关于权限管理的探险之旅吧!
83 14
|
3月前
|
安全 关系型数据库 MySQL
在Linux中,如何重置 mysql root 密码?
在Linux中,如何重置 mysql root 密码?
|
3月前
|
安全 Linux 数据安全/隐私保护
驾驭Linux的权力:Root与Sudo
在 Linux 系统中,权限管理至关重要,Root 用户与 Sudo 命令为核心组件。Root 作为超级用户,拥有最高权限,可执行任意命令,但也带来较高安全风险,建议仅在必要时使用。Sudo 则允许系统管理员授予普通用户临时的 Root 权限以执行特定命令,提升了系统的安全性和管理灵活性。通过合理配置 Sudoers 文件,可以实现对用户权限的精细化管理。综合运用 Root 和 Sudo 可确保系统的安全稳定运行。
70 1
|
3月前
|
监控 安全 Linux
在Linux中,什么是 root 帐户?
在Linux中,什么是 root 帐户?
|
3月前
|
安全 Linux 数据安全/隐私保护
Linux安全大揭秘:一键切换root权限背后隐藏的秘密
【8月更文挑战第23天】Linux操作系统因其出色的灵活性和安全性备受推崇,用户权限管理是其核心功能之一。本文介绍如何安全地在用户间切换,特别是切换至拥有最高权限的root用户。我们探讨了两种主要的方法:`su` 和 `sudo` 命令,并通过示例展示了它们的应用场景。`su` 命令适合需要执行多个root权限操作的情况,而 `sudo` 更适用于临时执行单个高权限命令。同时,文章还提供了一些最佳实践,如避免长时间使用root账户、定期审查 `sudoers` 文件等,以确保系统的安全性。正确理解和应用这些工具和原则对于维护Linux系统的安全至关重要。
54 0
|
3月前
|
Ubuntu Linux 网络安全
在Linux中,如何禁用root用户直接SSH登录?
在Linux中,如何禁用root用户直接SSH登录?
|
4月前
|
存储 Linux
Linux文件的上和下,FinalShell文件右键可下文件,先选择root文件夹,然后把他文件往里面拖动,就可以下载了,命令下载,ls -l可以看当前文件目录,sz 文件名可下载,tab补,rz出上
Linux文件的上和下,FinalShell文件右键可下文件,先选择root文件夹,然后把他文件往里面拖动,就可以下载了,命令下载,ls -l可以看当前文件目录,sz 文件名可下载,tab补,rz出上
|
4月前
|
关系型数据库 MySQL Linux
Linux部署实战前言,MySQL在CentOS安装【单机软件】,MySQL的安装需要root权限,yum install mysql,systemctl enable mysqld开机自启的意思
Linux部署实战前言,MySQL在CentOS安装【单机软件】,MySQL的安装需要root权限,yum install mysql,systemctl enable mysqld开机自启的意思
|
4月前
|
Linux
Linux系统时间不一致咋调,他显示的时区是UTC,第一步,su - 切换成root用户,rm -f /etc/localtime,ln -s /usr/share/zoneinfo/Asia/Sha
Linux系统时间不一致咋调,他显示的时区是UTC,第一步,su - 切换成root用户,rm -f /etc/localtime,ln -s /usr/share/zoneinfo/Asia/Sha