#1 Le 07/07/2018, à 12:55
- vincebel
Utilisation d'une installation Phyisque dans VirtualBox
Bonjour à tous,
ce que je cherche à faire n'est pas nouveau, il existe de nombreux post sur le sujet, mais je ne trouve pas la solution à mon problème.
Pour mon PC du boulot, j'ai besoin d'une VM pour faire tourner des logiciels spécifiques (malheureusement). La plupart du temps, je tourne dans une VM, mais un des logiciels en lent, très lent dans une VM (des soucis de DirectX il semblerait), donc j'aimerai pouvoir faire tourner un dual boot, avec la possibilité de faire tourner mon boot Windows depuis VirtualBox sous l'hôte Linux.
Des collègues font ça sous Mac, avec Parallels et bootCamp, c'est pas mal du tout.
Bref, j'ai reçu une machine neuve, sous Windows 10. J'ai installé ubuntu 18.04 avec VirtualBox.
Mon compte utilisateur appartient aux groupes disk et vboxusers.
Mon installation Windows est sur la partition 3 de mon disque NVME.
Périphérique Début Fin Secteurs Taille Type
/dev/nvme0n1p1 2048 534527 532480 260M Système EFI
/dev/nvme0n1p2 534528 567295 32768 16M Réservé Microsoft
/dev/nvme0n1p3 567296 94420991 93853696 44,8G Données de base Microsoft
/dev/nvme0n1p4 248020992 250068991 2048000 1000M Environnement de récupératio
/dev/nvme0n1p5 94420992 248020991 153600000 73,2G Système de fichiers Linux
J'ai créé un disque vmdk pour cette partition 3
~$ VBoxManage internalcommands createrawvmdk -filename windows10.vmdk -rawdisk /dev/nvme0n1 -partitions 3
Puis j'ai créé une machine en associant ce disque dans Storage.
Au démarrage de la VM, j'obtiens le message suivant sur un écran noir:
FATAL :no bootable medium found! System halted
Certains tuto indiquent qu'il faut également prendre la partition du boot, j''ai donc refait un vmdk avec les paritions 1 (boot), 3 (windows) et 4 (recovery), et une nouvelle VM avec ce disque.
Même message d'erreur.
ça vous parle? vous savez ce que je rate?
Merci à vous.
Vincent
EDIT: j'ai essayé de suivre les tuto suivants :
https://www.serverwatch.com/server-tuto … ox-vm.html
https://forum.ubuntu-fr.org/viewtopic.php?id=365646
http://www.rapazp.ch/?p=843
EDIT2 : Une piste ici : https://forums.virtualbox.org/viewtopic.php?f=2&t=77237
Dernière modification par vincebel (Le 07/07/2018, à 13:34)
Hors ligne
#2 Le 07/07/2018, à 14:05
- GammaDraconis
Re : Utilisation d'une installation Phyisque dans VirtualBox
Non non tu fais une confusion en terme de virtualisation.
D'abord sache que quoi que tu penses, NON tu ne peux pas avoir les performances équivalente à ta machine physique avec Virtualbox ou même Parallels sous Mac !
En effet, il existe 2 types de virtualisation avec des hyperviseurs de niveau 1 ou 2.
- Avec un hyperviseur de niveau 1 (par exemple avec des systèmes comme Xen, ESXi, Hyper-V, Kvm...) : ce sont les plus performants car ils fonctionnent directement en couche basse, en entreprise les serveurs de virtualisation utilisent des HV lvl1.
- Avec un hyperviseur de niveau 2 (par exemple : Parallels Desktop d'Apple, Virtualbox d'Oracle, VmWare workstation, Qemu...) s'execute en couche haute (OS de base en +) donc moins performant (mais a d'autres avantages par rapport au niveau 1).
Par conséquent, tu ne peux pas avoir de très bonne performance en virtualisation avec du niveau 2 comme Virtualbox ou Parallels Desktop.
voir : https://fr.wikipedia.org/wiki/Hyperviseur
autre article à lire : https://fr.wikipedia.org/wiki/Virtualisation
A noté que tu as aussi en plus de ça les "isolateurs", plus connus sous le nom de "conteneur", au cas ou tu ne saurais pas en quoi consiste la conteneurisation (ex : LXC ou Docker) : https://www.lemagit.fr/conseil/Quelle-e … ualisation
Discussion sur mon script de post-install pour Ubuntu 20.04LTS : https://forum.ubuntu-fr.org/viewtopic.php?id=2026344
Lien direct script : https://github.com/simbd/Ubuntu_20.04LTS_PostInstall
Démo vidéo (peertube) : https://video.ploud.fr/videos/watch/fb7 … 0d252ed2db
Hors ligne
#3 Le 07/07/2018, à 14:12
- vincebel
Re : Utilisation d'une installation Phyisque dans VirtualBox
Bonjour et merci pour ta réponse.
Je ne suis pas une star en virtualisation, mais non, je ne fais pas de confusion. Je suis bien au courant que les QEMU, Vbox, VMware sont des hyperviseur de type 2.
Je n'attends pas les mêmes perf en dual boot que dans une VM.
J'ai peut être mal expliqué ce que je veux faire. Je veux me contenter de la VM pour de petites taches et lorsque des perfs sont nécessaires, basculer sur le dual boot pour des tâches plus longues.
Hors ligne
#4 Le 07/07/2018, à 14:56
- vincebel
Re : Utilisation d'une installation Phyisque dans VirtualBox
Bon, à priori, mon soucis vient du fait que ma table de partition utilise GPT et que VBoxManage gère bien MBR, mais pas GPT (source).
D'après ce site, vmdk-raw-parts devrait me régler tout ça, mais je dois mal l'utiliser.
J'ai cloné le repo, installé python (2.7).
vmdk-raw-parts$ ./vmdk-raw-parts -b 1 /dev/nvme0n1 ~/Documents/ 1 3 4
Traceback (most recent call last):
File "./vmdk-raw-parts", line 362, in <module>
vmdk = PartitionedVMDK(disk, options)
File "./vmdk-raw-parts", line 206, in __init__
self.diskparts = Partitioning(self.diskpath, options)
File "./vmdk-raw-parts", line 187, in __init__
if options.mbr or not self.gpt_read(disk):
File "./vmdk-raw-parts", line 171, in gpt_read
self.gpt_entries[i * psize : (i + 1) * psize])
File "./vmdk-raw-parts", line 41, in __init__
self.name = name.decode('utf_16_le').split("\0")[0]
File "/usr/lib/python2.7/encodings/utf_16_le.py", line 16, in decode
return codecs.utf_16_le_decode(input, errors, True)
UnicodeDecodeError: 'utf16' codec can't decode bytes in position 68-69: illegal UTF-16 surrogate
avec cette ligne de commande, je souhaite extraire les partitions 1 3 et 4, du disque nvme0n1, dans le répertoire ~/Documents, et avec la paritition 1 bootable.
Quelques petits soucis de python et d'encodage.
EDIT : la même ligne de commande fonctionne sur un autre PC.... il me manque quelque chose sur cette installation d'ubuntu. Flûte!
Dernière modification par vincebel (Le 07/07/2018, à 15:35)
Hors ligne
#5 Le 07/07/2018, à 15:59
- GammaDraconis
Re : Utilisation d'une installation Phyisque dans VirtualBox
Je vois pas l'intérêt de ce que tu essayes de faire.
Tu créer ta VM en installant ton Windows sur ton disque dur virtuel dans virtualbox, sous Parallels Desktop c'est pareil.
Si c'est utiliser le disque dur physique dans Virtualbox, ça n'apportera aucun avantage pour ta situation ! tu règleras absolument pas ton problème de DirectX.
(et au passage, Python 2.7 est une vieille version)
Dernière modification par GammaDraconis (Le 07/07/2018, à 16:04)
Discussion sur mon script de post-install pour Ubuntu 20.04LTS : https://forum.ubuntu-fr.org/viewtopic.php?id=2026344
Lien direct script : https://github.com/simbd/Ubuntu_20.04LTS_PostInstall
Démo vidéo (peertube) : https://video.ploud.fr/videos/watch/fb7 … 0d252ed2db
Hors ligne
#6 Le 07/07/2018, à 16:35
- vincebel
Re : Utilisation d'une installation Phyisque dans VirtualBox
C'est pas vraiment grave si tu ne vois pas l'intérêt. Moi je le vois c'est l'essentiel non? A pire je me trompe, et je serai déçu à la fin?
Ne voudrais-tu pas m'aider au lieu de juste critiquer?
oui, je sais que Python 2.7 est très vieux. Sur tous mes postes de travail, j'ai toujours à la fois python 2.7 et Python3 (3.6 actuellement), car de nombreux développement sont toujours actuellement en 2.7, c'est d'ailleurs l'un des grands problèmes de python à mon sens.
Que je le lance en pyhton 2.7 ou en python 3, c'est un échec.
~/Documents/git/vmdk-raw-parts$ python ./vmdk-raw-parts -b 1 /dev/nvme0n1 ~/Documents/ 1 3 4
Traceback (most recent call last):
File "./vmdk-raw-parts", line 362, in <module>
vmdk = PartitionedVMDK(disk, options)
File "./vmdk-raw-parts", line 206, in __init__
self.diskparts = Partitioning(self.diskpath, options)
File "./vmdk-raw-parts", line 187, in __init__
if options.mbr or not self.gpt_read(disk):
File "./vmdk-raw-parts", line 171, in gpt_read
self.gpt_entries[i * psize : (i + 1) * psize])
File "./vmdk-raw-parts", line 41, in __init__
self.name = name.decode('utf_16_le').split("\0")[0]
File "/usr/lib/python2.7/encodings/utf_16_le.py", line 16, in decode
return codecs.utf_16_le_decode(input, errors, True)
UnicodeDecodeError: 'utf16' codec can't decode bytes in position 68-69: illegal UTF-16 surrogate
~/Documents/git/vmdk-raw-parts$ python3 ./vmdk-raw-parts -b 1 /dev/nvme0n1 ~/Documents/ 1 3 4
File "./vmdk-raw-parts", line 79
print p
^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print(p)?
EDIT : mise en forme
EDIT : et sous mon autre poste de travail, en ubuntu 18.04 également, en utilisant python 2.7, ça fonctionne bien.
Dernière modification par vincebel (Le 07/07/2018, à 16:37)
Hors ligne
#7 Le 08/07/2018, à 18:56
- vincebel
Re : Utilisation d'une installation Phyisque dans VirtualBox
Bon, personne n'a une idée sur comment créer une image disque bootable depuis une partition réelle?
Hors ligne