在 VMware ESXi 中重置 Root 密码
根据 VMware 官方文档,从头开始重新安装 ESXi 是重置 root 密码的唯一受支持的方法 (https://kb.vmware.com/s/article/1317898)。您还可以使用主机配置文件重置密码(需要 vCenter 和 Enterprise Plus 许可证)。但是,重新安装后,您的 ESXi 主机配置将完全丢失。虚拟机数据和配置文件保留在VMFS/NFS数据存储上,重新安装后可以快速导入到主机。
实际上,如果您使用任何 Linux 启动/救援磁盘启动主机,则可以在 VMware ESXi 上重置 root 密码,而无需重新安装。这并不难。
如果您忘记了 root 密码,您将无法使用 DCUI 或 VMware Host Client Web 界面以 root 身份进行身份验证:
Authentication failed
Invalid login or password.如何使用 Linux Live CD 重置 ESXi 密码
ESXi 将用户密码(或更确切地说是其哈希值)存储在 /etc/shadow 文件中,该文件存储在 local.tgz 存档中,该存档以 状态存档.tgz。理论上,您可以从此文件中检索并解密根密码哈希,但这仅适用于简单密码。因此,最好在影子文件中设置一个空白的当前 root 密码,或者将其替换为您知道的密码的哈希值。
从任何 Linux LiveCD 引导 ESXi 主机并打开控制台。
列出磁盘分区:
# fdisk -l我们需要/dev/sda5(在VMware术语中,它被称为
bootbank)和 /dev/sda6 (包含
altrbootbank)在 ESXi 7.x 中大小为 1 GB 的分区(在之前的 ESXi 版本中,这些分区的大小为 250 MB)。
首先,在 /dev/sda5 中的 ESXi 配置中重置密码。创建挂载点和临时文件目录:
# mkdir /mnt/sda5
# mkdir /mnt/sda6
# mkdir /temp挂载/dev/sda5:
# mount /dev/sda5 /mnt/sda5从 sda5 复制 state.tgz 文件:
# cp /mnt/sda5/state.tgz /temp
# cd /temp解压state.tgz:
# tar xzf state.tgz
里面还有另一个 local.tgz 存档,也解压它:
# tar xzf local.tgzetc 文件夹出现在当前目录中。
使用任何文本编辑器编辑影子文件:
# nano /temp/etc/shadow该文件包含本地 ESXi 用户的密码哈希。
要删除当前密码并为 root 设置空白密码,请清除哈希值。它应该看起来像这样:
保存对文件的更改,删除旧的 tgz 存档,然后重新打包它们:
# rm *.tgz
# tar czf local.tgz etc
# tar czf state.tgz local.tgz替换 sda5 ESXi 分区上的 state.tgz 文件:
# mv state.tgz /mnt/sda5卸载分区:
# umount /mnt/sda5
以同样的方式,在 sda6 分区上的 passwd 文件中设置一个空密码(您现在应该能够使用空 root 密码连接到 ESXi)。
现在您可以重新启动 ESXi 主机并删除可启动闪存驱动器/映像。您可以使用空 root 密码连接到 ESXi。
此密码重置方法适用于所有版本的 ESXi(5.x、6.x、7.x 和 8.x),包括免费的 VMware Hypervisor。
登录后请务必设置新的 root 密码。
使用 VMware 主机配置文件重置 ESXi Root 密码
如果您已部署 vCenter 并在主机上安装了 vSphere Enterprise Plus 许可证,则可以使用 VMware 主机配置文件在任何托管主机上重置 root 密码。在此场景中,要将 VMware 配置文件设置(和新的 root 密码)应用到 ESXi 主机,需要使用 vpxa 特权帐户,该帐户是在将主机连接到 vCenter 时添加的。此方法允许您在不重新引导 ESXi 主机的情况下重置 root 密码。
连接到您的 vCenter 并转到策略和配置文件 -> 主机配置文件 -> 提取主机配置文件;
选择您的 ESXi 主机并指定要将设置保存到的配置文件的名称;
点击个人资料并选择编辑主机个人资料;
进入安全和服务->安全设置->安全->用户配置->root;
在固定密码配置中设置新的root密码;
然后将该配置文件应用到您的 ESXi 主机。建议您为其启用维护模式(维护模式->进入维护)并将所有虚拟机移至其他主机;
将配置文件附加到主机(主机配置文件 -> 附加主机配置文件);
然后转到“主机配置文件”,选择您的配置文件,然后单击修复;
要应用配置文件设置(包括新密码),请再次单击修复;
ESXi 主机上的 root 密码已重置,您可以使主机退出维护模式。







