Для сброса пароля хоста ESXi понадобится доступ к серверу (физический, или через iLO-подобные системы управления) и Live CD с каким-нибудь линуксом (я использую GParted Live).
1. Загрузившись с Live CD, проверим какие диски и разделы нам доступны. Скорее всего найдется единственный диск с 9-ю разделами на нем
- ls /dev| grep sd
- sda
- sda1
- sda2
- sda3
- sda4
- sda5
- sda6
- sda7
- sda8
- sda9
2. Пароль находится в архиве в архиве (да, два раза) на разделе sda5. Смонтируем раздел и проверим.
- mkdir /mnt/sda5
- mount /dev/sda5 /mnt/sda5
- ls -l /mnt/sda5/state.tgz
- -rwxr-xr-x 1 root root 12969 Apr 21 10:42 /mnt/sda5/state.tgz
3. Создадим временную директорию и распакуем в нее этот файл
- mkdir /tmp/state
- tar -xf /mnt/sda5/state.tgz -C /tmp/state/
- # из архива вылез второй архив, распакуем его сюда же
- tar -xf /tmp/state/local.tgz -C /tmp/state/
- # удалим этот промежуточный архив
- rm /tmp/state/local.tgz
4. Отредактируем файл shadow
- vi /tmp/state/etc/shadow
уберем из первой строки длинный хеш пароля, идущий после «root:», чтобы строка приняла вид
- root::13358:0:99999:7:::
Таким образом пароль для рута будет не установлен. Сохраним файл.
5. Теперь остается запаковать все обратно в архивы и положить на место
- cd /tmp/state
- tar -czf local.tgz etc
- tar -czf state.tgz local.tgz
- mv state.tgz /mnt/sda5/
6. Отмонтируем раздел ESXi и перезагружаемся
- umount /mnt/sda5
- reboot
После перезагрузки можно будет зайти в ESXi без пароля и установить его в настройках.
Небольшая демонстрация.