如何在Windows Azure上的Linux VM上重置root密码?

我在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色的特定的经验,但是如果你可以获得控制台访问权限,你可以启动虚拟机进入单用户模式,并从那里重置密码。