X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=virt-what.pod;h=4304297d4f813746b3634ae5a3eb877d19150dc9;hb=f9bf43287a6278ad43f3d5a3931e57f8826692af;hp=0cfb753ed11bab46611cf93d6d99129c99687864;hpb=b8957a6bd16be4c6c2c2893d621ed84bf21d0f72;p=virt-what.git diff --git a/virt-what.pod b/virt-what.pod index 0cfb753..4304297 100644 --- a/virt-what.pod +++ b/virt-what.pod @@ -1,3 +1,5 @@ +=encoding utf8 + =head1 NAME virt-what - detect if we are running in a virtual machine @@ -23,6 +25,58 @@ don't know about or cannot detect. =over 4 +=item B + +This is Microsoft Hyper-V hypervisor. + +Status: confirmed by RWMJ + +=item B + +This is an IBM SystemZ (or other S/390) hardware partitioning system. +Additional facts listed below may also be printed. + +=item B + +This is Linux running directly on a IBM SystemZ hardware partitioning +system. + +This is expected to be a highly unusual configuration - if +you see this result you should treat it with suspicion. + +Status: not confirmed + +=item B + +This is Linux running directly on an LPAR on an IBM SystemZ +hardware partitioning system. + +Status: not confirmed + +=item B + +This is a z/VM guest running in an LPAR on an IBM SystemZ +hardware partitioning system. + +Status: confirmed by RWMJ using a Fedora guest running in z/VM + +=item B + +This process is running in a Linux VServer container. + +Status: contributed by Barış Metin + +=item B + +This guest is running on the KVM hypervisor using hardware +acceleration. + +Note that if the hypervisor is using software acceleration +you should I see this, but should see the C fact +instead. + +Status: confirmed by RWMJ. + =item B The guest appears to be running inside an OpenVZ or Virtuozzo @@ -30,18 +84,48 @@ container. Status: contributed by Evgeniy Sokolov -=item B +=item B -This is KVM. +The guest is running inside Parallels Virtual Platform +(Parallels Desktop, Parallels Server). -Status: confirmed by RWMJ. +Status: contributed by Justin Clift + +=item B + +The guest is running inside IBM PowerVM Lx86 Linux/x86 emulator. + +Status: data originally supplied by Jeffrey Scheel, confimed by +Yufang Zhang and RWMJ =item B -This is QEMU. +This is QEMU hypervisor using software emulation. + +Note that for KVM (hardware accelerated) guests you should I see +this. Status: confirmed by RWMJ. +=item B + +This is a User-Mode Linux (UML) guest. + +Status: contributed by Laurent Léonard + +=item B + +This is Hitachi Virtualization Manager (HVM) Virtage +hardware partitioning system. + +Status: data supplied by Bhavna Sarathy, not confirmed + +=item B + +This is a VirtualBox guest. + +Status: contributed by Laurent Léonard + =item B The guest appears to be running on Microsoft VirtualPC. @@ -50,13 +134,13 @@ Status: not confirmed =item B -The guest appears to be running on VMware. +The guest appears to be running on VMware hypervisor. -Status: not confirmed +Status: confirmed by RWMJ =item B -The guest appears to be running on Xen. +The guest appears to be running on Xen hypervisor. Status: confirmed by RWMJ @@ -80,6 +164,40 @@ Status: confirmed by RWMJ =back +=head1 EXIT STATUS + +Programs that use or wrap C should check that the exit +status is 0 before they attempt to parse the output of the command. + +A non-zero exit status indicates some error, for example, an +unrecognized command line argument. If the exit status is non-zero +then the output "facts" (if any were printed) cannot be guaranteed and +should be ignored. + +The exit status does I have anything to do with whether the +program is running on baremetal or under virtualization, nor with +whether C managed detection "correctly" (which is basically +unknowable given the large variety of virtualization systems out there +and that some systems deliberately emulate others). + +=head1 RUNNING VIRT-WHAT FROM OTHER PROGRAMS + +C is designed so that you can easily run it from +other programs or wrap it up in a library. + +Your program should check the exit status (see the section above). + +Some programming languages (notably Python: issue 1652) erroneously +mask the C signal and do not restore it when executing +subprocesses. C is a shell script and some shell commands +do not work correctly when you do this. You may see warnings from +C similar to this: + + echo: write error: Broken pipe + +The solution is to set the C signal handler back to C +before running C. + =head1 IMPORTANT NOTE Most of the time, using this program is the I thing to do. @@ -106,8 +224,7 @@ You might include this information in status and monitoring programs. =head1 SEE ALSO -L, -L, +L, L, L, L, @@ -121,8 +238,8 @@ Richard W.M. Jones =head1 COPYRIGHT -(C) Copyright 2008 Red Hat Inc., -L +(C) Copyright 2008-2011 Red Hat Inc., +L This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -162,7 +279,7 @@ Run and keep I. It may contain error messages which you should submit with your bug report. -=item 3. Get version of virt-what and version of libvirt. +=item 3. Get version of virt-what. Run @@ -174,7 +291,7 @@ Go to L and enter a new bug. Please describe the problem in as much detail as possible. Remember to include the version numbers (step 3) and the debug -messages file (step 2). +messages file (step 2) and as much other detail as possible. =item 5. Assign the bug to rjones @ redhat.com