[Virtualisation] Machine virtuelle ou Machine physique ?

Machine virtuelle ou Machine physique ? [Virtualisation] - Divers - Linux et OS Alternatifs

Marsh Posté le 02-06-2008 à 11:16:34    

Bonjour,
 
Connaissez-vous un moyen de savoir si je travaille sur une machine virtuelle ou sur une machine physique ?
 
Si je travaille sur une machine virtuelle, est-il possible de connaitre l'hyperviseur utilisé ou le produit de virtualisation utilisé ?
 
Merci  :jap:

Reply

Marsh Posté le 02-06-2008 à 11:16:34   

Reply

Marsh Posté le 02-06-2008 à 11:18:30    

Surtout ne décris pas ton environnement, ton accès à la machine, l'OS surlequel tu penses être, notre équipe de voyants extra-lucide nous renseignera :jap:


---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 02-06-2008 à 11:19:15    

surtout que y'a déjà un topic dédié à la virtualisation :o


---------------
Wedge#2487 @HS -#- PW: +∞ -#- Khaz-Modan/Boltiz @WoW
Reply

Marsh Posté le 02-06-2008 à 11:57:45    

Justement toute la problématique est là :)
 
On donne un accès ssh par exemple sur une machine Linux. Et là comment faire pour savoir le type de machine que l'on m'a donnée ?
 
Pour une machine paravirtualisée sous Linux j'ai une idée, mais pour une VM full virtualisée, je ne vois pas comment faire ...

Reply

Marsh Posté le 02-06-2008 à 15:58:36    

Salut,
dans le cas d'un hyperviseur, tu le sais ou peut le savoir, le système virtualisé ayant connaissance qu'il est virtualisé... Dans le cas de vmware,  
tu ne le sauras pas, les machines ignorant qu'elles sont vitualisées... si tu n'y accèdes que par ssh ca risque d'etre difficile ... un coup d'inspection sur le materiel pourrait t'aider mais sans garantie.
++


---------------
www.google.fr  
Reply

Marsh Posté le 02-06-2008 à 16:03:56    

bein: uname -a
 
si tu as xen tu le verras

Reply

Marsh Posté le 02-06-2008 à 16:09:10    

Les uname... ca se customize [:quardelitre]


---------------
Relax. Take a deep breath !
Reply

Marsh Posté le 02-06-2008 à 16:23:57    

Faudrait savoir comment smolt retrouve le modèle de carte mère. Sur http://smolt.fedoraproject.org/static/stats/stats.html , onglet model on voit du VMWare ou du VirtualBox.
 
Maintenant c'est pas fiable à 100%
 

Reply

Marsh Posté le 02-06-2008 à 16:37:33    

o'gure a écrit :

Les uname... ca se customize [:quardelitre]


 
je sais bien, mais c'est quand meme un bon debut, non ?
 

Reply

Marsh Posté le 02-06-2008 à 16:52:07    

Pour le moment effectivement je priviligie la trace des pilotes de matériels utilisés qui sont spécifiques aux environnement virtualisés.
 
Pour le uname, je ne vois pas sachant que uname -a me retourne la meme chose dans un environnement normal ou virtualisé
 
Je ne souhaite pas installer de chose supplémentaire pour obtenir le type de machine ;)
 
N'hésiter pas à proposer si vous connaissez mieux que de regarder le matériel ;)
 

Reply

Marsh Posté le 02-06-2008 à 16:52:07   

Reply

Marsh Posté le 02-06-2008 à 20:09:34    

Avec Vmware Server un "lspci -v" va te retourner pleins de périph avec la chaine "vmware" dedans.
 
Exemple :
 


# lspci -v
00:00.0 Host bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (rev 01)
        Subsystem: VMware Inc virtualHW v3
        Flags: bus master, medium devsel, latency 0
        Memory at e8000000 (32-bit, prefetchable) [size=64M]
        Capabilities: [a0] AGP version 1.0
 
00:01.0 PCI bridge: Intel Corporation 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge (rev 01) (prog-if 00 [Normal decode])
        Flags: bus master, 66MHz, medium devsel, latency 0
        Bus: primary=00, secondary=01, subordinate=01, sec-latency=64
 
00:07.0 ISA bridge: Intel Corporation 82371AB/EB/MB PIIX4 ISA (rev 08)
        Subsystem: VMware Inc virtualHW v3
        Flags: bus master, medium devsel, latency 0
 
