Linux系统用户和权限

本文详细介绍了Linux系统中的用户管理、用户组概念、权限控制(包括超级管理员root、sudo权限、文件权限chmod、chown和用户组权限),以及id、whoami等命令的使用。
摘要由CSDN通过智能技术生成

用户与用户组的介绍

在Linux中,每个文件和目录都有一个所有者属组,用于控制对它们的访问权限

Linux用户

无论是Windows、MacOS、Linux均采用多用户的管理模式进行权限管理

换句话说,Linux 系统支持多个用户在同一时间内登陆,不同用户可以执行不同的任务,并且互不影响

不同用户具有不同的权限,毎个用户在权限允许的范围内完成不同的任务

提示

  • 在Linux系统中,拥有最大权限的账户名为:root(超级管理员)
  • 而普通用户在许多地方的权限是受限的
  • 每个用户在自己家目录下,拥有最高权限

Linux用户组

用户组是一组用户的集合,由管理员定义

目的就是更方便地管理和授予权限。同一用户组内的所有成员都具有相同的访问权,这些访问权取决于组的权限设置

用户与用户组的关系

在Linux中,每个用户都至少属于一个用户组,但也可以同时属于多个用户组

这些用户组定义了用户的访问权限,决定着用户可以执行哪些操作、访问哪些目录和文件等

image-20230424140129041

用户管理的使用 

要在Linux中管理用户,需要以root用户身份登录系统。

添加用户

useradd  [选项]  用户名

选项说明:

  • -c comment 指定一段注释性描述。
  • -d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
  • -g 用户组 指定用户所属的用户组。

参数描述:

用户名:指定新账号的登录名

删除用户

userdel [-r] 用户名

选项说明:

  • -r,删除用户的HOME目录,不使用-r,删除用户时,HOME目录保留

查看用户信息

这个命令将显示系统中所有现有的用户账户。

cat /etc/passwd
字段含义
用户名用户登录系统时,使用的用户名
密码密码位
UID用户标识号
GID缺省组标识号
注释性描述例如,存放用户全名等信息
HOME目录用户登录系统后的默认目录
命令解释器用户使用的shell,默认为bash

su与exit命令的使用 

在Linux系统中,拥有最大权限的账户名为:root(超级管理员)

普通用户的权限,一般在其HOME目录内是不受限的

一旦出了HOME目录,大多数地方,普通用户仅有只读和执行权限,无修改权限

su和exit命令

su命令就是用于账户切换的系统命令,其来源英文单词:Switch User

su [-l] 用户名
  • -l : 符号是可选的,表示是否在切换用户后加载环境变量

切换用户后,可以通过exit命令退回上一个用户,也可以使用快捷键:ctrl + d

提示

  • 使用普通用户,切换到其它用户需要输入密码,如切换到root用户
  • 使用root用户切换到其它用户,无需密码,可以直接切换

sudo命令

在我们得知root密码的时候,可以通过su命令切换到root得到最大权限

注意

但是不建议长期使用root用户,避免带来系统损坏

我们也可以使用sudo命令,为普通的命令授权,临时以root身份执行

sudo 命令

在其它命令之前,带上sudo,即可为这一条命令临时赋予root授权

但是并不是所有的用户,都有权利使用sudo,我们需要为普通用户配置sudo认证

为普通用户配置sudo认证

切换到root用户,执行visudo命令,会自动通过vi编辑器打开:/etc/sudoers

在文件的最后添加

用户名 ALL=(ALL) NOPASSWD:ALL
  • 其中最后的NOPASSWD:ALL 表示使用sudo命令,无需输入密码

id与whoami命令的使用

id命令

id <用户名>

终端会输出当前用户的身份信息,其中包括uidgid字段,分别表示用户ID和组ID。如果uid为0,则说明该用户是管理员

注意

id 用户名,一般是管理员使用

whoami命令

whoami命令可以查看当前用户的用户名,但是不能直接判断该用户是否为管理员

whoami

命令行的提示符号 # 或者 $

命令行提示符中的$#符号通常用来表示不同的用户或权限等级

注意

