重置Linux云服务器密码(未安装重置密码插件)
操作场景
如果Linux操作系统弹性云服务器未安装密码重置插件或者通过控制台重置密码后不生效,可以参见本节内容重新设置密码。
本节操作重置的是root用户的密码,您可以重置完root密码后登录云服务器后再更换密钥或重置非root用户的密码。
Windows操作系统请参见重置Windows云服务器密码(未安装重置密码插件)。
- 如果弹性云服务器提前安装了密码重置插件,请参见在控制台重置云服务器密码操作获取新密码。
- 公共镜像创建的弹性云服务器默认已安装一键式重置密码插件。请参考在控制台重置云服务器密码重置密码。
- 本节操作的方法需要卸载系统盘,为了避免造成系统盘数据丢失,建议您在操作前先备份系统盘或制作系统盘快照。
前提条件
- 已经准备一台Linux操作系统的临时弹性云服务器,该临时弹性云服务器与待重置密码的弹性云服务器位于同一个可用区,并具有相同的CPU架构。
您可以选择符合要求的已有云服务器作为临时弹性云服务器,也可以重新购买一台临时弹性云服务器。
重新购买的弹性云服务器在重置密码后,建议释放,以免继续收费。
- 临时弹性云服务器已经绑定弹性公网IP。
操作流程
操作步骤
- 下载重置密码的脚本,并上传至临时弹性云服务器。
单击重置密码脚本下载并解压缩,在本地通过WinSCP等连接工具,将获取的changepasswd.sh脚本上传到临时云服务器。
WinSCP下载地址:https://winscp.net/。
- 关闭原弹性云服务器,卸载其系统盘,并将系统盘挂载到临时弹性云服务器。
- 将系统盘挂载到临时弹性云服务器上。
- 展开临时弹性云服务器的详情页,并选择“云硬盘”页签。
- 单击“挂载磁盘”,在“挂载磁盘”对话框中,选择2.e中卸载的系统盘,将其挂载到临时弹性云服务器上。
- 远程登录临时弹性云服务器,并重置密码。
- 在临时弹性云服务器的“操作”列下,单击“远程登录”。
- 执行以下命令,查看原弹性云服务器上卸载的系统盘在临时弹性云服务器上的目录。
fdisk -l
图2 查询系统盘所在目录
- 在changepasswd.sh脚本所在目录执行以下命令,运行重置密码脚本。
chmod +x changepasswd.sh
./changepasswd.sh
运行重置密码脚本时,如果系统提示没有lv相关的命令(如no lvs commmand),则需要在临时弹性云服务器安装lvm(Logical Volume Manager)工具,推荐使用lvm2,您可以执行命令yum install lvm2进行安装。
如果原弹性云服务器和临时弹性云服务器的操作系统均为centos7,运行脚本过程中可能会出现挂载失败。请将脚本中的内容“mount $dev $mountPath”修改为“mount -o nouuid $dev $mountPath”,避免脚本运行失败。
- 根据系统提示输入新设置的密码和4.b中获取到的目录信息。
系统显示如下回显信息时,说明密码设置成功。
set password success.
- (可选)如果是非root用户,请执行如下操作打开root登录权限。
修改如下配置项:
- 关闭临时弹性云服务器,卸载原弹性云服务器的系统盘,并将其重新挂载回原弹性云服务器后执行重启操作。
- 重启原弹性云服务器。