我在Azure上运行了一年多的Linux VM。 我忘记了密码到我的帐户。 但是我仍然能够ssh进入虚拟机,因为它有我的SSH密钥。 请注意,根帐户没有我的SSH密钥,所以我不能ssh到根。 另外我不能sudo一旦我ssh,因为它提示input密码。
我尝试使用azure色的cli,特别是http://azure.microsoft.com/blog/2014/08/25/using-vmaccess-extension-to-reset-login-credentials-for-linux-vm/ 。 这不适用于我的waagent版本是WALinuxAgent-1.3.2,最低需求是2+。
有没有其他办法可以重置这个VM的根密码?
我不太了解Azure,但是我认为你可以通过pipe理员权限来更改密码。 在linux中:
sudo passwd root
在Windows中:
(在pipe理员cmd中)
net users root *
这个问题现在可能解决了(希望)。 如果您无法login到您的远程访问帐户,我推荐使用PowerShell的Azure CLI。 实际工作的步骤要简单得多。
注意:此示例使用新的资源pipe理器typesVM进行testing。
确保安装了azure色的cli。 打开一个terminal
$ azure login
注意:按照说明在浏览器中input临时访问代码
检查您的有效订阅:
$ azure account list
如果还没有,请设置您需要的订阅。 您可以通过访问订阅资源来在Azure门户中validation其ID
$ azure account set <SubName or SubId>
设置资源pipe理器模式
$ azure config mode arm
重设密码。 这个命令也会安装所需的扩展名。 这需要一段时间,所以喝一杯!
$ azure vm reset-access -g <res-group-name> -n <vm-name> -u <username> -p <new-pwd>
我找不到任何信息来帮助您的具体情况,但是一种解决方法是下载磁盘并使用此磁盘在本地hyper-v上创build虚拟机。 这样你将有控制台访问和进入恢复模式重置密码的可能性。 接下来,上传vhd并重新部署虚拟机。
我没有azure色的特定的经验,但是如果你可以获得控制台访问权限,你可以启动虚拟机进入单用户模式,并从那里重置密码。