VirtualBox — boot’owanie z fizycznego dysku

Po dłuższej przerwie mini poradnik jak boot’ować system w virtualbox’ie z fizycznego dysku twardego z zainstalowanym systemem. Host to linux (Ubuntu) a system to Windows 10 (GPT z UEFI).

VirtualBox przydaje się kiedy chcemy korzystać w wielu systemów na jednym komputerze w tym samym czasie.

Mój setup to host Linux (ubuntu) oraz drugi system to Windows 10 (dualboot) i korzystam z obydwóch systemie naprzemiennie.

Czasem natomiast chcę uruchomić system Windows kiedy w tym samym czasie działam na Linuxie, np. żeby przetestować coś lub skompilować i tutaj pojawia się problem. Możemy utworzyć wirtualny dysk i na nim zainstalować Windows’a, ale wtedy mamy dwa systemy i musimy wszystkie narzędzie powielić.

Można natomiast do VirtualBox’a „podłączyć” fizyczny dysk, z którego normalnie boot’ujemy drugi system, co jest w tym przypadku rozwiązaniem idealnym.

Utworzenie mapowania dysku w systemie

Pierwszy krok to utworzenie pliku dysku, który będzie zmapowany do dysku fizycznego. Taki dysk później wybieramy w edycji maszyny w VirtualBox’ie.

Aby to zrobić odpalamy terminal i wpisujemy:

sudo vboxmanage internalcommands createrawvmdk \
        -filename ~/nvme.vmdk \
        -rawdisk /dev/nvme1n1

Ta komenda utworzy plik mapowania nvme.vmdk który wybieramy w edycji lub przy tworzeniu maszyny.

Konfiguracji maszyny wirtualnej

Kiedy mamy dysk musimy wybrać go w edycji maszyny, musimy uruchomić VirtualBox’a jako root lub nadać odpowiednie uprawnienia.

Wchodzimy w ustawienia maszyny: Pamięć > Kontroler SATA > Dodaj nowy i wybieramy nasz dysk. W edycji zaznaczamy „Dysk SSD”.

Kolejna rzecz to typ dysku, wchodzimy w Plik > Menadżer nośników wirtualnych > nvme.vmdk >Właściwości i jako „Typ” wybieramy „Bezpośredniego zapisu”.

Jeśli korzystamy Z UEFI to w System > Płyta główna zaznaczamy „Włącz EFI”.

Podsumowanie

To wszystko, po uruchomieniu maszyny powinna ona boot’ować z naszego dysku.

Jeśli korzystamy z dualboot to może nas wyrzucić do shella grub, wtedy musimy ręcznie odpalić system. Wklepujemy kolejno:

insmod part_gpt
insmod chain
set root=(hd0,gpt1)
chainloader /efi/Microsoft/Boot/bootmgfw.efi
boot

Przy pomocy komendy ls możemy sprawdzić zawartość partycji, np. ls (hd0,1) /.

VirtualBox KDE Neon
VirtualBox KDE Neon

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Wymagane pola są oznaczone *