前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Linux操作系统基础(九):Linux用户与权限

Linux操作系统基础(九):Linux用户与权限

作者头像
Lansonli
发布于 2024-03-19 01:54:08
发布于 2024-03-19 01:54:08
66000
代码可运行
举报
文章被收录于专栏:Lansonli技术博客Lansonli技术博客
运行总次数:0
代码可运行

Linux用户与权限

一、文件权限概述

Linux操作系统是多任务多用户操作系统,每当我们使用用户名登录操作系统时,Linux都会对该用户进行认证、授权审计等操作。操作系统为了识别每个用户,会给每个用户定义一个ID,就是UID。为了方便用户管理,Linux允许把多个用户放入一个用户组;在Linux系统中,用户组也有一个ID,GID。

在Linux操作系统中,root的权限是最高的,相当于windows的administrator,拥有最高权限,能执行任何命令和操作,而其他用户都是普通用户。

Linux对文件创建者(所属用户),所属用户组,其他用户都赋予不同的权限。

查看文件权限

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# ls -l 或者 # ll

文件权限解读

r: 对文件是指可读取内容, 对目录是可以读,代表查看目录下的文件信息 => ls命令

w: 对文件是指可修改文件内容,对目录是指可以在其中创建或删除子节点(目录或文件)

x: 对文件是指是否可以运行这个文件,对目录是指是否可以cd进入这个目录

以上权限都只能针对普通用户,root超级管理员不受权限的控制,root可以为所欲为

二、终端命令:组管理

本质: 给 同一类型用户 分配权限

命令

作用

groupadd 组名

添加组

groupdel 组名

删除组

cat /etc/group

确认组信息

chgrp 组名 文件/目录名

修改文件/目录的所属组 —R递归

提示:

  • 组信息保存在 /etc/group文件中

我们以root:x:0:root,lanson 为例: 用户组root,x是占位符,GID是0,root用户组下包括root、lanson。

在实际应用中, 可以预先针对 设置好权限, 然后 将不同的用户添加到对应的组中 , 从而 不用依次为每一个用户设置权限

演练目标:

1、在 指定目录下创建 python目录

2、新建dev组

3、将python目录的组修改为 dev

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
chgrp dev python

三、终端命令:用户管理

1、创建用户 、 设置密码 、删除用户

命令

作用

说明

useradd -m -g 组 新建用户名

添加新用户

-m自动建立用户家目录-g指定用户所在的组, 否则会建立一个和同名的组

passwd 用户名

设置用户密码

如果是普通用户,直接用 passwd可以修改自己的账号密码

userdel -r 用户名

删除用户

-r选项会自动删除用户家目录

cat /etc/passwd

grep 用户名

确认用户信息

提示:

  • 创建用户时, 默认会创建一个和 用户名 同名的 组名
  • 用户信息保存在 /etc/passwd 文件中

/etc/passwd文件存放的是用户的信息, 由6个分好组成的7个信息, 分别是

  1. 用户名
  2. 密码 (x, 表示占位符)
  3. UID (用户标志)
  4. GID(组标志)
  5. 用户全名或本地账号
  6. 家目录
  7. 登录使用的Shell, 就是登录之后, 使用的终端命令
2、查看用户信息

命令

作用

id [用户名]

查看用户UID 和 GID 信息

who

查看当前所有登录的用户列表

whoami

查看当前登录用户的账户名

3、su切换用户
  • 因为 普通用户 不能使用某些权限, 所以需要 切换用户

命令

作用

说明

su - 用户名

切换用户, 并且企划目录

-可以切换到用户家目录, 否则保持位置不变

exit

退出当前登录用户

  • su不接用户名, 可以切换到 root , 但是不推荐使用, 因为不安全
  • exit示意图如下:
4、sudo
  • 虽然通过 su - root可以切换到root用户 ,但是 存在严重的安全隐患
  • linux系统中的 root账号通常 用于系统的维护和管理 , 对操作系统的所有资源 具有访问权限
  • 如果不小心使用 rm -rf ... ... , 就可能将系统搞瘫痪
  • 在大多数版本的linux中, 都不推荐 直接只用 root 账号登录系统
  • sudo命令用来以其他身份来执行命令, 预设的身份为 root
  • 用户使用 sudo时, 必须先输入密码, 之后 5分钟的有效期限, 超过期限则必须重新输入密码

