请求编写在新服务器上自动创建Ubuntu用户并设置密码的脚本
请求编写在新服务器上自动创建Ubuntu用户并设置密码的脚本
没问题,这就给你搞定这个自动创建用户并设置密码的脚本!
因为默认的passwd命令是交互式的,会等待手动输入密码,所以我们得用非交互式的方式来完成密码设置,避免脚本卡住。下面是完整的脚本:
#!/bin/bash # 配置要创建的用户名和密码,直接改这里就行 TARGET_USER="username" USER_PASSWORD="1234" # 创建用户,指定nologin shell(禁止该用户登录系统) useradd -s /usr/sbin/nologin "$TARGET_USER" # 非交互式设置密码,用chpasswd命令接收用户名:密码的格式 echo "$TARGET_USER:$USER_PASSWORD" | chpasswd
脚本使用说明:
- 把上面的代码保存成一个文件,比如
create_user.sh - 给脚本添加执行权限:
chmod +x create_user.sh - 必须用root权限执行脚本,比如:
sudo ./create_user.sh
额外提示:
- 密码设置成
1234在生产环境非常不安全,建议换成包含大小写字母、数字和特殊字符的复杂密码 - 如果需要把用户添加到某个用户组,可以在
useradd命令里加上-G参数,比如要加入sudo组的话:useradd -s /usr/sbin/nologin -G sudo "$TARGET_USER"(不过因为你设置了nologin shell,这个用户没法登录执行sudo,所以这个需求可能用不上,只是提个醒) - 执行完脚本后,可以用
cat /etc/passwd | grep username来验证用户是否创建成功
备注:内容来源于stack exchange,提问作者alinn




