前言
用户管理是Linux运维基础核心,日常工作中需要频繁创建业务账号、删除废弃账号、修改用户权限信息。本文详解useradd 创建用户、userdel 删除用户、usermod 修改用户三大核心命令,搭配生产实战案例、高频参数、避坑技巧,新手可直接落地使用。
一、useradd 新建用户(创建账号)
1. 命令作用
新建系统普通用户,自动写入 /etc/passwd、/etc/shadow 配置文件,可自定义家目录、UID、所属组、登录shell等属性。
2. 基础语法
useradd [参数] 用户名
3. 高频核心参数
-m:自动创建用户家目录(/home/用户名),工作必加-u:指定用户UID(必须唯一,不重复)-g:指定用户初始组(主组)-G:指定用户附加组(多个组逗号分隔)-s:指定用户登录shell(默认/bin/bash,禁止登录可设/sbin/nologin)-c:添加用户注释信息
4. 生产实战案例
# 1. 最简创建用户(自动建家目录、默认属性) useradd -m zhangsan # 2. 自定义UID、初始组、登录shell创建用户 useradd -m -u 1010 -g dev -s /bin/bash lisi # 3. 创建禁止登录的系统业务用户(用于运行服务) useradd -m -s /sbin/nologin nginx二、userdel 删除用户(清理账号)
1. 命令作用
删除系统存在的用户账号,可选择保留或彻底删除用户家目录、邮件数据。
2. 基础语法
userdel [参数] 用户名
3. 核心参数
无参数:仅删除账号信息,保留家目录、数据(安全优先)
-r:彻底删除账号 + 清空家目录、邮件缓存数据(彻底清理)
4. 生产实战案例
# 1. 仅删除账号,保留用户数据(谨慎使用,防止误删数据) userdel zhangsan # 2. 彻底删除用户及所有关联数据(废弃账号清理) userdel -r lisi5. 避坑提醒
生产环境删除用户前,务必确认用户无运行进程、无重要数据,优先备份后再执行-r彻底删除!
三、usermod 修改用户信息(修改账号属性)
usermod 是用户修改万能命令,可修改用户UID、所属组、登录shell、账号锁定、用户名等所有属性,运维高频使用。
1. 基础语法
usermod [参数] 用户名
2. 高频核心参数
-u:修改用户UID-g:修改用户初始组(主组)-G:修改用户附加组(覆盖原有附加组)-aG:追加附加组(不覆盖原有组,工作最常用)-s:修改登录shell-L:锁定用户,禁止登录-U:解锁用户,恢复登录权限-l:修改用户名
3. 生产实战案例
# 1. 给用户追加附加组(不覆盖原有组) usermod -aG root zhangsan # 2. 修改用户初始组为ops组 usermod -g ops zhangsan # 3. 锁定用户,禁止登录(员工离职临时禁用) usermod -L zhangsan # 4. 解锁用户,恢复登录 usermod -U zhangsan # 5. 修改用户登录shell为禁止登录 usermod -s /sbin/nologin zhangsan # 6. 修改用户名(zhangsan → zs) usermod -l zs zhangsan四、用户管理核心总结
1. 新建用户必加-m,自动创建家目录,避免权限异常;
2. 删除废弃用户用userdel -r,彻底清理残留数据;
3. 追加用户附加组必须用-aG,禁止直接用-G覆盖原有权限;
4. 员工离职优先锁定账号(-L),保留数据,无需直接删除。