Да, это возможно.
- Настройте виртуальную коробку для использования вашего физического диска. Это немного рискованно, потому что гость виртуальной машины будет видеть ваш хост-диск напрямую. Подробности здесь .
- Предоставьте прямой доступ для чтения / записи к своему физическому диску (
setfacl -m u:yourusername:rw /dev/sda
)
- Обновите виртуальную машину virtualbox, чтобы использовать тот же системный UUID, что и у вашего хоста (
dmidecode -s system-uuid
показывает ваш системный UUID, vboxmanage modifyvm your-vm-name --hardwareuuid <your-hardware-uuid>
). Возможно, вам придется клонировать также ваши uuids контроллера дисковода ( lsblk --nodeps --no name,serial
показывает серийные идентификаторы вашего хоста. Мне не нужно было клонировать их в мой виртуальный ящик, но это может понадобиться. Возможно, какая-то хитрая vboxmanage modifyvm
команда делает это, или вам нужно отредактировать vm config xml вручную.
- Попробуйте установить в виртуальной машине те же типы дисков и dvd-контроллеров, что и для вашего хоста (если ваш хост основан на SATA, используйте виртуальные контроллеры SATA, если он основан на IDE, используйте IDE и т. Д.).
Существует еще одна опасность: если вы загружаете виртуальную машину непосредственно с вашего хост-диска, возможно, вы загружаете одну и ту же ОС дважды. Или вы открываете один и тот же раздел дважды. Это убьет ваши данные, поэтому никогда не монтируйте несколько разделов одновременно. Кроме того, не монтируйте разделы NTFS, пока они используются вашей Windows (но вы все равно можете обмениваться данными между разделами, например, с Samba).
Если это произошло случайно, перезагрузитесь с помощью sysrq (alt + printscreen + b) и fsck everything. Для этого также может потребоваться некоторая хитрость grub (я переконфигурировал grub для загрузки окон по умолчанию, поэтому я избегаю проблемы, когда я случайно загружаю свой Linux снова в виртуальной машине Windows - и это обязательно произойдет, потому что Центр обновления Windows часто перезагружает Windows за твоей спиной).
Осторожно: Win10 использует системный uuid и uuid контроллера дисковода для идентификации вашего ПК. Если вы пропустите (3), ваш win10 будет думать, что он был клонирован на новую машину, и он больше не будет активирован. Хотя, если вы вернетесь к исходному hw, он снова будет активирован.