# 通过临时云服务器挂载系统盘方式重置Windows ECS密码
#### 操作场景
如果在创建弹性云服务器时未设置密码、密码丢失或密码过期，则需要通过重置密码方式获取新密码。
通常情况，请参考[在控制台重置云服务器密码](https://support.huaweicloud.com/usermanual-ecs/zh-cn_topic_0067909751.html)，通过控制台的"重置密码"功能为弹性云服务器重置密码。
如果无法通过控制台重置密码或重置后的密码不生效，可能是由于弹性云服务器缺失一键式重置密码插件、未开通并授权COC或未安装UniAgent，此时，您可以参考本节内容重新设置密码。
Linux操作系统请参见[通过临时云服务器挂载系统盘方式重置Linux ECS密码](https://support.huaweicloud.com/ecs_faq/zh-cn_topic_0179487874.html)。
#### 约束与限制
- 本节操作介绍的方法仅适用于修改Windows本地账户密码，不能修改域账户密码。
- 本操需要卸载系统盘，为了避免造成系统盘数据丢失，建议您在操作前先备份系统盘或制作系统盘快照。
 
#### 前提条件
- 备份系统盘或制作系统盘快照，详细操作请参见[备份弹性云服务器](https://support.huaweicloud.com/usermanual-ecs/ecs_03_1502.html)或[创建云硬盘快照](https://support.huaweicloud.com/usermanual-evs/zh-cn_topic_0066615262.html)。
- 准备一台Linux操作系统的临时弹性云服务器，建议操作系统为Ubuntu14.04以上版本，该临时弹性云服务器与待重置密码的弹性云服务器位于同一个可用区，并具有相同的CPU架构。
  ![](https://support.huaweicloud.com/ecs_faq/public_sys-resources/note_3.0-zh-cn.png)
  - 目前仅支持Ubuntu 16.04和Ubuntu 18.04版本的公共镜像执行该操作。
  
  - 您可以选择符合要求的已有云服务器作为临时弹性云服务器，也可以重新购买一台临时弹性云服务器。 重新购买的弹性云服务器在重置密码后，建议释放，以免继续收费。
    
    
- 临时弹性云服务器已经绑定弹性公网IP，并配置系统apt-get源。
- 通过下面的方法，在临时弹性云服务器中安装ntfs-3g和chntpw软件包。 方法一：
  执行以下命令，安装ntfs-3g和chntpw软件包。
  ```
  sudo apt-get install ntfs-3g chntpw
  ```
  方法二：
  根据临时弹性云服务器的操作系统版本，下载对应版本的ntfs-3g和chntpw软件包进行安装。
  
 
#### 操作流程
图1重置密码操作流程   
![](https://support.huaweicloud.com/ecs_faq/zh-cn_image_0000001567774897.png "点击放大")
#### 操作步骤
1. 关闭原弹性云服务器，卸载系统盘。
   1. 登录[ECS控制台](https://console.huaweicloud.com/ecm/?#/ecs/manager/vmList)，进入弹性云服务器列表页面。
   
   2. 原Windows弹性云服务器关机，并进入其详情页，选择"云硬盘"页签。
      ![](https://support.huaweicloud.com/ecs_faq/public_sys-resources/note_3.0-zh-cn.png)
      原Windows弹性云服务器关机时，请勿执行强制关机操作，否则可能引起重置密码操作失败。
      
   
   3. 单击系统盘所在行的"卸载"，卸载系统盘。
    
2. 将系统盘挂载到临时弹性云服务器上。
   1. 展开临时弹性云服务器的详情页，并选择"云硬盘"页签。
   
   2. 单击"挂载磁盘"，在"挂载磁盘"对话框中，选择[1.c]中卸载的系统盘，并将其挂载到临时弹性云服务器上。
   
   3. 远程登录临时弹性云服务器。
   
   4. 执行以下命令，查看卸载的系统盘在临时弹性云服务器上的目录。
      ```
      fdisk -l
      ```
      
   
   5. 执行以下命令，将卸载的系统盘的文件系统挂载到临时弹性云服务器上。
      ```
      mount -t ntfs-3g /dev/系统盘目录 /mnt/
      ```
      例如，查询的系统盘目录为"xvde2"：
      ```
      mount -t ntfs-3g /dev/xvde2 /mnt/
      ```
      如果执行上述挂载命令时出现如下错误提示信息，可能是由于原Windows弹性云服务器与临时Linux弹性云服务器的ntfs文件系统不一致，需要修复文件系统一致性错误。
      ```
      The disk contains an unclean file system (0, 0).
      Metadata kept in Windows cache, refused to mount.
      Failed to mount '/dev/xvde2': Operation not permitted
      The NTFS partition is in an unsafe state. Please resume and shutdown
      Windows fully (no hibernation or fast restarting), or mount the volume
      read-only with the 'ro' mount option.
      ```
      您可以执行以下命令修复ntfs文件系统，然后再执行挂载命令。在修复前请先备份磁盘数据。
      ```
      ntfsfix /dev/系统盘目录
      ```
      例如，查询的系统盘目录为"xvde2"：
      ```
      ntfsfix /dev/xvde2
      ```
      
    
3. 在临时弹性云服务器上修改指定用户密码，并清除原始密码。
   1. 执行以下命令，备份SAM文件。
      ```
      cp /mnt/Windows/System32/config/SAM /mnt/Windows/System32/config/SAM.bak
      ```
      
   
   2. 执行以下命令，修改指定用户密码。
      ```
      chntpw -u Administrator /mnt/Windows/System32/config/SAM
      ```
      
   
   3. 按照系统提示，依次输入"1"、"q"和"y"，按"Enter"。 系统包含如下回显信息时，表示密码清除成功。
      ```
      Select: [q] > 1
      Password cleared!
      Select: [q] > q
      Hives that have changed:
      #Name
      0<SAM>
      Write hive files? (y/n) [n] : y
      0<SAM> - OK
      ```
      
    
4. 关闭临时弹性云服务器，卸载原弹性云服务器的系统盘，并将其挂载回原弹性云服务器。
   1. 临时弹性云服务器关机，并进入详情页，选择"云硬盘"页签。
   
   2. 单击"卸载"，卸载[2.b]中临时挂载的系统盘。
   
   3. 展开原Windows弹性云服务器的详情页，选择"云硬盘"页签。
   
   4. 单击"挂载磁盘"，在"挂载磁盘"对话框中，选择[4.b]中卸载的系统盘，将其作为系统盘挂载回原弹性云服务器。
    
5. 开启原Windows弹性云服务器，设置新密码。
   1. 单击"开机"，开启原Windows弹性云服务器，待状态为"运行中"后，单击"操作"列下的"远程登录"。
   
   2. 单击"开始"菜单，在搜索框中输入"CMD"，按"Enter"。
   
   3. 执行以下命令，修改用户密码，新密码必须符合密码设置规则，详细内容，请参见[密码使用场景介绍](https://support.huaweicloud.com/usermanual-ecs/ecs_03_0401.html)。
      ```
      net user Administrator 新密码
      ```
      
    
 
