Linux用户管理:掌握useradd与adduser命令

版权申诉
2 下载量 82 浏览量 更新于2024-09-12 1 收藏 151KB PDF 举报
"Linux命令每天必学之 useradd/adduser 新增用户" 在Linux操作系统中,管理用户账户是系统管理员的基本任务之一。`useradd` 和 `adduser` 命令是用于创建新用户账户的工具,它们允许超级用户(root)在系统中添加新的用户。这两个命令虽然在功能上相似,但在某些方面存在细微差别。 `useradd` 是一个基本的命令,用于执行创建用户账户所需的基本操作,如设置用户ID、创建主目录、指定用户Shell等。它的基本语法是 `useradd [参数] 用户名`。下面是一些常用的`useradd` 参数: - `-c`: 使用此选项可以添加关于用户的注释,这些注释将存储在 `/etc/passwd` 文件的注释字段中。 - `-d`: 指定用户的家目录,如果不提供,系统通常会将家目录设置为 `/home/用户名`。 - `-e`: 设置账户的失效日期,格式为 `MM/DD/YYYY`。 - `-f`: 指定密码过期后账户的关闭天数。默认值为-1,表示密码永不过期。 - `-g`: 指定用户的主组。 - `-G`: 指定用户所属的附加组。 - `-l`: 不将用户信息写入 `lastlog` 和 `faillog` 文件。 - `-m`: 自动创建用户的家目录。 - `-M`: 不创建用户的家目录。 - `-n`: 不创建与用户名同名的组。 - `-p`: 设置用户的密码,通常会加密存储。 - `-r`: 创建系统用户,这些用户通常用于运行系统服务。 - `-s`: 指定用户的登录Shell,默认为 `/bin/bash`。 - `-u`: 指定用户的UID,需要确保是唯一的,且对于普通用户来说,应大于499。 `adduser` 命令通常是一个包装器脚本,它提供了更友好的交互式界面,会提示输入密码和其他信息,适用于那些不熟悉命令行选项的用户。在某些发行版中,`adduser` 只是 `useradd` 的别名,两者的行为完全相同。 在实际使用中,例如要创建一个名为 `user1` 的用户,可以使用以下命令: ```bash # 对于root用户 useradd user1 # 或者对于非root用户,使用sudo sudo useradd user1 ``` 如果需要指定用户组、家目录或密码,可以结合上述参数进行操作,例如: ```bash # 创建用户user2,并将其加入ftp组 useradd -g ftp user2 # 创建用户user4,家目录设为/mnt/bak/user4 # 需要注意,如果目录不存在,需要先创建 mkdir -p /mnt/bak/user4 useradd -d /mnt/bak/user4 user4 # 创建用户user5,密码设置为123456 # 密码需要经过加密,通常使用mkpasswd工具 password=$(echo -n '123456' | mkpasswd -s -1) useradd -p $password user5 ``` 在创建用户后,可以使用 `cat /etc/passwd` 查看所有用户的列表,确认新用户是否已成功添加。记住,对于任何涉及系统安全的操作,都需要谨慎处理,确保遵循最佳实践和安全策略。