You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

请求编写在新服务器上自动创建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

火山引擎 最新活动