在 CentOS 中,导入用户通常指的是批量创建用户,常见做法有以下几种,按使用频率从高到低说明。
newusers 批量导入(最常用 ✅)newusers 可以一次性从文件导入多个用户,适合从其他系统迁移用户。
格式(每行一个用户):
用户名:密码:UID:GID:用户说明:家目录:Shell
示例 users.txt:
alice:123456:1001:1001:Alice:/home/alice:/bin/bash
bob:654321:1002:1002:Bob:/home/bob:/bin/bash
⚠️ 注意:
sudo newusers users.txt
cat /etc/passwd | grep alice
cat /etc/shadow | grep alice
useradd 逐个导入(适合少量用户)sudo useradd -m -s /bin/bash alice
echo "alice:123456" | sudo chpasswd
参数说明:
-m:创建家目录-s:指定 shellchpasswd:批量设置密码/etc/passwd
/etc/shadow
/etc/group
⚠️ 不建议直接覆盖,推荐合并方式。
newusers 导入 /etc/passwd 内容sudo newusers /etc/passwd
chpasswdcat users_pass.txt
alice:password1
bob:password2
执行:
sudo chpasswd < users_pass.txt
sudo usermod -aG wheel alice
/etc/shadow 是否存在chpasswd 或 newuserssudo mkdir /home/alice
sudo cp /etc/skel/.bash* /home/alice
sudo chown -R alice:alice /home/alice
| 场景 | 推荐方式 |
|---|---|
| 批量导入用户 | newusers |
| 少量用户 | useradd + chpasswd |
| 迁移系统 | 合并 /etc/passwd + newusers |
如果你有 具体场景(如从 Ubuntu 迁移、LDAP、脚本自动化),可以告诉我,我可以给你定制方案。