KVM创建虚拟机后指定启动脚本



KVM创建虚拟机后指定启动脚本
 
在vmbuilder命令中创建vm时,可以通过参数虚拟机第一次启动的时候执行的脚本文件。但是由于这个时候虚拟机网络可能还不通,必须要延迟一会儿,才能保证一些apt-get install命令能够顺利执行。  www.2cto.com  
 
下面的脚本是我常用的,贡献出来:
 
boot.sh文件内容:
 
[plain] 
# Set time zone                                                                                                                                                       
cp /usr/share/zoneinfo/Asia/Harbin /etc/localtime  
  
# Set proxy server                                                                                                                             
echo 'Acquire::http::Proxy "http://10.112.18.178:3142";' >> /etc/apt/apt.conf  
  
while (! ping -c 1 www.baidu.com); do sleep 1; done  
echo 'apt-get install acpid' >> /opt/x  
apt-get install acpid  
 
第一行设置时区
第二行设置代理
 
第三行等待ping通www.baidu.com
 
后面安装acpid
 
vmbuilder的参数添加:
 
[plain] 
--firstboot=/var/lib/libvirt/images/$1/boot.sh   
 
我原来测试脚本是bash,但是不能在boot.sh中执行,奇怪,不过先放在这里,以后还有用。
 
[plain] 
# Test Internet connection is ok or not  
# If failed 10 times, exit  
# Return immediately if network is ok  
i=0  
count=10  
while [ $i -lt $count ]  
do  
    echo "testing"  
    let i++  
    ping -c2 www.baidu.com > /dev/null  
    r=$?  
    echo $r  
    if [ $r -ne 0 ]  
    then  
    echo 'network is down'  
    sleep 10  
    else  
    echo 'network is up'  
    let i=count+1  
    fi  
done  
 

相关内容

    暂无相关文章