提示:若其未经授权的用户企图使用 sudo, 则会发出警告邮件给管理员

4.1、给指定用户授予权限
  • 本质: 通知 服务器 给 特定用户 分配 临时管理员权限
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
visudo

## 默认存在: root用户具备所有的权限
root   	   ALL=(ALL)       ALL

## 授予 lanson 用户 所有的权限

zhangsan   ALL=(ALL)       ALL
4.2、使用 用户 zhangsan登录, 操作管理员命令
  • 本质: 使用临时管理员权限
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
## 不切换root用户, 也可以完成 添加用户的功能
sudo useradd -m -g dev lisi

四、修改文件权限

命令

作用

chmod

修改权限

chmod命令:chmod命令用来变更文件或目录的权限。

chmod命令 == change更改 + 文件 + mod权限

在使用chmod命令修改文件权限时,一般要把文件拥有者、组内用户权限、其他用户权限一起修改。

1、字母形式修改文件权限
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
u : user代表文件的拥有者
g : group代表与文件拥有者同组的用户权限(组内用户权限)
o : other代表其他用户(既不是拥有者也不是组内用户)

例1:把python.txt文件(如不存在,则使用touch python.txt)权限的文件拥有者权限修改为rwx,组内用户权限修改为rw,其他用户权限修改为r

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# chmod u=rwx, g=rw, o=r python.txt
# 命令  分配权限 	 操作文件

特别说明:如果时候一个文件夹,你不仅想修改文件夹的权限,还想把文件夹里面的所有文件全部修改一遍,可以建议chmod加一个-R选项,代表递归设置。

例2:创建一个bob文件夹,里面放一个readme.txt文件(没有自己提前创建),使用chmod更改bob文件夹及其内部的readme.txt文件权限,拥有者rwx权限,同组用户(组内用户)权限为rx,其他用户权限也为rx

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# chmod -R u=rwx,g=rx,o=rx bob

例3:把bob文件夹本身,不包括里面的文件,u、g、o都设置为rwx权限

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# chmod u=rwx,g=rwx,o=rwx bob
或
# chmod ugo=rwx bob
或
# chmod a=rwx bob

例4:给python.txt中的所有用户添加一个x可执行权限

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# chmod u+x,g+x,o+x python.txt
或
# chmod a+x python.txt
或
# chmod +x python.txt

在CentOS7版本中,如果是一个普通文件,只要添加+x权限,就会变成绿色(但是这和文件夹有区别)。

在CentOS7版本中,如果想把一个文件夹变成绿色,需要为其组内用户和其他用户添加+w权限。

2、数字形式修改文件权限

r可以使用数字4进行代替,w可以使用数字2进行代替,x可以使用数字1进行代替。

r = 4

w = 2

x = 1

在实际工作中,我们数字一般是3个数字一起出现,如777、755、644或者600

权限数字最大的 = 7,7怎么来的?

7 = 4 + 2 + 1 = rwx

如果数字为6,怎么来的?

6 = 4 + 2 = rw

如果数字为5,

5 = 4 + 1 = rx

注意:在实际文件权限设置时,一定是3个数字一起出现!!!

例1:给readme.txt文件的属主(文件拥有者)赋予可读可写可执行权限,组内用户、其他用户也赋予可读、可写、可执行权限

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# chmod 777 readme.txt

例2:给bob文件夹文件拥有者(属主)设置可读可写可执行权限,属组(组内用户)、其他用户设置可读可执行权限

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# chmod -R 755 bob

稍微注意一下:权限尽量不要随意设置,可能会导致后期某些或文件夹不能被用户访问。

另外权限2、3很少单独出现,如731权限,很少出现。3代表2+1,可写可执行,假设一个文件夹wx,但是不能看,显然不合理。

另外文件夹有一个组合权限,有r的时候肯定有x,相当一个组合(可以查看也可以切换到目录中)

另外数字没有+和-,就是3个纯数字,如777、755、644、600

