Linux用户组权限管理全攻略?

创建新用户

使用 useradd 命令

sudo useradd -m username  # -m 自动创建用户家目录
  • 关键参数
    • -c "注释":添加用户描述(如全名)
    • -s /bin/bash:指定默认Shell
    • -d /path/to/home:自定义家目录路径
    • -e YYYY-MM-DD:设置账户过期时间

设置用户密码

sudo passwd username  # 按提示输入密码

安全提示:密码需8位以上,包含大小写字母、数字和符号。

使用 adduser 工具(交互式)

部分系统(如Debian/Ubuntu)提供更友好的交互式命令:

sudo adduser username  # 按提示输入密码及信息

创建用户组

新建用户组

sudo groupadd groupname  # 创建新组

创建用户时直接分配组

sudo useradd -m -G group1,group2 username  # -G 指定附加组
sudo useradd -g primarygroup username     # -g 指定主组

将用户加入已有组

修改用户的附加组

sudo usermod -aG groupname username  # -aG 追加附加组(保留原组)

注意:省略 -a 会覆盖原有附加组!

修改用户的主组

sudo usermod -g newmaingroup username

用户与组管理实例

场景:创建用户 john,主组为 developers,附加组为 dockerwww-data

sudo groupadd developers  # 创建主组
sudo useradd -m -g developers -G docker,www-data john  # 创建用户并分组
sudo passwd john  # 设置密码

查看用户与组信息

  1. 检查用户所属组

    id username  # 显示用户UID、GID及所属组

    输出示例

    uid=1001(john) gid=1002(developers) groups=1002(developers),1003(docker),1004(www-data)
  2. 查看所有用户

    cat /etc/passwd  # 用户账户信息
  3. 查看所有组

    cat /etc/group   # 用户组信息

关键配置文件

文件路径 作用
/etc/passwd 存储用户账户信息(不含密码)
/etc/shadow 存储加密后的用户密码
/etc/group 存储用户组信息
/etc/gshadow 存储组密码(极少使用)

注意事项

  1. 权限分离:普通用户避免使用 root 权限,需通过 sudo 授权。
  2. 组权限继承:用户创建的文件默认属于其主组
  3. 删除用户/组
    sudo userdel -r username  # -r 删除家目录和邮件
    sudo groupdel groupname

最佳实践:生产环境中定期审计用户和组权限(如使用 auditd 工具),避免权限泄露风险。


引用说明: 参考Linux官方文档(man7.org)及以下资料:

  1. GNU Coreutils手册:useradd, usermod, groupadd 命令详解
  2. Linux Filesystem Hierarchy Standard (FHS) 3.0
  3. Red Hat Enterprise Linux 系统管理指南(第8版)

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/9122.html

(0)
酷番叔酷番叔
上一篇 2025年7月29日 02:44
下一篇 2025年7月29日 03:12

相关推荐

  • linux如何查看jdk安装路径

    在Linux系统管理和Java开发中,准确获取JDK安装路径是环境配置、版本切换、问题排查的基础操作,由于JDK可能通过系统包管理器、手动编译安装或版本管理工具(如SDKMAN)部署,路径查找方法需结合实际场景选择,以下介绍6种常用方法,覆盖命令查询、环境变量解析、链接追踪等维度,使用which java定位可……

    2025年8月29日
    17800
  • 在Linux操作系统下,如何彻底卸载JDK1.7版本?

    在Linux系统中卸载JDK1.7需要根据其安装方式选择不同的方法,常见的安装方式包括通过RPM/DEB包管理器安装、手动解压tar.gz包安装或通过第三方工具(如SDKMAN!)安装,卸载前需先确认当前JDK的版本、安装路径及安装方式,避免误操作影响系统其他依赖,以下是详细的卸载步骤及注意事项,卸载前准备工作……

    2025年9月20日
    4400
  • Linux机顶盒如何刷机?步骤详解与方法指南

    Linux机顶盒刷机是指通过特定的工具和方法,替换或更新机顶盒的操作系统或固件,以解锁新功能、优化系统性能、去除广告或适配第三方应用等,Linux系统机顶盒因其开源特性,刷机灵活性较高,但操作不当可能导致设备变砖(无法启动),因此需严格遵循步骤并做好准备工作,刷机前准备工作刷机前需充分准备工具、资料并评估风险……

    2025年8月27日
    4900
  • 为什么开发者偏爱Debian/Ubuntu?

    使用 tree 命令(推荐工具)安装方法(部分系统默认未安装):# CentOS/RHELsudo yum install tree# Arch/Manjarosudo pacman -S tree基础用法:tree [目录路径] # 不指定路径时显示当前目录示例输出:.├── dir1│ ├── file1……

    2025年8月7日
    5500
  • 如何查询Linux用户的账户过期时间?

    在Linux系统中,用户账户的过期时间管理是系统安全与资源管理的重要环节,及时查看和处理过期账户可有效避免未授权访问或资源浪费,本文将详细介绍如何查看Linux用户过期时间,涵盖文件结构、命令工具、批量处理方法及注意事项,用户过期时间的存储位置:/etc/shadow文件Linux用户账户的过期时间信息存储在……

    2025年10月2日
    4700

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信