Como detectar se uma máquina está virtualizada ou não

Como detectar se uma máquina está virtualizada ou não

Tenho máquinas Linux, AIX, SunOs e HP-UX, quero detectar se a máquina é virtual ou não. Até agora eu encontreiEste artigoo que me ajudou a obter essas informações no Linux:

dmesg | grep -i virtual    //On Linux Machines

Mas também preciso de comandos paraAIX,HP-UX&SunOs. Qualquer ajuda?

Responder1

Tentarhttp://people.redhat.com/~rjones/virt-what/. Corrija-me se estiver enganado, mas acho que a Red Hat usa isso em seu Satellite para detectar e agrupar sistemas virtualizados.

Responder2

A definição de “virtual” é muito vaga. Se assumirmos que para AIX você quer dizer qualquer imagem AIX que seja uma LPAR (ou uma micropartição, ou qualquer outra terminologia escolhida pela IBM), então você poderá usar uname -L, por exemplo,

nonlpar# umame -L
-1 NULL

lparhost# uname -L
5 lparhost

Se você quer dizer WPAR, você pode usar uname -We um resultado 0 significa que você não está em um WPAR, um resultado maior que 0 é um WPAR.

Se você quer dizer, a instância do AIX depende de um servidor VIO, então não há nenhum mecanismo sólido e confiável para saber isso além de observar os dispositivos e descobrir se eles são apresentados por meio de servidores VIO.

Vale lembrar que para hardware pSeries executando AIX, quase tudo hoje em dia é uma LPAR e, portanto, essencialmente virtual, mesmo que seja a única instância do sistema operacional que usa o hardware.

Responder3

No HP-UX existem diferentes níveis de virtualização e diferentes comandos para saber se o seu sistema está virtualizado.

  1. Convidado de máquina virtual de integridade

    Se você executar o seguinte comando em um IVM Guest você obterá:

     # hpvminfo 
     hpvminfo: Running inside an HPVM guest.
    

    Se você executar o seguinte comando em um NO "IVM Guest" você obterá:

     # hpvminfo 
     hpvminfo: Running inside an HPVM host.
    

    ou # hpvminfo sh: hpvminfo: não encontrado.

  2. Partição Virtual HP

    Se você executar o seguinte comando em um vpar, obterá:

     # hpvminfo 
     hpvminfo: Running inside an HPVM guest.
     # vparstatus -w
     The current virtual partition is <VPAR NAME>.
    

    Se você executar o seguinte comando em um NO vpar, obterá:

     # vparstatus 
     sh: vparstatus:  not found.
    

Responder4

Para uma máquina virtual x86, basta executar um programa que invoqueos mecanismos oficiais para detecção de máquinas virtuais x86. Eu daria exemplos, mas não conheço nenhum de cabeça. Eu uso minhas próprias ferramentas. Thomas Liskeimvirtmostra-se promissor de acordo com seu documento, mas não o usei nem vi o código-fonte.

Se isso também se aplica às suas máquinas SunOS depende se é x86 Solaris ouverdadeiramenteSunOS. ☺ Detectar a existência de uma máquina virtual envolve coisas específicas da arquitetura do conjunto de instruções do processador, não do sistema operacional. Então, "eu tenho máquinas AIX e HP/UX". é menos útil do que, digamos, "Tenho máquinas PowerPC e Itanium".

informação relacionada