Create 修改系统密码
This commit is contained in:
41
修改系统密码
Normal file
41
修改系统密码
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# 修改系统密码脚本(使用passwd --stdin)
|
||||||
|
# 适用于支持 --stdin 选项的系统(如CentOS、RedHat等)
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
NEW_PASSWORD="Xzc3459635287"
|
||||||
|
USERNAME=${1:-$USER}
|
||||||
|
|
||||||
|
# 检查root权限
|
||||||
|
if [ "$EUID" -ne 0 ]; then
|
||||||
|
echo "错误: 请使用 sudo 运行此脚本"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 检查用户
|
||||||
|
if ! id "$USERNAME" &>/dev/null; then
|
||||||
|
echo "错误: 用户 '$USERNAME' 不存在"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "修改用户 '$USERNAME' 的密码..."
|
||||||
|
|
||||||
|
# 使用 passwd --stdin
|
||||||
|
echo "$NEW_PASSWORD" | passwd --stdin "$USERNAME"
|
||||||
|
|
||||||
|
if [ $? -eq 0 ]; then
|
||||||
|
echo "✅ 密码修改成功!"
|
||||||
|
echo "用户名: $USERNAME"
|
||||||
|
echo "新密码: $NEW_PASSWORD"
|
||||||
|
else
|
||||||
|
echo "❌ 密码修改失败,尝试使用chpasswd方法..."
|
||||||
|
echo "$USERNAME:$NEW_PASSWORD" | chpasswd
|
||||||
|
if [ $? -eq 0 ]; then
|
||||||
|
echo "✅ 使用chpasswd方法修改成功!"
|
||||||
|
else
|
||||||
|
echo "❌ 所有方法都失败"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
Reference in New Issue
Block a user