字母形式的权限设置,可以有+和-,如chmod a+x python.txt或者chmod u-x python.txt

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-02-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Linux权限管理
之前在用户管理中提到用户和组的概念,服务器添加多账户的作用之一是可以针对不同用户分配不同的权限,从而根据不同权限限制用户可以访问到的系统资源。那么这次就来说一下Linux权限管理的相关内容,这部分也是非常重要的。如下。
reload
2024/02/04
3890
Linux权限管理
Linux用户与权限管理详解
添加lisi用户,该用户的主目录/usr/lisi,所属主组dev,附加组test
冬天vs不冷
2025/01/20
2830
Linux用户与权限管理详解
Linux下用户组、文件权限详解
用户组 在linux中的每个用户必须属于一个组,不能独立于组外。在linux中每个文件有所有者、所在组、其它组的概念 所有者 所在组 其它组 改变用户所在的组 所有者 一般为文件的创建者,谁创建了该文件,就天然的成为该文件的所有者 用ls ‐ahl命令可以看到文件的所有者 也可以使用chown 用户名 文件名来修改文件的所有者 文件所在组 当某个用户创建了一个文件后,这个文件的所在组就是该用户所在的组 用ls ‐ahl命令可以看到文件的所有组 也可以使用chgrp 组名 文件名来修改文件所在的组 其它组 除
小柒2012
2018/04/11
3.7K0
Linux下用户组、文件权限详解
Linux系统安全 | Linux下的用户、组和权限
注:一般来说,只有 root 用户的 uid 是为0的。如果黑客把一个普通用户的 uid 修改为0的话,那么他只要以普通用户的用户名和密码登录,系统就会自动切换到root用户。所以,系统加固的时候一定要过滤出有哪些用户的UID为0
谢公子
2022/01/19
3.1K0
Linux系统安全 | Linux下的用户、组和权限
Linux下的文件权限
文件权限 执行ll命令可以看到相对应文件和文件夹的描述: -rw-r--r--表示这个文件的权限, 数字1表示对应的硬链数量, root表示所属用户,第二个root表示所属组, 0/4096表示对应的文件大小, 8月 4 xx:xx表示文件最后修改事件。1.txt表示文件名。 -rw-r--r-- 符号 描述 -/d/l 开头的-表示这是一个文件,开头的d表示这个是一个目录,l表示这是一个软件链接 rw- 表示所有者对于这个文件的权限 r-- 表示所属组对于这个文件的权限
19组清风
2021/11/15
6.4K0
Linux下的文件权限
linux 文件权限
从第二个字符开始,每三个一组。使用r、w、x、-表示,按照rwx的顺序,每个字母表示一种权限。
用户10133222
2022/11/17
14K0
Linux用户权限
文件权限 chmod 改变文件或目录的权限 chmod 755 abc:赋予abc权限rwxr-xr-x chmod u=rwx,g=rx,o=rx abc:同上u=用户权限,g=组权限,o=不同组其他用户权限 chmod u-x,g+w abc:给abc去除用户执行的权限,增加组写的权限 chmod a+r abc:给所有用户添加读的权限 #设置文件夹权限 chown -R username /var/www/html/ #-R 表示包括其子文件夹的修改 777 为文件夹设置权限 #修改文
Vine
2022/06/06
14.7K0
【Linux权限】—— 于虚拟殿堂,轻拨密钥启华章
在计算机系统中,权限是指用户或进程对系统资源(如文件、目录、设备、网络等)可以执行的操作的授权。权限的设计目的是为了保障系统的安全性,防止未经授权的访问或操作。
换一颗红豆
2025/02/02
850
【Linux权限】—— 于虚拟殿堂,轻拨密钥启华章
Linux用户权限
文件权限 ls命令结果介绍  -l中显示的内容如下: -rwxrw-r‐-1 root root 1213 Feb 2 09:39 abc - 第一个字符代表文件(-)、目录(d),链接(l)- 10个字符确定不同用户能对文件干什么 - 其余字符每3个一组(rwx),读(r)、写(w)、执行(x) - 第一组rwx:文件所有者的权限是读、写和执行 - 第二组rw-:与文件所有者同一组的用户的权限是读、写但不能执行 - 第三组r--:不与文件所有者同组的其他用户的权限是读不能写和执行 也可用数字表示为:r=4
人生不如戏
2018/05/30
15.4K0
Linux操作系统 中的用户管理,也就是关于用户的相关的操作与理解
超级管理员主要识别是否是root和#这两个必备的条件来确定当前状态下是否为管理员用户
一写代码就开心
2023/12/08
4600
Linux操作系统 中的用户管理,也就是关于用户的相关的操作与理解
了解Linux —— 理解其中的权限
Linux 是一个操作系统,我们称其为内核(kernel) ,正常情况下,我们一般用户操作并不是去直接使用内核,而是通过kernel 的外壳程序,也就是shell 与kernel 进行沟通。
星辰与你
2024/12/29
1090
了解Linux —— 理解其中的权限
Linux 文件权限rwx
Linux/Unix 的文件调用权限分为三级 : 文件所有者(Owner)、用户组(Group)、其它用户(Other Users)。
全栈程序员站长
2022/09/01
6.5K0
Linux之权限管理操作
以下出现的 “ # ” 表示以超级管理员(root)用户操作 Linux的权限操作与用户、用户组是兄弟操作。 文章目录 一、权限概述 1、权限介绍 2、身份介绍 3、Linux的权限介绍 二、权限设置 1、字母形式 2、数字形式 3、注意事项 三、属主与属组设置 1、chown(重点) 2、chgrp(了解) 四、扩展(1) 一、权限概述 总述:Linux系统一般将文件可存/取访问的身份分为3个类别:owner、group、others,且3种身份各有read、write、execute
兮动人
2021/06/11
1.1K0
Linux之权限管理操作
Linux 不懂权限管理,怎么玩骚操作
小菜提示: 看完此文手痒的同学,请在测试服务器上修改哦,可不能随便上生产服务器上测试!
蔡不菜丶
2020/11/17
1.5K0
Linux  不懂权限管理,怎么玩骚操作
Linux 组管理和权限管理
在linux 中的每个用户必须属于一个组,不能独立于组外。在linux中每个文件有所有者、所在组、其它组的概念。
用户9615083
2022/12/25
1.8K0
Linux 组管理和权限管理
【Linux探索学习】第四弹——Linux权限管理详解:理解用户、组和权限之间的关系
在Linux下用户其实有两种类型:超级用户和普通用户——超级用户就是我们配置好环境后默认的用户类型,它也叫root用户,而普通用户则是我们在超级用户下自己创建的,因为为了平时学习和工作方便,我们可能需要多个用户身份,就好比VS下多个可执行程序文件一般,而普通用户跟超级用户比是有权限约束问题的,也就是说有些文件之类的可能在普通用户下无权访问,而超级用户则可以随意访问
GG Bond1
2024/10/13
3160
【Linux探索学习】第四弹——Linux权限管理详解:理解用户、组和权限之间的关系
linux修改文件权限命令是什么_chown和chmod命令用法
Linux系统中的每个文件和目录都有访问许可权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作。
全栈程序员站长
2022/10/01
3.5K0
Linux文件的基础操作
这将在当前目录中创建一个名为example.txt的空文件。如果该文件已存在,则touch命令将更新文件的修改时间。
红目香薰
2023/10/11
4010
Linux文件的基础操作
linux设置文件权限777_linux目录详解
Linux、Fedora、Ubuntu修改文件、文件夹权限的方法差不多。很多人开始接触Linux时都很头痛Linux的文件权限问题。这里告诉大家如何修改Linux文件-文件夹权限。以主文件夹下的一个名为“cc”的文件夹为例。
全栈程序员站长
2022/10/01
20.1K0
Linux文件权限与目录管理
Linux文件系统的三种身份 文件所有者 同组用户 同一个用户组的用户可以访问该用户组的文件; 每个账号可以加入多个用户组。 在同一个用户组的文件也可以设置不同的权限,可以不让本组用户查看。 其他人 除了文件主、同组用户以外的人就是其他人。 PS: /etc/passwd 记录所有用户的账号 /etc/shadow 记录所有用户的密码 /etc/group 记录所有的组名 文件属性 ls -al 显示所有的文件名和相关属性(包括以.开头的隐
大闲人柴毛毛
2018/03/09
5.7K0
相关推荐
Linux权限管理
更多 >
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验