Ubuntu创建和管理用户账户指南
adduser命令(推荐)adduser是Ubuntu优化的用户创建工具,支持交互式输入,自动处理家目录、默认Shell等配置。
步骤:
sudo adduser 用户名(如sudo adduser testuser)。Y确认信息无误,用户创建完成。adduser会自动创建同名家目录(/home/用户名)和用户组。useradd命令(灵活但需手动配置)useradd是底层命令,需通过参数指定配置,适合批量创建或自定义需求。
常用参数:
-m:创建家目录(如未指定,需手动添加);-s:设置默认Shell(如/bin/bash);-G:添加附加组(如sudo组)。sudo useradd -m -s /bin/bash testuser(创建用户并生成家目录);sudo passwd testuser(设置密码,必选)。若需让用户拥有管理员权限(如安装软件、修改系统配置),需将其加入sudo组:
sudo usermod -aG sudo 用户名(-aG表示追加到组,避免移除原有组)。
sudo usermod -l 新用户名 旧用户名(如sudo usermod -l newuser olduser);sudo usermod -d /新路径/用户名 -m 用户名(-m会将原家目录内容迁移至新路径);sudo usermod -s /bin/zsh 用户名(如切换至Zsh)。sudo userdel 用户名(仅删除用户账户,家目录仍存在);sudo userdel -r 用户名(-r选项会递归删除家目录及邮件池)。sudo usermod -s /sbin/nologin 用户名(将Shell设为不可登录,用户无法通过密码登录);sudo usermod -s /bin/bash 用户名(恢复默认Shell,允许登录)。使用groupadd命令:sudo groupadd 组名(如sudo groupadd developers)。
sudo usermod -aG 组名 用户名(如sudo usermod -aG developers testuser,用户保留原有组);sudo usermod -g 组名 用户名(如sudo usermod -g developers testuser,修改用户的默认组)。使用groupdel命令:sudo groupdel 组名(需确保组内无用户,否则需先移除用户)。
id 用户名(如id testuser);sudo passwd -S 用户名(显示密码是否设置、过期时间等)。ls -l 文件/目录路径(如ls -l /home/testuser);chmod 权限 文件/目录路径(如chmod 755 script.sh赋予所有者读写执行、组和其他用户读执行);chown 用户名:组名 文件/目录路径(如chown testuser:developers file.txt)。