00:07.1 IDE interface: Intel Corporation 82371AB/EB/MB PIIX4 IDE (rev 01) (prog-if 8a [Master SecP PriP])
        Subsystem: VMware Inc virtualHW v3
        Flags: bus master, medium devsel, latency 64
        [virtual] Memory at 000001f0 (32-bit, non-prefetchable) [disabled] [size=8]
        [virtual] Memory at 000003f0 (type 3, non-prefetchable) [disabled] [size=1]
        [virtual] Memory at 00000170 (32-bit, non-prefetchable) [disabled] [size=8]
        [virtual] Memory at 00000370 (type 3, non-prefetchable) [disabled] [size=1]
        I/O ports at 1050 [size=16]
 
00:07.3 Bridge: Intel Corporation 82371AB/EB/MB PIIX4 ACPI (rev 08)
        Subsystem: VMware Inc virtualHW v3
        Flags: medium devsel, IRQ 9
 
00:0f.0 VGA compatible controller: VMware Inc [VMware SVGA II] PCI Display Adapter (prog-if 00 [VGA])
        Subsystem: VMware Inc [VMware SVGA II] PCI Display Adapter
        Flags: medium devsel
        I/O ports at 1060 [size=16]
        Memory at f0000000 (32-bit, non-prefetchable) [size=128M]
        Memory at ec000000 (32-bit, non-prefetchable) [size=8M]
        [virtual] Expansion ROM at 50010000 [disabled] [size=32K]
 
00:10.0 SCSI storage controller: LSI Logic / Symbios Logic 53c1030 PCI-X Fusion-MPT Dual Ultra320 SCSI (rev 01)
        Flags: bus master, medium devsel, latency 64, IRQ 16
        I/O ports at 1080 [size=128]
        Memory at ec800000 (32-bit, non-prefetchable) [size=4K]
        [virtual] Expansion ROM at 50018000 [disabled] [size=16K]
 
00:11.0 Ethernet controller: Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE] (rev 10)
        Subsystem: Advanced Micro Devices [AMD] PCnet - Fast 79C971
        Flags: bus master, medium devsel, latency 64, IRQ 17
        I/O ports at 1400 [size=128]
        [virtual] Expansion ROM at 50000000 [disabled] [size=64K]


 
Pour les autres genre virtualbox virtualpc aucune idée mais ça peut se tester rapidement sur sa propre bécane :D


---------------
For a relaxing time, make it suntory time
Reply

Marsh Posté le 02-06-2008 à 20:22:28    

Trailx original a écrit :

Justement toute la problématique est là :)
 
On donne un accès ssh par exemple sur une machine Linux. Et là comment faire pour savoir le type de machine que l'on m'a donnée ?
 
Pour une machine paravirtualisée sous Linux j'ai une idée, mais pour une VM full virtualisée, je ne vois pas comment faire ...


En envoyant un mail au gars qui t'a donné l'accès ? :D  
 
Sinon je vois pas bien l'intérêt de savoir ça :o


---------------
Ce n'est point ma façon de penser qui a fait mon malheur, c'est celle des autres.
Reply

Marsh Posté le 02-06-2008 à 20:29:08    

tu demandes à ton admin :o

 

dmesg sera bavard (pas besoin d'installer lspci)


Message édité par black_lord le 02-06-2008 à 20:29:36

---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
Reply

Marsh Posté le 03-06-2008 à 14:54:41    

Trailx original a écrit :


Connaissez-vous un moyen de savoir si je travaille sur une machine virtuelle ou sur une machine physique ?

 

Pour de la full virtualisation, non, aucun moyen de le savoir. C'est le principe de la virtualisation, ou tu simules le comportement 1:1 de la machine physique sur laquelle ca tourne. Seuls les drivers et les identifiants de ceux-ci pourront t'aider, et encore: ca dépend si les périphs émulés te permettent de le savoir.

 

Pour de la PV, oui: dmesg, vu que le noyau qui tourne dans la VM est conscient de cet environnement. Reste à savoir s'il l'affiche. uname à éviter, c'est non fiable (et ca peut même se changer à la volée sous certains OS).

 
Trailx original a écrit :


Si je travaille sur une machine virtuelle, est-il possible de connaitre l'hyperviseur utilisé ou le produit de virtualisation utilisé ?

 

Pour de la PV oui, via dmesg, ou certaines opérations propres à l'hyperviseur. Exemple pour Xen: si tu veux profiter du support HVM pour des traitements en mémoire rapides _mais_ utiliser les drivers idoines pour communiquer avec le dom0 (ca évite l'overhead pour simuler des périphériques dans le cas d'une full virtualisation), on utilise la commande CPUID de l'x86. On stocke son résultat dans une struct cpuid_t, et on lit la chaine cpu.string. Elle contient le type de CPU.

 

Edit: de mémoire, ca marche aussi pour de la FV avec vmware.


Message édité par Gf4x3443 le 03-06-2008 à 14:55:46
Reply

Marsh Posté le 04-06-2008 à 10:47:33    

Je vous remercie pour vos réponses :)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed