2017-12-19 6 views
0

次のコードを使用してkvm上に仮想マシンを作成しています... それは完璧に動作しますが....私のHTMLページはロード時にスタックしています1または2秒後に実行されている仮想マシン... を作成するためのコマンドは、このコマンドのジョブは が、私は、次のページ に行きたい...行われているが、まだHTMLページがpython cgiを使用して読み込み中にlinuxコマンドを実行する

#!/usr/bin/python 

import cgi 
import commands 

print "Content-type:text/html" 
print "" 

cmd = "sudo virt-install --cdrom /iso/win7.iso --ram 1024 --vcpu 1 --disk 30 --name wind7 --graphics vnc,listen=127.0.0.1,port=5912,password=123" 

output=commands.getoutput(cmd) 
print "<meta http-equiv='refresh' content='0;url=http://127.0.0.1/abc.html'>" 
助けてください をロードしています

答えて

0

sudo virt-installが終了するのを待つことなく、Pythonが次の行を処理できるように、バックグラウンドでコマンドを開始する必要があると思います。これが動作しない場合は、P_NOWAIT代わりのP_DETACHを試してみてください

import os 
os.spawnl(os.P_DETACH, 'cmd') 

:代わりにcommands

は、モジュールosを使用しています。

注:ブラウザがHTMLページを開こうとする前に、マウントに十分な時間があるように、リダイレクトを数秒間遅らせる必要があります。

+0

このメソッドは機能していません.... –

+0

単純なコマンドでも実行されません –

+0

ええ、おそらく、引数を 'spawnl'に適切に渡す方法を見つける必要があります:https://docs.python.org/ 2/library/os.html#os.spawnl – Pavel

関連する問題