Gerenciador para QEMU, em PHP-CLI

Publicado por Marcus Fazzi 25/11/2005

[ Hits: 5.973 ]

Download Qemu.php




Este script se propõe a facilitar a utilização do QEMU, feito totalmente em PHP-CLI, possui inclusive sistema de ajuda e suporte à criação da imagem para o disco virtual do qemu.

Para instalar(como root):
#chmod +x Qemu.php
#cp Qemu.php /usr/local/bin/

Licença:GPL

  



Esconder código-fonte

#!/usr/bin/php
<?php
//Alguns parametros.
$USER = $_ENV['USER'];
$CMD  = $argv[1];
$IMG  = "/home/$USER/drive.img";

function Msg($texto,$cor=33){
        //fwrite(STDOUT,"\e[$cor;01m * $texto\e[m");
        print(" * $texto\n");

}

//Verica se já existe o arquivo /home/$USER/drive-c
//TODO: Removi pois a função is_file e file_exists não trabalham com arquivos de mais de 512MB
/*clearstatcache();
if (!is_file($IMG) and !eregi('new',$CMD) and !eregi('help',$CMD) and $argc > 1){
   echo "Arquivo de imagem não localizado.\n
   Use:
        # Qemu.php new $IMG 5000000
   Onde 5000000 corresponde ao tamanho do disco virtual.\n";
   exit();
}*/

if (eregi('load',$CMD)){
    Msg("Carregando Sistema...");
    if($argc==2){
        system("qemu -k pt-br -m 256 -boot c $IMG");
    }
    elseif($argc==3){
        system("qemu -k pt-br -m 256 -boot c -cdrom $argv[2] $IMG");
    }
    elseif($argc==4){
        system("qemu -k pt-br -m 256 -cdrom $argv[2] -boot c $argv[3]");
    }
}
elseif(eregi('new',$CMD)){
   if ($argv[3]!=''){
        Msg("Criando disco de " . $argv[3] ." Bytes ...");
        system("rm $argv[2] > /dev/null");
        system("dd of=$argv[2] bs=1024 seek=$argv[3] count=0");
   }
   else {
        echo "Use:\n
        # Qemu.php new $IMG 5000000\n";
   }
}
elseif(eregi('boot',$CMD)) {
   if ($argc==3){
      Msg("Carregando Imagem ou CDROM, para instalção...");
      system("qemu -k pt-br -m 256 -enable-audio -boot d -cdrom $argv[2] -enable-audio $IMG -win2k-hack");
   }
   elseif($argc==4){
      Msg("Carregando Imagem ou CDROM, para instalção...");
      system("qemu -k pt-br -m 256 -enable-audio -boot d -cdrom $argv[3] -enable-audio $argv[2] -win2k-hack");
   }
   else{
        echo "Use:
         # Qemu.php boot /dev/cdrom
        ou
         # Qemu.php boot /caminhoPara/IMGouDEVCD
        ou
         # Qemu.php boot /caminhoPara/IMGouDEVCD /caminho/imagemHDD.img\n";
   }
}
elseif(eregi('help',$CMD) or $CMD==''){
echo "Para Boot Use:
        # Qemu.php boot /dev/cdrom
      ou
        # Qemu.php boot /caminhoPara/imagemCD.iso

Para cria um novo disco:
       # Qemu.php new $IMG 5000000

Para carregar o Sistama já instalado
       # Qemu.php load
     ou
       # Qemu.php load /caminhoPara/IMGouDEVCD
     ou
       # Qemu.php load /caminhoPara/IMGouDEVCD /caminho/imagemHDD.img\n";
}
?>

Scripts recomendados

WebUI: framework para criação de interfaces para Web

Paginação de dados em PDO

Receber atualização de encomendas do correios em seu e-mail

Cron - Classe PHP para cálculo da diferença entre duas datas

Contador de acessos 2004


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts