当前位置: 首页 > news >正文

Linux用户管理命令和用户组管理命令

一、用户管理命令

1.1、adduser 添加新用户

1、基本语法 

adduser 用户名   (功能描述:添加新用户) 

应用场景1:企业开发,多人协同(也会有多人使用相同的一个低权限用户)。 
应用场景2:框架协同 gitlab  mysql  redis  

2、案例实操(添加一个用户) 

sudo adduser tangseng 

按提示输入密码、用户信息即可。

1.2、passwd设置或更改用户密码

1、基本语法 

passwd 用户名 (功能描述:设置用户密码) 

2、案例实操 (更改用户的密码) 

sudo passwd tangseng 

1.3、 id 查看用户是否存在

1、基本语法 

id 用户名 

 2、案例实操 (查看用户是否存在)

id tangseng

1.4、cat /etc/passwd 查看创建了哪些用户 

1、基本语法 

cat  /etc/passwd 

 su 切换用户 

1.5、su: swith user 切换用户 

1、基本语法 

su 用户名称   (功能描述:切换用户,只能获得用户的执行权限,不能获得环境变量) 
su - 用户名称 (功能描述:切换到用户并获得该用户的环境变量及执行权限) 

2、案例实操 (切换用户) 

su tangseng 
echo $PATH 
exit
su - tangseng
echo $PATH 

1.6、userdel 删除用户

1、基本语法 

(1)userdel  用户名  (功能描述:删除用户但保存用户主目录) 
(2)userdel -r 用户名 (功能描述:用户和用户主目录,都删除)

2、选项说明 

功能选项
-r删除用户的同时,删除与用户相关的所有文件

3、案例实操 

(1)删除用户但保存用户主目录 

sudo userdel tangseng

(2)删除用户和用户主目录,都删除

sudo adduser zhubajie
ll /home/ 
sudo userdel -r zhubajie 
ll /home/ 

1.7、 usermod 修改用户

1、基本语法 

usermod -l 新用户名 老用户名 
usermod -d /home/新用户名 -m新用户名 

2、选项说明 

选项 功能 -l 改变用户名 -d 修改家目录

3、案例实操 

 (1)改变用户名 

sudo usermod -l meihouwang sunwukong 

(2)更改家目录 

sudo usermod -d /home/meihouwang -m meihouwang 

二、用户组管理命令

每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。不同Linux 系统对用户组的规定有所不同。 

如Linux 下的用户属于与它同名的用户组,这个用户组在创建用户时同时创建。 

用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就是对/etc/group 文件的更新。 

“本用户”:即创建Ubuntu的用户名

2.1、 groupadd 新增组

1、基本语法 

groupadd 组名 

2、案例实操(添加一个xitianqujing 组) 

sudo groupadd xitianqujing 

2.2、groupdel 删除组 

1、基本语法 

groupdel 组名 

2、案例实操 (删除xitianqujing 组 )

sudo groupdel xitianqujing 

2.3、groupmod 修改组 

1、基本语法 

groupmod -n 新组名 老组名 

2、选项说明 

选项功能描述
-n<新组名> 指定工作组的新组名

2.4、usermod 修改用户主组 

在Linux 和Unix 系统中,每个用户都有一个主组(primary group)和可能的多个附加组(secondary groups 或 additional groups). 

用户的主组在用户创建时被指定,默认与用户名称相同,当用户创建一个新文件或目录时,默认情况下,这些文件或目录会被分配给用户的主组。 

1、基本语法 

usermod -g 组名 用户名 

2、选项说明 

选项功能描述
-g指定用户的新主组 

3、案例实操 

(1)查看用户主组 

默认情况下用户的家目录会被分配给主组。

sudo adduser zhubajie 
ll /home 

(2)切换用户主组 

sudo usermod -g xitian zhubajie
ll /home

2.5、cat /etc/group查看附加组和用户的映射关系 

/etc/group 文件存储了用户和附加组的映射关系,每一行对应一个用户组,第三个冒号后面是以该组作为附加组的用户列表,列表为空表示没有用户将其作为附加组。 

