1. Linux用户与组管理概述
在Linux系统中,用户和组管理是系统管理员最基础也最重要的日常工作之一。作为一个多用户操作系统,Linux通过完善的用户和组机制来实现系统资源的合理分配和权限控制。我管理过的服务器中,90%以上的权限问题都源于用户和组配置不当。
用户管理不仅仅是创建和删除账号那么简单,它涉及到系统安全、资源分配、服务运行等多个层面。比如,我曾经遇到过一个生产环境中的MySQL服务崩溃,追查后发现是因为有人用root账户运行了mysql服务,导致权限过高引发安全问题。这正是没有正确理解Linux用户管理机制导致的典型问题。
组管理则是Linux权限系统的另一大支柱。通过将用户加入不同的组,我们可以实现精细化的权限控制。举个例子,在开发团队中,我们通常会创建developers组,将所有开发人员加入其中,然后给项目目录设置775权限,这样既保证了团队协作,又防止了非开发人员的误操作。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. Linux用户管理详解
2.1 用户账户基础
Linux系统中的每个用户都有一个唯一的用户ID(UID)。系统通过UID而非用户名来识别用户。普通用户的UID通常从1000开始分配,而系统用户的UID一般在1-999之间。使用id命令可以查看当前用户的UID和所属组:
bash复制$ id
uid=1000(john) gid=1000(john) groups=1000(john),10(wheel),990(docker)
创建新用户最常用的命令是useradd,但不同发行版的默认行为可能不同。例如:
bash复制# CentOS/RHEL
sudo useradd -m username
# Ubuntu/Debian
sudo adduser username
注意:Ubuntu的adduser是一个perl脚本,它会交互式地提示设置密码等信息,而useradd是底层命令,需要手动指定更多参数。
2.2 用户配置文件
Linux用户信息主要存储在三个文件中:
/etc/passwd- 存储用户基本信息/etc/shadow- 存储加密后的密码/etc/login.defs- 用户创建的默认配置
/etc/passwd文件中
