source: drbl-virt/sbin/drbl_PXE_PV-VM_create_all

Last change on this file was 208, checked in by rock, 14 years ago

Modify: 精簡化
Add: 一次產生全部DRBL Clinet VM 設定檔(drbl_PXE_PV-VM_create_all)

  • Property svn:executable set to *
File size: 2.3 KB
Line 
1#!/bin/bash
2# Program:
3#   Create PXE PV VM
4# Author:
5#   Jazz, Rock {jazz, rock}@nchc.org.tw
6# Version:
7#    1.0
8# History:                                                                                         
9#   2010/08/27  Rock    First release (1.0)
10
11# [Source]
12source /opt/drbl-virt/conf/drbl-virt.conf
13source $Work_Path/functions_drbl_virt
14#source ./functions_drbl_PXE_PV-VM_create
15
16
17# [Declation]
18# = 1. Varibales declation =
19vm_name=""
20vm_cpu="1"
21vm_ram="128"
22#vm_host=""
23vm_mac=""
24
25vm_dir="/home/domains"
26# = 2. Functions declation =
27Usage(){
28echo "Usage: drbl_PXE_PV-VM_create_all [options]"
29echo "Options: "
30echo "-c|--cpu     cpu number (default: 1)"
31echo "-r|--ram     ram size(M) (default: 128)"
32echo "Examples: "
33echo "drbl_PXE_PV-VM_create_all -c 2 -r 512"
34}
35
36
37# [Main]
38check_root
39# = 1. Parse parameters =
40if [ $# -eq 0 ]; then
41Usage && exit
42fi
43
44while [ $# -gt 0 ]; do
45    case "$1" in
46        -c|--cpu)
47            shift
48            if [ -z "$(echo $1 |grep ^-.)" ]; then
49                if [ -n "$(echo $1)" ]; then 
50                    vm_cpu=$1
51                fi
52            shift
53            fi
54            ;;
55        -r|--ram)
56            shift 
57            if [ -z "$(echo $1 |grep ^-.)" ]; then
58                if [ -n "$(echo $1)" ]; then
59                    vm_ram=$1
60                fi
61            shift 
62            fi 
63            ;; 
64#        -h|--host)
65#            shift
66#            if [ -z "$(echo $1 |grep ^-.)" ]; then
67#                if [ -n "$(echo $1)" ]; then
68#                vm_host=$1
69#                else
70#                    echo "-h host_value is null"
71#                    Usage && exit 2
72#                fi
73#            shift
74#            fi
75#            ;;
76        -*)
77            echo "$0 $1 invalid option" >&2
78            echo ""
79            Usage >&2
80            exit 2
81            ;;
82        *)  Usage >&2
83            exit 2
84            ;;
85    esac
86done
87
88
89# = 2. Create all VM configuration =
90IP_VM_files=$(ls $Work_Home/etc/IP_VM_eth[0-9])
91
92# create directory to store vm config file
93if [ ! -e $vm_dir ]; then
94    mkdir $vm_dir
95fi
96
97for IP_VM_file in $IP_VM_files
98do
99VM_nu=$(wc -l $IP_VM_file |awk '{print $1}')
100
101    for (( i=1 ; i<=$VM_nu ; i++ ))
102    do
103        VM_name=$(sed -n "${i}p" $IP_VM_file | awk '{print $2}')
104        $Work_Path/drbl_PXE_PV-VM_create -v $VM_name -c $vm_cpu -r $vm_ram
105    done
106
107done
108
Note: See TracBrowser for help on using the repository browser.