如何在Linux中查看当前用户所在的组 Linux修改用户所属组的方法

夜萱吖_2822

夜萱吖_2822

2026-05-24

388人浏览

原创

直接运行groups命令可列出当前用户所属的所有组(主组和附加组),输出为一行空格分隔的组名;它读取/etc/group匹配用户uid,比id -gn更全面,后者仅返回主组名而遗漏附加组。

如何在linux中查看当前用户所在的组 linux修改用户所属组的方法

查看当前用户所属的组有哪些

直接运行 groups 命令就能列出当前登录用户的全部组(包括主组和附加组),输出是一行空格分隔的组名。它本质是读取 /etc/group 并匹配当前用户 UID,比手动查 id 更简洁。

如果需要更详细的信息(比如 GID、主组标识),用 id:

id

常见误区是只看 id -gn ——它只返回主组名,会漏掉所有附加组。实际权限生效时,附加组同样起作用,所以别跳过 groups 或 id 的完整输出。

把用户添加到某个附加组(不改主组)

用 usermod -aG 是唯一安全的方式。其中 -a 表示 append(追加),-G 指定附加组列表;漏掉 -a 会导致用户被踢出所有现有附加组,只剩新指定的那些——这是最常踩的坑。

例如把用户 alice 加入 docker 和 plugdev 组:

Linux Ai Server
Linux Ai Server

Linux AI 服务器 — 将 Linux 服务器转换为本地 AI 推理集群。使用 systemd、NVIDIA CUDA 实现无头 Linux AI,零 GUI 开销。

下载
sudo usermod -aG docker,plugdev alice
  • 操作后必须重新登录(或新开 shell)才能让组权限生效,SSH 连接也要重连
  • 不能对当前登录用户直接改主组并立即生效,组变更不触发会话刷新
  • usermod 修改的是 /etc/group,不会动用户家目录权限,别指望自动修复已有文件的属组

修改用户的主组(login group)

主组由 /etc/passwd 第四字段决定,用 usermod -g 修改(小写 g):

sudo usermod -g developers alice

这会把 alice 的主组设为 developers,同时不影响其附加组。注意:

  • 主组变更后,该用户新建文件的默认属组会变成新主组,但已有文件属组不变
  • 如果目标组不存在,命令会失败,先用 groupadd developers 创建
  • 不要用 usermod -G(大写 G)来试图改主组——它只管附加组,且没 -a 时会清空旧附加组

验证组修改是否生效 & 常见失效原因

改完别急着测试权限,先确认组信息已更新:

groups alice

如果输出没变,大概率是没重新登录。其他常见原因:

  • SSH 会话未断开重连:即使 id 在本地显示正确,远程 shell 可能仍沿用旧组缓存
  • 桌面环境(如 GNOME)需完全退出图形会话,仅开新终端不够
  • 某些服务(如 Docker)对组权限检查较严格,需重启服务进程:sudo systemctl restart docker
  • 容器内执行命令时,宿主机组变更不影响容器内用户组,得进容器再查

组权限不是“改完就通”,它依赖会话级的组列表加载时机,这点容易被忽略。

相关专题

更多
磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

2023.06.21

4090

4

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

2023.06.29

3473

10

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

2023.06.30

2673

5

linux修改文件名
linux修改文件名

本专题为大家提供linux修改文件名相关的文章,这些文章可以帮助用户快速轻松地完成文件名的修改工作,大家可以免费体验。

2023.07.05

6510

7

linux系统安装教程
linux系统安装教程

linux系统是一种可以免费使用,自由传播,多用户、多任务、多线程、多CPU的操作系统。本专题提供linux系统安装教程相关的文章,大家可以免费体验。

2023.07.06

6162

7

linux查看文件夹大小
linux查看文件夹大小

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。linux怎么查看文件夹大小呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.20

3573

8

linux查看ip命令
linux查看ip命令

本专题为大家提供linux查看ip命令相关文章内容,感兴趣的朋友可以免费下载体验试试。

2023.07.20

3065

4

linux查看cpu使用率
linux查看cpu使用率

在linux的系统维护中,可能需要经常查看cpu使用率,分析系统整体的运行情况。本专题为大家带来了linux查看cpu使用率的相关文章,感兴趣的朋友千万不要错过了。

2023.07.25

3299

6

linux查找文件命令
linux查找文件命令

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.31

297

3

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Python uv官方安装与入门文档
Python uv官方安装与入门文档

共0课时 | 0人学习

Buffalo框架快速入门指南
Buffalo框架快速入门指南

共0课时 | 0人学习

Valgrind支持平台说明
Valgrind支持平台说明

共0课时 | 0人学习