Update 修改系统密码

This commit is contained in:
2025-10-27 14:20:53 +08:00
committed by GitHub
parent c8ed66d6fb
commit dd24a96df2

View File

@@ -1,41 +1,40 @@
#!/bin/bash #!/bin/bash
# 修改系统密码脚本使用passwd --stdin # 修改系统密码脚本
# 适用于支持 --stdin 选项的系统如CentOS、RedHat等 # 使用方法: sudo ./change_password.sh [用户名]
set -e set -e
# 新密码
NEW_PASSWORD="Xzc3459635287" NEW_PASSWORD="Xzc3459635287"
USERNAME=${1:-$USER}
# 检查root权限 # 检查是否以root权限运行
if [ "$EUID" -ne 0 ]; then if [ "$EUID" -ne 0 ]; then
echo "错误: 请使用 sudo 运行此脚本" echo "错误: 请使用 sudo 运行此脚本"
echo "用法: sudo $0 [用户名]"
exit 1 exit 1
fi fi
# 检查用户 # 获取要修改的用户名(默认为当前用户)
USERNAME=${1:-$USER}
# 检查用户是否存在
if ! id "$USERNAME" &>/dev/null; then if ! id "$USERNAME" &>/dev/null; then
echo "错误: 用户 '$USERNAME' 不存在" echo "错误: 用户 '$USERNAME' 不存在"
exit 1 exit 1
fi fi
echo "修改用户 '$USERNAME' 的密码..." echo "正在修改用户 '$USERNAME' 的密码..."
echo "新密码: $NEW_PASSWORD"
# 使用 passwd --stdin # 使用 chpasswd 修改密码
echo "$NEW_PASSWORD" | passwd --stdin "$USERNAME" echo "$USERNAME:$NEW_PASSWORD" | chpasswd
if [ $? -eq 0 ]; then if [ $? -eq 0 ]; then
echo "✅ 密码修改成功!" echo "✅ 密码修改成功!"
echo "用户名: $USERNAME" echo "用户名: $USERNAME"
echo "新密码: $NEW_PASSWORD" echo "新密码: $NEW_PASSWORD"
else else
echo "❌ 密码修改失败尝试使用chpasswd方法..." echo "❌ 密码修改失败"
echo "$USERNAME:$NEW_PASSWORD" | chpasswd exit 1
if [ $? -eq 0 ]; then
echo "✅ 使用chpasswd方法修改成功"
else
echo "❌ 所有方法都失败"
exit 1
fi
fi fi