
一、Ubuntu 用户账户管理1、用户账户管理图形界面方式方式1顶部状态栏快速进入点击桌面右上角电源/设置图标齿轮样式点开Settings设置图1右上角打开设置左侧菜单栏找到用户Users右上角点解锁Unlock输入管理员密码解锁编辑权限图2解锁用户设置解锁后可添加新用户Add User修改密码、开关管理员权限、设置自动登录删除用户Remove User图3用户管理主界面方式2活动面板搜索直达按键盘Win(Super)键打开「活动」总览直接搜索用户或Users点开直接进入账户管理面板。2、用户账户管理终端命令行方式服务器/无桌面常用基础用户操作# 创建普通用户sudoadduser 用户名# 赋予sudo管理员权限sudousermod-aGsudo用户名# 删除用户连带家目录一起删除sudodeluser --remove-home 用户名# 修改用户密码sudopasswd用户名# 查看全部用户cat/etc/passwd# 查看用户所属组groups用户名二、Ubuntu组管理Ubuntu 默认自带的「设置-用户」只能开关管理员权限无法自定义用户组、批量组员管理如需用户组、UID、登录Shell、家目录**精细化配置安装工具sudoaptinstallgnome-system-tools1、图形化可视化组管理新手推荐1 安装专业用户组管理器sudoaptupdatesudoaptinstallgnome-system-tools2 打开工具按Win(Super)键搜索Users and Groups用户和组或者终端直接启动users-admin图4用户组主界面图4管理分组弹窗图6修改分组成员3) 核心组操作步骤点左上角解锁输入管理员密码点击Manage Groups管理组新增组点Add填写组名、自定义GID可选勾选要加入的用户修改已有组选中分组 →Properties勾选/取消用户实现加群、退群删除无用分组选中分组 →Delete小提示修改用户所属组后需要注销重登录组权限才会生效。2、终端命令行组管理服务器/批量运维首选(1) 查看组信息# 查看本机全部组getent group# 查看单个用户所有归属组主组附加组id用户名groups用户名# 查看某个组有哪些成员getent group 组名(2) 组生命周期创建/删除# 创建自定义用户组sudogroupadd组名# 删除空用户组组内不能有用户sudogroupdel组名# 修改组名称/GIDsudogroupmod-n新组名 旧组名(3) 用户加入/退出组最常用追加用户到附加组⚠️必加-aG不会清空原有组sudousermod-aG组名 用户名# 一次性加入多个组sudousermod-aGsudo,dialout,video 用户名(4) 将用户从指定组移除sudogpasswd-d用户名 组名修改用户主组登录默认组谨慎使用sudousermod-g主组名 用户名(4) 创建用户时直接指定归属组# 创建用户指定附加组sudoadduser 用户名sudousermod-aG自定义组 用户名# useradd 一次性创建指定组适合脚本sudouseradd-m-s/bin/bash-G组1,组2 用户名sudopasswd用户名# 设置密码三、系统关键内置常用组说明组名权限作用sudo管理员sudo提权核心组adm系统日志查看权限dialout串口、USB串口设备权限video显卡、摄像头硬件访问audio声卡音频设备权限lpadmin打印机配置权限四、典型实操案例案例1给普通用户开通管理员权限sudousermod-aGsudobob# 注销重新登录生效案例2创建dev开发组给3个用户统一目录权限# 1.新建组sudogroupadddev# 2.用户加入组sudousermod-aGdev alicesudousermod-aGdev bobsudousermod-aGdev charlie# 3.文件夹归属给dev组实现共享读写sudomkdir/home/dev_worksudochownroot:dev /home/dev_worksudochmod770/home/dev_work案例3把用户从串口组移除禁止使用串口设备sudogpasswd-dbob dialout五、配置文件底层了解即可全部用户组配置文件/etc/group用户主组配置/etc/passwd用户密码/etc/shadow直接编辑文件修改组不推荐容易权限损坏优先用命令/图形工具。六 Ubuntu 用户组目录权限批量运维脚本bash可直接运行适用场景批量创建业务用户组、批量绑定用户进组、项目目录归属组权限初始化、共享目录读写权限配置适配Ubuntu 20.04/22.04/24.04。脚本整体说明脚本需要root执行sudo bash group_manage.sh变量区集中配置直接改参数即可复用无需修改业务逻辑包含新建用户组、批量用户加入组、共享目录创建、目录属主属组、权限掩码设置、递归修复已有目录权限group_manage.sh 完整脚本#!/bin/bashset-euopipefail# 【配置区按需修改】# 1. 需要创建的业务分组GROUP_NAMEdev_share# 2. 需要加入该组的用户列表空格分隔USER_LISTuser1 user2 user3 ubuntu# 3. 共享工作目录路径SHARE_DIR/data/dev_workspace# 4. 目录权限 770所有者组读写执行其他用户无权限DIR_PERM770# 5. 目录归属root为所有者业务组为所属组DIR_OWNERroot# echo开始执行用户组权限配置# 1. 创建用户组组已存在不会报错if!getent group${GROUP_NAME}/dev/null;thengroupadd${GROUP_NAME}echo✅ 成功创建分组${GROUP_NAME}elseechoℹ️ 分组${GROUP_NAME}已存在跳过创建fi# 2. 循环将所有用户追加到目标组forsingle_userin${USER_LIST};doifid-u${single_user}/dev/null21;thenusermod-aG${GROUP_NAME}${single_user}echo✅ 用户${single_user}加入${GROUP_NAME}组elseecho⚠️ 用户${single_user}不存在跳过fidone# 3. 创建共享目录不存在则新建mkdir-p${SHARE_DIR}echo✅ 目录检查/创建${SHARE_DIR}# 4. 设置目录归属用户用户组chown-R${DIR_OWNER}:${GROUP_NAME}${SHARE_DIR}# 5. 设置目录权限chmod-R${DIR_PERM}${SHARE_DIR}# 配置目录SGID权限新建文件自动继承父目录的组核心共享功能chmodgs${SHARE_DIR}echo配置完成echo操作总结echo1. 分组${GROUP_NAME}echo2. 成员${USER_LIST}echo3. 共享目录${SHARE_DIR}echo4. 目录权限${DIR_PERM} SGID继承组权限echo 提示所有用户注销重新登录组权限才能生效使用步骤新建文件nano group_manage.sh粘贴全部代码修改顶部【配置区】的组名、用户名、目录路径赋予执行权限chmod x group_manage.sh管理员运行sudo ./group_manage.sh核心功能讲解SGID权限gs共享目录开启后用户在文件夹内新建文件/文件夹自动归属dev_share组所有同组用户可互相读写解决多人协作文件权限错乱。usermod -aG追加附属组不会覆盖用户原有sudo、audio、video等系统权限安全。幂等执行分组重复执行、用户重复加入组不会报错可重复运行修复权限。扩展适配场景场景1多组批量配置复制多份配置区块定义GROUP_NAME2、USER_LIST2、SHARE_DIR2循环执行。场景2移除用户出组新增函数在脚本顶部增加函数remove_user_group(){localuser$1localgroup$2gpasswd-d${user}${group}echo用户${user}已移出${group}}# 调用示例# remove_user_group user1 dev_share场景3清理无用用户组# groupdel dev_share验证配置是否生效命令# 查看用户所在全部组idubuntu# 查看分组内全部成员getent group dev_share# 查看目录权限是否带S标识SGID生效ls-ld/data/dev_workspace