Указанный файл не является виртуальным диском – Ошибка в vmx и на всех снимках

Вопрос или проблема

Я боролся с этой ошибкой два дня и прочитал и выполнил бесчисленные решения, но ни одно из них не сработало. Надеюсь, я найду помощь здесь.

Без каких-либо предупреждений или ошибок моя виртуальная машина вылетела. Когда я пытаюсь открыть её, появляется ошибка “Указанный файл не является виртуальным диском”.

Я не могу вернуться к каким-либо снимкам (ежедневные снимки создаются).

Решения, которые я уже пробовал:

  • Проверка vmx, если он ссылается на неправильный vmdk – нет, всё кажется в порядке.
  • Удаление папок *.LCK
  • Создание новой ВМ из vmdk (Ошибка: “Родитель этого виртуального диска не может быть открыт”)

Есть ли что-то ещё, что я мог бы сделать? И есть ли что-то, что я могу предоставить, что могло бы помочь вам, ребята и девчата, помочь мне?

С уважением и спасибо за ваше участие.

Так что, в моем случае единственный способ решить это было пройтись по каждому связанному .vmdk и проверить, функционирует ли родительский диск.

Я нашёл один, который всё ещё работал, примерно месяц назад.

Там было много повреждённых данных, так что я думаю, что это специальный случай и его не следует рассматривать как нормальную процедуру.

Для меня я просто удалил виртуальный диск из виртуальной ВМ через веб-интерфейс vsphere / ESXI / что бы вы ни использовали (НЕ УДАЛЯЙТЕ ДАННЫЕ), затем заново добавил существующий виртуальный диск.

Я загрузил старую ВМ и столкнулся с той же проблемой. Оказалось, что в прошлый раз, когда ВМ использовалась, я смонтировал физическую SD-карту как IDE-диск в ВМ, используя “расширенные” параметры. У меня больше не было SD-карты в компьютере, так что VMware не смог найти SD-карту.

Просто зайдя в настройки виртуальной машины и удалив смонтированный IDE-диск, я смог решить проблему. Надеюсь, это поможет кому-то ещё!

Для меня ошибка была в другой части, по какой-то причине ВМ изменила путь к HDD, он указывал на раздел 5 (VMNAME-000005.vmdk), я сделал следующее, чтобы это исправить:

  1. Щелкните правой кнопкой мыши, откройте настройки, удалите жесткий диск (это удаляет только конфигурацию, а не диск с данными)
  2. Добавьте правильный основной диск, для меня Laravel - Ubuntu 64-bit-cl1.vmdk, то есть без 000005
  3. Запустите ВМ, на этом этапе я получил ошибку, что выполняемый скрипт изменил, и ВМ невозможно запустить
  4. Сделайте снова шаги 1-2
  5. Запустите ВМ снова, тогда Ubuntu начнёт выполнять некоторые исправления диска на этом 000005
  6. После этого исправления диска ВМ запустилась нормально

Ответ или решение

Ошибка "Файл, указанный не является виртуальным диском" в среде VMware может возникнуть по нескольким причинам и приводить к значительным проблемам с доступом к вашей виртуальной машине (ВМ) и её снапшотам. Давайте рассмотрим основные шаги для диагностики и решения этой проблемы, основываясь на вашем опыте и общем знании административной работы с виртуальными машинами.

Понимание проблемы

Прежде всего, важно понимать, что ошибка указывает на невозможность VMware идентифицировать или получить доступ к виртуальному диску (файлу .vmdk). Это может произойти по следующим причинам:

  1. Повреждение файлов: Файлы виртуального диска могут быть повреждены, что приводит к невозможности VMware их корректно интерпретировать.

  2. Неверные ссылки: Файл конфигурации виртуальной машины (.vmx) может ссылается на неправильную или неопределенную версию файла виртуального диска.

  3. Проблемы с системными путями: Указанные в конфигурационном файле пути к файлам виртуального диска могут быть некорректными.

  4. Проблемы с файловой системой: Бывают случаи, когда сбои в файловой системе хранилища, на котором расположены виртуальные машины, могут вызвать эту ошибку.

Решение проблемы

1. Проверка конфигурации .vmx

Первым делом проверьте файл конфигурации вашей ВМ (файл с расширением .vmx):

  • Откройте .vmx файл в текстовом редакторе.
  • Убедитесь, что строки, содержащие пути к .vmdk файлам, указывают на правильные места.

2. Проверка целостности файлов .vmdk

Если у вас есть доступ к предыдущим версиям .vmdk файлов, используйте команду vmware-vdiskmanager для проверки и восстановления целостности дисков, если это возможно. Процесс может включать следующие команды:

vmware-vdiskmanager -R /path/to/your/disk.vmdk

3. Удаление .LCK каталогов

Как вы упомянули, удаление .LCK каталогов может помочь. Эти каталоги создаются для предотвращения одновременного доступа к файлам виртуальной машины и могут иногда вызывать конфликты.

4. Корректировка ссылок на родительские диски

Если у вас есть семейство связанных дисков (например, снапшоты), убедитесь, что основной диск доступен:

  • Проанализируйте все .vmdk файлы, включая те, которые имеют суффикс -00000X.
  • Найдите базовый .vmdk, на который ссылается ваш снапшот, и убедитесь, что он доступен и не поврежден.

5. Переопределение дисков в настройках ВМ

Как упоминали другие пользователи, удаление и повторное добавление виртуального диска может помочь:

  1. Удалите ненужный виртуальный диск из конфигурации ВМ (убедитесь, что не выбирается опция удаления данных).
  2. Добавьте основной дисковый файл .vmdk обратно в настройки ВМ.

6. Проверка на физические устройства

Если ошибка времени наращивания связана с отсутствием устройства или неправильным подключением (например, смешивание с физическими дисками), проверьте настройки устройства. Убедитесь, что все физические устройства корректны и доступны.

Заключение

Ваша осторожность и сочетание различных методов решения проблемы уникальны. Важно помнить, что каждое решение требует анализа состояния виртуской машины, чтобы избежать потери данных. Следуя описанным выше шагам, вы сможете эффективно устранить ошибку "Файл, указанный не является виртуальным диском" и восстановить доступ к вашей ВМ. На всякий случай, всегда рекомендуется создавать резервные копии всех важнейших файлов перед выполнением изменений.

Оцените материал
Добавить комментарий

Капча загружается...