如何通过命令行添加或删除用户?

365彩票怎么买平局 2026-01-07 00:25:42 阅读: 1637

思维导图Linux命令行添加与删除用户操作详解一、添加用户1. 基础命令格式代码语言:javascript复制《Bash》

sudo useradd [选项] 用户名2. 常用选项选项

说明

-m 或 --create-home

自动创建用户主目录(默认路径为/home/用户名)

-s

指定登录Shell(如/bin/bash或禁用登录的/sbin/nologin)

-d

自定义主目录路径(需配合-m使用)

-g

指定主用户组(需提前通过groupadd创建)

-G

指定附加用户组(多个组用逗号分隔)

3. 典型操作示例场景1:创建普通用户(推荐完整配置)

代码语言:javascript复制《Bash》

sudo useradd -m -s /bin/bash -d /home/testuser -g developers testuser自动创建主目录 /home/testuser设置登录Shell为/bin/bash主组为developers(需提前创建)场景2:创建仅用于服务的系统用户

代码语言:javascript复制《Bash》

sudo useradd -r -s /sbin/nologin serviceuser-r:创建系统用户(UID范围通常为1-999)4-s /sbin/nologin:禁止交互式登录4. 设置用户密码添加用户后必须设置密码:

代码语言:javascript复制《Bash》

sudo passwd 用户名输入命令后会交互式提示输入密码(密码不显示字符)密码需符合系统复杂度要求(长度、字符组合等)二、删除用户1. 基础命令格式代码语言:javascript复制《Bash》

sudo userdel [选项] 用户名2. 常用选项选项

说明

-r 或 --remove

同时删除用户主目录和邮件目录

-f

强制删除(即使用户已登录)

3. 典型操作示例场景1:安全删除普通用户

代码语言:javascript复制《Bash》

sudo userdel -r testuser删除用户testuser及其主目录 /home/testuser若用户当前已登录,需先终止其进程: Bash sudo pkill -u testuser # 终止用户所有进程 sudo userdel -r testuser场景2:仅删除用户账户

代码语言:javascript复制《Bash》

sudo userdel serviceuser保留用户主目录(可能需要手动清理)4. deluser命令(Debian/Ubuntu特有)部分发行版提供更友好的封装命令:

代码语言:javascript复制《Bash》

sudo deluser --remove-home testuser # 删除用户及主目录三、注意事项权限要求所有操作需使用sudo或root权限删除用户时若提示user currently logged in,需先退出登录或强制终止进程系统用户与普通用户系统用户(UID < 1000)通常用于服务进程,删除需谨慎4普通用户(UID ≥ 1000)可安全删除文件残留处理未使用-r选项时,需手动检查并清理: Bash rm -rf /home/用户名 # 删除主目录 rm -rf /var/mail/用户名 # 删除邮件用户组关联删除用户不会自动删除其主组(需手动使用groupdel)补充:用户管理常用关联操作修改用户属性代码语言:txt复制《Bash》

sudo usermod -s /sbin/nologin 用户名 # 禁用登录

sudo usermod -L 用户名 # 锁定账户2. 查看用户信息

代码语言:txt复制《Bash》

id 用户名 # 查看UID/GID

finger 用户名 # 查看详细信息(需安装)相关问题如何批量创建多个用户?用户密码策略如何配置(如有效期、复杂度)?如何将用户加入sudo权限组?引用说明

1: 删除用户需结合-r选项彻底清理目录

: 已登录用户需终止进程后才能删除

3: 用户创建需配置主目录和登录权限

4: 系统用户UID范围及权限管理