#!/bin/bash
#添加用户admin123的脚本
#文件名：admin_setup.sh
#功能：创建管理员用户及配置，支持后续扩展
#最后修改：$(date)
#-------------------------- 配置参数区 --------------------------
USERNAME="admin123"
PASSWORD="123QWE!@#"  # 测试后立即修改！
#-------------------------- 工具函数区 --------------------------
error_exit() {
echo "错误：$1" >&2
exit 1
}
check_root() {
[ "$(id -u)" -ne 0 ] && error_exit "请用root运行"
}
#-------------------------- 核心功能区 --------------------------
create_user() {
echo "===== 创建用户 $USERNAME ====="
id "$USERNAME" &>/dev/null && error_exit "用户已存在"
useradd "$USERNAME" || error_exit "创建失败"
echo "用户创建成功"
}
set_user_password() {
echo "===== 设置密码 ====="
echo "$PASSWORD" | passwd --stdin "$USERNAME" || error_exit "密码设置失败"
echo "密码设置完成"
}
config_sudo() {
echo "===== 配置sudo权限 ====="
if ! grep -q "^$USERNAME ALL=(ALL) ALL" /etc/sudoers; then
echo "$USERNAME ALL=(ALL) ALL" | EDITOR='tee -a' visudo || error_exit "sudo配置失败"
echo "sudo权限配置完成"
else
echo "sudo权限已存在"
fi
}
#-------------------------- 扩展功能区（后续新增功能放这里） --------------------------
#示例：安装常用工具
install_tools() {
yum install -y vim net-tools || error_exit "工具安装失败"
}
#-------------------------- 主流程 --------------------------
main() {
echo "===== 开始执行管理员配置脚本 ====="
check_root
create_user
set_user_password
config_sudo
# 扩展功能调用（取消注释即可）
# install_tools
echo "===== 脚本执行完成 ====="
}
main
