Linux学习(十二)-- 用户管理与用户组管理、su与exit命令、sudo命令

目录

[1. 用户管理](#1. 用户管理)

[注: 以下命令需root用户执行](#注: 以下命令需root用户执行)

[1.1 创建用户](#1.1 创建用户)

[1.2 删除用户](#1.2 删除用户)

[1.3 查看用户所属组](#1.3 查看用户所属组)

[1.4 修改用户所属组](#1.4 修改用户所属组)

2.用户组管理

[注: 以下命令需root用户执行](#注: 以下命令需root用户执行)

[2.1 创建用户组](#2.1 创建用户组)

[2.2 删除用户组](#2.2 删除用户组)

拓展:

[3. su命令与exit命令](#3. su命令与exit命令)

[4. sudo命令](#4. sudo命令)

拓展:为普通用户配置sudo认证?


1. 用户管理

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

root用户拥有最大的系统操作权限,而普通用户在许多地方的权限是受限的。

  • 普通用户的权限,一般在其HOME目录内是不受限的。
  • 一旦出了HOME目录,大多数地方,普通用户仅有只读和执行权限,无修改权限。

注: 以下命令需root用户执行

1.1 创建用户

bash 复制代码
useradd [-g -d] 用户名
  • 选项:-g指定用户的组,不指定-g,会创建同名组并自动加入,指定-g需要组已经存在,如已存在同名组,必须使用-g。
  • 选项:-d指定用户HOME路径,不指定,HOME目录默认在:/home/用户名。

1.2 删除用户

bash 复制代码
userdel [-r] 用户名
  • 选项:-r,删除用户的HOME目录,不使用-r,删除用户时,HOME目录保留

1.3 查看用户所属组

bash 复制代码
id [用户名]
  • 参数:用户名,被查看的用户,如果不提供则查看自身

1.4 修改用户所属组

bash 复制代码
usermod -aG 用户组 用户名

将指定用户加入指定用户组

2.用户组管理

注: 以下命令需root用户执行

2.1 创建用户组

bash 复制代码
groupadd 用户组名

2.2 删除用户组

bash 复制代码
groupdel 用户组名

拓展:

1、getent passwd: 查看当前系统中有哪些用户。

2、getent group: 查看当前系统中有哪些用户组。

3. su命令与exit命令

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

语法格式 :

su [-] [用户]

  • 符号是可选的,表示是否在切换用户后加载环境变量建议带上

参数:用户名,表示要切换的用户,用户名也可以省略,省略表示。

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

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

4. sudo命令

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

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

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

语法格式 :

bash 复制代码
sudo 其他命令
  • 在其它命令之前,带上sudo,即可为这一条命令临时赋予root授权
  • 但是并不是所有的用户,都有权利使用sudo,我们需要为普通用户配置sudo认证

拓展:为普通用户配置sudo认证?

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

**步骤二:**在文件的最后添加:

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

**步骤三:**最后通过 wq 保存。

如果对你有帮助,请帮我点一下赞,我才有动力继续创作,谢谢!

相关推荐
初学者丶一起加油3 分钟前
C语言基础:指针(数组指针与指针数组)
linux·c语言·开发语言·数据结构·c++·算法·visual studio
沛沛老爹34 分钟前
CI/CD是什么?
运维·git·ci/cd
一只搬砖的猹37 分钟前
cJson系列——常用cJson库函数
linux·前端·javascript·python·物联网·mysql·json
IPdodo全球网络服务1 小时前
如何通过TikTok引流到私域流量池
运维·服务器·网络
莫固执,朋友1 小时前
Linux下编译 libwebsockets简介和使用示例
linux·websocket·音视频
IT 古月方源2 小时前
关于高级acl的配置和讲解
运维·开发语言·网络·tcp/ip·智能路由器
DCTANT2 小时前
【合作原创】使用Termux搭建可以使用的生产力环境(八)
linux·debian·idea·termux·vnc·xfce4·termux-x11
Tester_孙大壮2 小时前
运维相关知识科普
大数据·运维·数据库
开疆智能2 小时前
ModbusTCP转Profinet:工业通信的利器
linux·服务器·网络
Carry_NJ2 小时前
docker-compose样例
运维·docker·容器