基本操作 

cat /etc/group

2.6、将用户添加到附加组 

1、基本语法 

usermod -aG 组名 用户名 

2、选项说明 

选项功能描述
-aG指定用户需要加入的附加组 

3、案例实操 

(1)查看“本用户” 组的用户列表 

sudo cat /etc/group 

(2)将“本用户” 作为zhubajie 的附加组 

sudo usermod -aG 本用户 zhubajie 
sudo cat /etc/group

2.7、将用户从组中移除 

1、基本语法 

deluser 用户名 组名 

2、案例实操 

sudo deluser zhubajie 本用户
正在将用户"zhubajie"从组"本用户"中删除...
完成。 

2.8、sudo 设置普通用户具有root权限 

sudo 是将对应的命令给到root用户去执行。 

1、将meihouwang更名为sunwukong 

sudo usermod -l sunwukong meihouwang 
sudo usermod -d /home/sunwukong -m sunwukong 

2、修改配置文件 

sudo vim /etc/sudoers

 找到下面一行(50行),如下所示: 

# Allow members of group sudo to execute any command 
%sudo   ALL=(ALL:ALL) ALL 

这行的作用是允许sudo组的所有成员执行任何命令,换言之,该组成员都拥有了root权限。但是通过sudo命令操作时需要输入密码。在最后一个ALL前添加NOPASSWD:,则该组的成员通过sudo命令操作时不必输入密码。 

# Allow members of group sudo to execute any command 
%sudo   ALL=(ALL:ALL) NOPASSWD:ALL 

保存退出。注意:sudoers文件没有写权限,保存退出要用wq!。 

3、查看sudo组的成员 

sudo cat /etc/group

4、将sunwukong添加到sudo组中 

sudo usermod -aG sudo sunwukong 

5、重新查看sudo组的成员 

sudo cat /etc/group

可以看到,“本用户” 已经在sudo组中,因此之前我们并没有做sudo相关的配置,但是“本用户” 却可以获得root权限。 

6、案例实操 

(1)切换到sunwukong 

su - sunwukong

(2)用普通用户sunwukong查看/etc下的sudoers文件

 sudo cat /etc/sudoers

(3)切换回“本用户” 

 exit

http://www.xdnf.cn/news/266905.html

相关文章:

  • spring2.x详解介绍
  • 【C/C++】Linux的futex锁
  • 终端与环境变量
  • 关于算法设计与分析——拆分表交换问题
  • 连续变量与离散变量的互信息法
  • Docker —— 技术架构的演进
  • 高中数学联赛模拟试题精选学数学系列第3套几何题
  • spring中的@Conditional注解详解
  • 【云备份】热点管理模块
  • 给文件内容加行号
  • 大型语言模型个性化助手实现
  • LeetCode - 1137.第N个泰波那契数
  • python入门(3)循环
  • 腾讯混元-DiT 文生图
  • Vue 3 Element Plus 浏览器使用例子
  • dstack 是 Kubernetes 和 Slurm 的开源替代方案,旨在简化 ML 团队跨顶级云、本地集群和加速器的 GPU 分配和 AI 工作负载编排
  • 大数据引领行业革命:深度解析与未来趋势
  • 接口测试——HTTP状态码
  • bellard.org‌ : QuickJS 如何使用 qjs 执行 js 脚本
  • 施磊老师rpc(三)
  • Docker安装Ollama及使用Ollama部署大模型
  • 二极管反向恢复的定义和原理
  • SQL语句--postgis语句(矢量数据的定义与操作)
  • REINFORCE蒙特卡罗策略梯度算法详解:python从零实现
  • STM32 DMA直接存储器存取
  • 解码响应式 Web 设计:原理、技术与优劣势全解析
  • C++代码随想录刷题知识分享-----142.环形链表II
  • 希洛激活器策略思路
  • n8n工作流自动化平台的实操:Cannot find module ‘iconv-lite‘
  • 生成式 AI 与 AI 的区别