0

0

Linux 用户组管理与权限控制实用教程

冷炫風刃

冷炫風刃

发布时间:2026-02-13 21:19:01

|

123人浏览过

|

来源于php中文网

原创

最可靠的方法是使用 groups 命令或 id -gn,它们读取内核维护的当前会话组列表;usermod -ag 才能追加组,否则 -g 会覆盖;chgrp 后需确保目录有执行位、文件有对应组权限,且 umask 或 setgid 配合;sudo 权限需结合 groups、sudo -l 和 /etc/sudoers 中组策略综合判断。

linux 用户组管理与权限控制实用教程

如何确认当前用户属于哪些组

直接查 /etc/group 太慢,也容易漏掉临时组(比如通过 newgrp 切换的)。最可靠的是用 groups 命令,它读取的是内核维护的当前会话组列表:

  • groups 显示当前 shell 会话中生效的全部组(含主组和附加组)
  • id -Gn 效果相同,但更明确——-G 取所有组 ID,-n 转成名字
  • 注意:usermod -aG 添加组后,必须重新登录或新开 shell 才生效;只改 /etc/group 文件不触发内核组缓存更新

给用户加组却没权限?检查 adduserusermod 的关键区别

很多人用 usermod -G groupname username 加组,结果发现旧组全没了——因为没加 -a(append)标志。这是最常踩的坑:

  • usermod -G docker alice → 把 alice 的附加组**重置为仅 docker**,原属的 sudoplugdev 全丢
  • 正确写法是 usermod -aG docker alice-a 必须和 -G 同时出现才表示追加
  • adduser 默认交互式添加,不会覆盖已有组,但脚本里少用;批量操作一律优先选 usermod -aG

为什么文件属组改了,用户还是不能读?看 umask 和目录执行位

组权限不是改完 chgrp 就自动生效的。两个硬性前提常被忽略:

悦读文库
悦读文库

悦读文库管理平台是一款在线文档交互型多用户文库建站程序,通过灵活的目录配置,对文档分类管理能力和权限控制,可以对文档分级统一管理,同时提供多种格式支持、全文检索、在线浏览等。

下载
  • 目标文件/目录必须有对应组的读(r)或执行(x)权限,否则 chgrp 只是“名分”到位,实际进不去
  • 新建文件的默认组权限受 umask 控制:如果 umask0022,则新文件组权限是 644(即 rw-r--r--),组用户只能读不能写;要支持组写,需设 umask 0002 或对目录设 setgid 位(chmod g+s dirname
  • 目录必须有 x 权限,组成员才能 cd 进入或 ls 列出内容——这点比文件更关键

sudo 组权限失控?别只盯 /etc/sudoers,先查 sudo -l

用户报“没有 sudo 权限”,但 usermod -aG sudo alice 已执行——大概率是发行版策略差异导致的:

  • Debian/Ubuntu 默认允许 %sudo 组执行所有命令;CentOS/RHEL 默认是 %wheel 组,且 /etc/sudoers%wheel 行默认被注释
  • sudo -l -U alice 直接查该用户实际能跑什么,比翻配置文件快得多
  • 如果提示 user not allowed to run sudo,先确认 alice 是否在正确的组(groups alice),再检查 /etc/sudoers 中对应组是否启用且未被 !sudo 显式禁止

组权限生效依赖会话刷新、目录执行位、umask 设置、发行版默认策略四者齐备,缺一不可。最容易被跳过的就是新开 shell 和检查 sudo -l 输出。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
append用法
append用法

append是一个常用的命令行工具,用于将一个文件的内容追加到另一个文件的末尾。想了解更多append用法相关内容,可以阅读本专题下面的文章。

347

2023.10.25

python中append的用法
python中append的用法

在Python中,append()是列表对象的一个方法,用于向列表末尾添加一个元素。想了解更多append的更多内容,可以阅读本专题下面的文章。

1078

2023.11.14

python中append的含义
python中append的含义

本专题整合了python中append的相关内容,阅读专题下面的文章了解更多详细内容。

178

2025.09.12

k8s和docker区别
k8s和docker区别

k8s和docker区别有抽象层次不同、管理范围不同、功能不同、应用程序生命周期管理不同、缩放能力不同、高可用性等等区别。本专题为大家提供k8s和docker区别相关的各种文章、以及下载和课程。

265

2023.07.24

docker进入容器的方法有哪些
docker进入容器的方法有哪些

docker进入容器的方法:1. Docker exec;2. Docker attach;3. Docker run --interactive --tty;4. Docker ps -a;5. 使用 Docker Compose。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

511

2024.04.08

docker容器无法访问外部网络怎么办
docker容器无法访问外部网络怎么办

docker 容器无法访问外部网络的原因和解决方法:配置 nat 端口映射以将容器端口映射到主机端口。根据主机兼容性选择正确的网络驱动(如 host 或 overlay)。允许容器端口通过主机的防火墙。配置容器的正确 dns 服务器。选择正确的容器网络模式。排除主机网络问题,如防火墙或连接问题。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

408

2024.04.08

docker镜像有什么用
docker镜像有什么用

docker 镜像是预构建的软件组件,用途广泛,包括:应用程序部署:简化部署,提高移植性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

446

2024.04.08

Docker容器化部署与DevOps实践
Docker容器化部署与DevOps实践

本专题面向后端与运维开发者,系统讲解 Docker 容器化技术在实际项目中的应用。内容涵盖 Docker 镜像构建、容器运行机制、Docker Compose 多服务编排,以及在 DevOps 流程中的持续集成与持续部署实践。通过真实场景演示,帮助开发者实现应用的快速部署、环境一致性与运维自动化。

10

2026.02.11

pixiv网页版官网登录与阅读指南_pixiv官网直达入口与在线访问方法
pixiv网页版官网登录与阅读指南_pixiv官网直达入口与在线访问方法

本专题系统整理pixiv网页版官网入口及登录访问方式,涵盖官网登录页面直达路径、在线阅读入口及快速进入方法说明,帮助用户高效找到pixiv官方网站,实现便捷、安全的网页端浏览与账号登录体验。

23

2026.02.13

热门下载

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

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 9万人学习

Git 教程
Git 教程

共21课时 | 3.6万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号