Dimungkinkan untuk dual boot * dan * memvirtualisasikan drive fisik yang sama yang mengandung Windows 10?

11

Saya menggunakan Linux sebagai driver harian saya, dan baru saja menginstal Windows 10 ke disk fisik baru di PC saya untuk boot ganda. Untuk sementara, saya telah menggunakan Windows 7 melalui gambar VirtualBox yang telah saya pasang di iSCSI 1 .

Sekarang saya memiliki dua lingkungan Windows yang berbeda dan itu sangat menyebalkan. Saya ingin meninggalkan VM Windows 7 dan mengakses instalasi Windows 10 langsung melalui VirtualBox untuk kenyamanan, tetapi tanpa kehilangan kemampuan drop down ke dual boot ketika saya membutuhkan kinerja logam mentah.

Apakah mungkin untuk mem-boot instalasi Windows 10 yang ada pada media fisik khusus (SSD SATA3 internal) melalui VirtualBox tanpa kehilangan kemampuan untuk dual boot juga?

Jika itu membuat masalah menjadi lebih rumit (atau tidak mungkin) perlu dicatat bahwa Windows 10 SSD dilindungi dengan FDE melalui VeraCrypt.

Chris Tonkinson
sumber
1
Saya akan senang jika itu mungkin, tetapi saya belum menemukan jalan. Terlepas dari masalah menjalankan VM dengan disk fisik, ada dua aspek beralih antara boot keras dan virtual. (1) Akan ada konfigurasi ulang driver utama setiap kali Anda berpindah lingkungan yang dijalankan. (2) Sebagai akibat wajar, Windows mungkin akan memerlukan reaktivasi lisensi pada setiap switch: jika ini bahkan mungkin, lisensi hampir pasti akan mengeluh setelah beberapa reaktivasi. Apa yang dapat Anda lakukan adalah membuat disk virtual dari instalasi fisik, tetapi lisensi akan menjadi masalah.
AFH
Anda mungkin lebih baik mempertimbangkan menjalankan instalasi Linux di Windows VM: setidaknya itu akan menghindari kesulitan lisensi.
AFH
@AFH Masalah lisensi dapat diselesaikan dengan mengkloning uuid perangkat keras host dan id serial pengontrol disk ke dalam VM. Ini memungkinkan untuk menjalankan Windows sekali dari VM, dan sekali secara langsung (walaupun lisensi m $ masih tidak memungkinkan untuk menggunakan beberapa instalasi dengan kunci produk yang sama secara bersamaan, sehingga dapat dilakukan secara eksklusif dalam konfigurasi yang diminta).
peterh
@peterh - Terima kasih: Saya tidak tahu bahwa kloning UUID cukup untuk lisensi Windows. Masih ada masalah konfigurasi ulang driver saat beralih. Saya akan bereksperimen dengan jawaban Anda ketika saya punya waktu.
AFH

Jawaban:

7

