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显示文件行号

    使用 cat 命令显示行号cat -n filename.txt效果:在每行前添加行号(包括空格行),示例输出: 1 Linux is powerful 2 This is line two 3 4 Line four after empty line适用场景:快速预览小文件,使用 nl 命令(专业行号工具)n……

    2025年6月21日
    3900
  • Linux反编译工具有哪些必备推荐?

    在Linux系统中,反编译工具主要用于将已编译的二进制文件(如可执行程序、库文件)转换为可读性更高的汇编代码或高级语言代码(如C语言),以下是详细的操作指南和工具推荐,请务必遵守法律法规,仅用于合法用途(如漏洞分析、恶意软件研究或调试自有软件),objdump(基础反汇编)功能:GNU Binutils套件中的……

    2025年6月16日
    4200
  • Linux如何发送报文?网络调试与安全分析技巧

    基础工具:快速发送测试报文ping 命令(ICMP报文)用途:测试网络连通性,命令示例:ping -c 4 192.168.1.1 # 发送4个ICMP请求包到指定IP参数扩展:-s 指定包大小:ping -s 1024 192.168.1.1(发送1KB大包)-I 指定网卡:ping -I eth0 8.8……

    2025年8月5日
    2000
  • Linux如何设置IP地址?详细步骤方法有哪些?

    在Linux系统中设置IP地址是网络配置的基础操作,无论是服务器部署、开发环境搭建还是网络故障排查,都需要掌握这一技能,IP地址的设置分为临时配置和永久配置两种方式,前者重启后失效,适合临时测试;后者写入系统配置文件,重启后依然生效,不同Linux发行版(如Debian/Ubuntu、CentOS/RHEL等……

    2025年8月21日
    1500
  • Linux网关查询5大权威方法

    使用 ip route 命令(推荐)ip route show default输出示例:default via 192.168.1.1 dev eth0 proto static metric 100网关地址:168.1.1优势:现代Linux发行版首选工具,输出简洁精准,直接显示默认网关,通过 route 命……

    2025年8月9日
    2100

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信