Согласно KB VMWare единственный поддерживаемый способ сбросить пароль на ESXi хосте (будь то ESXi 3.5, ESXi 4.x или ESXi 5.x ) – полная переустановка ESXi, что естественно, не всегда приемлемо, ведь при переустановке (пункт “Repair”) несмотря на то, что с файлами виртуальных машин на хранилище VMFS ничего не произойдет (достаточно при установки выбрать пункт «Install ESXi, preserve VMFS datatore»), настройки самого гипервизора будут потеряны, и восстановить их по памяти – достаточно трудоемкая задача, особенно в случае сложной конфигурации ESXi. Специалисты VMWare немного лукавят, сбросить пароль root на VMWare ESXi можно, однако в этом случае с точки зрения технической поддержки вендора система переходит в разряд unsupported configuration (в силу сложности архитектуры ESXi).
Итак, разберемся, как же сбросить пароль root на гипервизоре ESXi 5.1, с помощью сторонних средств. Основная проблема, которая стоит перед нами, заключается в том, что в ESXi нет сервисной консоли, и традиционные способы сброса пароля для Linux систем (через single-user mode) тут не сработают.
Пароли (а точнее их хеши) пользователей ESXi хранятся в файле etc/shadow, который хранится в архиве local.tgz, который хранится в архиве state.tgz. Естественно, узнать пароль root по информации в файле не получится, все, что можно сделать – сбросить его на пустой (проще всего) либо заменить на хеш заранее известного пароля.
- Загружаем cервер с ESXi с любого Live CD с Linux (например, Slax, GRML, KNOPPIX или CentOS LiveCD)
- Далее нам нужно найти раздел, на котором лежит файл state.tgz. Определить раздел, на котором он хранится – задача непростая. Для диска с разделами mbr введите команду
fdisk -l
, если используется GPT, воспользуйтесь командой parted
/dev/ print
- Допустим, файл state.tgz обнаружился в разделе /dev/sda5. С помощью стандартной команды смонтируйте раздел /dev/sda5 в каталог /mnt
mount -t vfat /dev/sdc5 /mnt
- Распакуйте содержимое файла state.tgz в каталог /tmp
cd /tmp tar xzf /mnt/state.tgz
- Распакуйте
local.tgz tar xzf local.tgz
- В результате приведенных операций появится директория /etc, в которой хранится файл shadow. Откройте его любым текстовым редактором (например, vi или nano)для редактирования
vi etc/shadow
- Удалите хеш пароля пользователя root (между первым и вторым двоеточием) и сохраните изменения в файле
- Перепакуем архивы, создав предварительно копию state.tgz.bakup (на случай, если что-то пойдет не так)
mv /mnt/state.tgz /mnt/state.tgz.bakup rm local.tgz tar czf local.tgz etc tar czf state.tgz local.tgz mv state.tgz /mnt/
- Перезагрузите сервер ESXi, извлеките загрузочный диск с Linux и после загрузки сервера попробуйте подключиться к гипервизору с помощью пустого пароля root.
Как Вы видите, в консоли отображается просьба сменить стандартный пароль пользователя root.
ЗЫ. Еще пара ссылок по теме:
Сброс пароля администратора в Windows
ребят — для vmWare esxi 5.1.xx эта статья не работает, не тратьте время — сразу переустанавливайте и да, храните виртуалке на одельных винтах от системы , всем добра
Работает она в 5.1 — просто с дополнениями 🙂
там два раздела /dev/sdc5 и /dev/sdc6 по 262 Мб и в каждом есть stat.gz-local.gz а в нем /etc/shadow править надо оба ,
помещаем туда root::13358:0:99999:7:::
Перезагружаем и радуемся жизни.
Как-то так
Да. Нам помогло поменять в двух местах /dev/sdc5 и /dev/sdc6 VmWare 5.1