【Linux实践室】Linux高级用户管理实战指南:用户所属组变更操作详解


🌈个人主页:聆风吟_
🔥系列专栏:Linux实践室网络奇遇记
🔖少年有梦不应止于心动,更要付诸行动。


文章目录

  • [一. ⛳️任务描述](#一. ⛳️任务描述)
  • [二. ⛳️相关知识](#二. ⛳️相关知识)
    • [2.1 🔔Linux查看用户所属组](#2.1 🔔Linux查看用户所属组)
      • [2.1.1 👻使用id命令查看](#2.1.1 👻使用id命令查看)
      • [2.1.2 👻使用group命令查看](#2.1.2 👻使用group命令查看)
    • [2.2 🔔Linux修改用户所属组](#2.2 🔔Linux修改用户所属组)
      • [2.2.1 👻使用usermod命令修改用户组](#2.2.1 👻使用usermod命令修改用户组)
      • [2.2.2 👻使用useradd命令创建用户的时候指定用户组](#2.2.2 👻使用useradd命令创建用户的时候指定用户组)
  • [三. ⛳️编程要求](#三. ⛳️编程要求)
  • [四. ⛳️编程解答](#四. ⛳️编程解答)
  • 📝全文总结

一. ⛳️任务描述

恭喜你已经完成了前面的内容,通过上节的学习相信你已经学会了如何创建一个新用户组和删除一个已经存在的用户组,接下来,我们一起学习如何修改用户所属组。

本关的任务是为新创建的用户修改其所属组。


二. ⛳️相关知识

为了完成本节任务,你需要掌握如下知识:

  • Linux查看用户所属组
  • Linux修改用户所属组

2.1 🔔Linux查看用户所属组

Linux中查看一个用户所属的组两种方法。

2.1.1 👻使用id命令查看

命令格式:

bash 复制代码
id [命令参数] 参数

参数为要查询的用户名,默认是当前登录用户。

常见命令参数:

命令参数 说明
-g或--group 显示用户所属群组的ID
-G或--groups 显示用户所属附加群组的ID
-n或--name 显示用户,所属群组或附加群组的名称

注意:id命令的执行权限是面向所有用户。

例如,使用id命令查看用户fzm所属组。

2.1.2 👻使用group命令查看

命令格式:

bash 复制代码
groups 参数

参数为要查询的用户名,默认是当前登录用户。

注意:groups命令的执行权限是面向所有用户。

例如:使用groups命令查看用户fzm所属组。


2.2 🔔Linux修改用户所属组

2.2.1 👻使用usermod命令修改用户组

如果要一个用户仅仅属于某一个组,而不是同时属于多个组,则使用如下命令:

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

如果要给一个用户添加一个新的组,同时保留原来有所的组,则使用如下命令:

bash 复制代码
usermod -a -G 组名  用户名

注意:usermod必须以root权限才能执行,如果是普通用户想执行usermod时,需要在命令前加sudo命令来提升权限为root权限。

案例演示一:

新创建一个用户newUser和新创建一个用户组newGroup,使用usermod命令将newUser用户所属组修改为newGroup。

首先,创建用户newUser和组newGroup,使用groups命令查看用户newUser所属的组,因为默认情况下新创建用户的时候会默认创建一个与用户名同名的私有组,并将新创建的用户所属组设置为私有组。接下来使用usermod命令来修改用户所属组,最后查看修改是否成功。

案例演示二:

新创建一个用户newUser和新创建一个用户组newGroup,使用usermod命令为newUser用户新添加一个组newGroup。

首先,创建用户newUser和组newGroup,使用groups命令查看用户newUser所属的组。接下来使用usermod命令来为用户添加一个新的组,最后查看添加是否成功。

2.2.2 👻使用useradd命令创建用户的时候指定用户组

在创建新用户的同时可以修改默认用户所属组,如果想在创建的时候直接将用户所属组修改成系统中已经存在的一个组,而不是使用默认私有组,则使用如下命令:

bash 复制代码
useradd -g 组名 用户名

在创建新用户的同时可以为用户添加其它组,如果想在创建新用户的时候为用户添加一个已经存在的组,而不仅只属于默认创建的私有组,则使用如下命令:

bash 复制代码
useradd -G 组名 用户名

注意:useradd必须以root权限才能执行,如果是普通用户执行时,需要在命令前加sudo命令来提升权限为root权限。

案例演示一:

新创建一个用户组newGroup,并且使用useradd命令新创建用户newUser同时将其所属组修改为newGroup。

首先,创建用户组newGroup,使用useradd命令创建新用户newUser,同时将其所属组修改为newGroup,最后查看修改是否成功。

案例演示二:

新创建一个用户组newGroup,并且使用useradd命令新创建用户newUser同时为其添加一个新的用户组newGroup。

首先,创建用户组newGroup,使用useradd命令创建新用户newUser,同时为其添加一个新的用户组newGroup,最后查看添加是否成功。


三. ⛳️编程要求

本节的任务具体如下:

  • 新创建一个用户newUser;
  • 使用usermod命令为用户newUser新添加一个已经存在的用户组oldGroup。

四. ⛳️编程解答

bash 复制代码
#!/bin/bash

#在以下部分写出完成任务的命令
#***********begin*************#
#新创建一个用户newUser
useradd newUser
#使用usermod命令为用户newUser新添加一个已经存在的用户组oldGroup
usermod -a -G oldGroup newUser
#************end**************#

📝全文总结

本文主要讲解Linux用户所属组变更:

  1. 查看用户所属组
  2. 修改用户所属组

     今天的干货分享到这里就结束啦!如果觉得文章还可以的话,希望能给个三连支持一下,聆风吟的主页还有很多有趣的文章,欢迎小伙伴们前去点评,您的支持就是作者前进的最大动力!

相关推荐
戴为沐17 小时前
Linux内存扩容指南
linux
zylyehuo1 天前
Linux 彻底且安全地删除文件
linux
用户805533698032 天前
主线 U-Boot 上 RK3506:和闭源 rkbin 拔河的三个隐性契约
linux·嵌入式
用户034095297912 天前
linux fcitx 5 雾凇拼音 设置在中文输入法下仍然输入英文标点
linux
乘云数字DATABUFF2 天前
5分钟部署开源APM Databuff:OpenTelemetry全链路追踪入门实战
运维·后端
Web3探索者3 天前
可视化服务器管理和传统命令行区别是什么?新手教程:Linux 运维到底该用图形界面还是 SSH 命令行?
linux·ssh
zylyehuo4 天前
Linux系统中网线与USB网络共享冲突
linux
荣--4 天前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
江华森4 天前
动手实战学 Docker — 从零到集群编排完全指南
运维
Avan_菜菜4 天前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https