但并不能直接判断当前用户是为管理员

  • $:该符号一般出现在非特权用户的命令提示符中,表示当前用户没有超级用户(root)的权限
  • #:该符号一般出现在超级用户(root)的命令提示符中,表示当前用户拥有最高权限

用户组的使用

用户组是一组用户的集合,由管理员定义

目的就是更方便地管理和授予权限。同一用户组内的所有成员都具有相同的访问权,这些访问权取决于组的权限设置

注意

要在Linux中管理用户组,需要以root用户身份登录系统

查看用户组

cat /etc/group

创建用户组

groupadd 用户组名

删除用户组

groupdel 用户组名

用户修改组

将用户添加到一个附加组中

usermod -aG 用户组名 用户名

将用户设置为指定组

usermod -G 用户组名 用户名

文件权限的查看

文件的类型

  • - 表示文件
  • d 表示文件夹
  • l 表示链接

权限说明

  • r 读

    • 文件:查看文件内容
    • 文件夹:查看文件夹内容,如ls命令
  • w 写

    • 文件:修改此文件
    • 文件夹:在文件夹内:创建、删除、改名等操
  • x 执行

    • 文件:可以将文件作为程序执行
    • 文件夹:可以更改工作目录到此文件夹,即cd进入
  • - 无权限

修改文件权限chmod

在Linux中,chmod命令是用来修改文件或目录权限的命令

注意

通常,只有文件、文件夹的所属用户,或者有root权限的用户才能使用

通过chmod命令来对以下三种权限进行设置和变更

  1. 文件所有者(Owner)拥有读、写、执行权限(rwx)
  2. 同组用户(Group)拥有读、写、执行权限(rwx)
  3. 其他用户(Others)拥有读、写、执行权限(rwx)

chmod命令的使用方法如下:

chmod [选项] 模式 文件名/文件夹

选项:-R,表示递归修改

模式:修改的权限

文件名/文件夹: 指定的目标文件或文件夹

模式

通过符号

参数含义操作具体值
u文件所有者+(加入)、-(除去)、=(设定)r、w、x
g同组用户+(加入)、-(除去)、=(设定)r、w、x
o其他用户+(加入)、-(除去)、=(设定)r、w、x
a全部身份+(加入)、-(除去)、=(设定)r、w、x

举例:

# 不考虑之前的权限(=),直接使用设定的方式:
chmod u=rwx,g=rx,o=rx test
# 还以省略为如下:
chmod u=rwx,go=rx test


# 原有的基础修改(+,-)
chmod a+x test
# 还以省略为如下:
chmod +x test

通过数字

权限可以用3位数字来代表,第1位数字表示文件所有者,第2位表示同组用户,第3位表示其他用户

数字的细节如下:r记为4,w记为2,x记为1 ,数字表示为:

  • 0:无任何权限 即 ---
  • 1:仅有x权限 即 --x = 1
  • 2:仅有w权限 即 -w- = 2
  • 3:有w和x权限 即 -wx = 2+1
  • 4:仅有r权限 即 r-- = 4
  • 5:有r和x权限 即 r-x = 4+1
  • 6:有r和w权限 即 rw- = 4+2
  • 7:有全部权限 即 rwx = 4+2+1

举例:

# 修改test文件权限,改为rwxr-x---
chmod 750 test

修改文件所属者chown

在Linux中,chown是一个用于更改文件或目录所有者的命令。它可以将文件或目录的所有权转移到另一用户或组

注意

通常,只有文件、文件夹的所属用户,或者有root权限的用户才能使用

chown命令的基本语法如下:

chown [选项] 用户名:组名 文件名

用户名和组名: 可以是任何有效的Linux用户或组名称

文件名: 是要修改其所有权的文件或目录名称

选项

  • -R:递归地更改文件夹及其子文件夹中的所有文件所有者

举例

# 将hello.txt所属用户修改为root
chown root hello.txt
# 将hello.txt所属用户组修改为root
chown :root hello.txt
# 将hello.txt所属用户修改为root,用户组修改为python
chown root:python hello.txt
# 将文件夹test的所属用户修改为root并对文件夹内全部内容应用同样规则
chown -R root test

  • 26
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值