Ya itu mungkin.

  1. Konfigurasikan kotak virtual untuk menggunakan disk fisik Anda. Agak berisiko, karena tamu VM akan melihat disk host Anda secara langsung. Detail di sini .
  2. Berikan akses baca / tulis langsung ke diri Anda ke cakram fisik Anda ( setfacl -m u:yourusername:rw /dev/sda)
  3. Perbarui VM virtualbox Anda untuk menggunakan sistem yang sama dengan host Anda ( dmidecode -s system-uuidtunjukkan sistem Anda, vboxmanage modifyvm your-vm-name --hardwareuuid <your-hardware-uuid>). Anda mungkin perlu mengkloning juga uuids pengontrol drive Anda ( lsblk --nodeps --no name,serialmenunjukkan id serial host Anda. Saya tidak perlu mengkloningnya ke dalam virtualbox saya, tetapi mungkin diperlukan. Mungkin beberapa vboxmanage modifyvmperintah rumit melakukannya, atau Anda harus mengedit vm config xml secara manual.
  4. Cobalah untuk mengatur jenis pengontrol disk dan dvd yang sama di VM sebagai host Anda (jika host Anda berbasis SATA, gunakan pengontrol virtual SATA, jika berbasis IDE, gunakan IDE, dll.).

Ada bahaya lain: jika Anda boot di VM drive host Anda secara langsung, ada kemungkinan bahwa Anda boot OS yang sama dua kali. Atau Anda membuka partisi yang sama dua kali. Ini akan mematikan data Anda, jadi jangan pernah me-mount banyak partisi secara bersamaan. Selain itu, jangan me-mount partisi NTFS Anda ketika sedang digunakan oleh Windows Anda (tetapi Anda masih dapat berbagi data antara partisi Anda, misalnya dengan Samba).

Jika tidak sengaja terjadi, reboot dengan sysrq (alt + printscreen + b) dan fsck segalanya. Beberapa tipuan grub mungkin juga diperlukan untuk itu (saya mengkonfigurasi ulang grub untuk mem-boot windows secara default, jadi saya menghindari masalah bahwa saya mem-boot Linux secara tidak sengaja lagi di dalam Windows VM - dan itu pasti akan terjadi, karena Pemutakhiran Windows sering me-restart Windows Anda dibelakangmu).

Hati-hati: Win10 menggunakan sistem Anda dan pengontrol drive Anda untuk mengidentifikasi PC Anda. Jika Anda melewatkan (3), win10 Anda akan berpikir itu diklon ke mesin baru, dan itu tidak akan diaktifkan lagi. Meskipun jika Anda boot kembali ke hw asli Anda, itu akan diaktifkan kembali.

peterh - Pasang kembali Monica
sumber
Saya melakukan semua yang Anda tulis dalam jawaban Anda, tetapi saya mendapatkan kesalahan akses ditolak. Saya agak bingung, sepertinya setfacltidak tahan setelah reboot. Saran? Catatan: Saya tidak memasang drive, karena saya tidak ingin korupsi data. Dokumentasi ACL mengatakan bahwa drive yang membutuhkan ACL harus dimasukkan fstab, yang akan memasangnya ...
Kartik
1
@Kartik Benar, itu tidak berlaku. Solusi paling sederhana, tetapi sedikit kotor adalah memasukkan perintah setfacl ke /etc/rc.local Anda. Solusi yang cukup bagus adalah mengeditnya di / etc / udev. Saya pribadi tidak cukup sering reboot untuk membuat mengetik perintah ini mengganggu.
peterh
Saya menggunakan udev untuk mengatur izin yang benar, tetapi mesin virtual macet di logo Windows. Ada ide?
Kartik
@Kartik Jika setidaknya bisa mulai boot, maka izinnya oke. Kemungkinan tidak ada hubungannya dengan solusi ini, kemungkinan alasannya adalah bahwa windows tidak akan mulai di lingkungan yang ditiru (kemenangan dapat melihat seolah-olah itu telah dipindahkan ke perangkat keras yang sama sekali baru, sehingga harus rewire banyak driver). Cobalah untuk memulai mesin di beberapa lebih mirip serupa. Atau coba nyalakan beberapa mode debug, atau sejenisnya. Anda dapat mengatasinya sebagai masalah "Windows tidak bisa boot pada perangkat keras baru". Dan coba konfigurasikan di vbox lingkungan hw paling mirip yang mungkin Anda miliki di mesin fisik.
peterh
1
Kegagalan untuk mem-boot disebabkan oleh pembaruan 1703, atau Pembaruan Pembuat sebagaimana Microsoft menyebutnya. Mengembalikan pembaruan ini memperbaiki masalah. VM tidak kompatibel dengan pembaruan ini. Jika Windows diperbarui saat berjalan pada logam, kemudian mengembalikannya memperbaiki boot yang macet di VM.
Kartik
1

Saya berhasil dengan windows 10 sebagai guest dan linux mint sebagai Host.

Pertama, Anda harus membatalkan semua pembaruan windows 10 (untuk berjaga-jaga, mungkin tidak berguna) lalu: Di bawah linux buka konsol dan baris demi baris:

 sudo su

 fdisk -l # looking for EFI et Microsoft basic data for me 1 and 3 of sdb 

 VBoxManage internalcommands createrawvmdk -filename /home/borto/ww10.vmdk -rawdisk /dev/sdb -partitions 1,3 -relative

Tambahkan mesin dalam kotak virtual (selalu dengan "sudo virtualbox" untuk menjadi root) dan aktifkan EFI di tab sistem, dan pilih windows xp 64 daripada windows 10 jika Anda hanya memiliki flag windows 10 beku beautifull beku. Itu semuanya.

bormat
sumber