[one-users] Cannot connect to VM

Gian Uberto Lauri saint at eng.it
Wed Dec 15 02:19:06 PST 2010


[My apologies for breaking the threading informations]

CH> What I understand is that the init.sh script provided in
CH> http://dev.opennebula.org/attachments/download/170/ttylinux.tar.gz
CH> is just useful in context based VM and is not used in my case.
CH> Where can I look to the VM configuration file once it is started?
CH> Is iy exploded somewhere so I can have a look to files?

The content of the script that's run on the first boot of the VM after
sourcing the file in the iso image:

----------------------------------8<---------------------------
#!/bin/bash
#
# chkconfig: 2345 10 90
# description:  network reconfigure
#
# -------------------------------------------------------------------------- #
# Copyright 2002-2009, Distributed Systems Architecture Group, Universidad   #
# Complutense de Madrid (dsa-research.org)                                   #
#                                                                            #
# Licensed under the Apache License, Version 2.0 (the "License"); you may    #
# not use this file except in compliance with the License. You may obtain    #
# a copy of the License at                                                   #
#                                                                            #
# http://www.apache.org/licenses/LICENSE-2.0                                 #
#                                                                            #
# Unless required by applicable law or agreed to in writing, software        #
# distributed under the License is distributed on an "AS IS" BASIS,          #
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   #
# See the License for the specific language governing permissions and        #
# limitations under the License.                                             #
#--------------------------------------------------------------------------- #

# Gets IP address from a given MAC
mac2ip() {
     mac=$1

     let ip_a=0x`echo $mac | cut -d: -f 3`
     let ip_b=0x`echo $mac | cut -d: -f 4`
     let ip_c=0x`echo $mac | cut -d: -f 5`
     let ip_d=0x`echo $mac | cut -d: -f 6`

     ip="$ip_a.$ip_b.$ip_c.$ip_d"

     echo $ip
}

# Gets the network part of an IP
get_network() {
     IP=$1

     echo $IP | cut -d'.' -f1,2,3
}

get_interfaces() {
     IFCMD="/sbin/ifconfig -a"

     $IFCMD | grep ^eth | sed 's/ *Link encap:Ethernet.*HWaddr /-/g'
}

get_dev() {
     echo $1 | cut -d'-' -f 1
}

get_mac() {
     echo $1 | cut -d'-' -f 2
}

gen_hosts() {
     NETWORK=$1
     echo "127.0.0.1 localhost"
     for n in `seq -w 01 99`; do
         n2=`echo $n | sed 's/^0*//'`
         echo ${NETWORK}.$n2 cluster${n}
     done
}

gen_exports() {
     NETWORK=$1
     echo "/images ${NETWORK}.0/255.255.255.0(rw,async,no_subtree_check)"
}

gen_hostname() {
     MAC=$1
     NUM=`mac2ip $MAC | cut -d'.' -f4`
     NUM2=`echo 000000$NUM | sed 's/.*\(..\)/\1/'`
     echo cluster$NUM2
}

gen_interface() {
  DEV_MAC=$1
  DEV=`get_dev $DEV_MAC`
  MAC=`get_mac $DEV_MAC`
  IP=`mac2ip $MAC`

# dumping the values into the reddattish file
cat <<EOT
  DEVICE=$DEV
  BOOTPROTO=none
  HWADDR=$MAC
  ONBOOT=yes
  TYPE=Ethernet
  NETMASK=255.255.255.0
  IPADDR=$IP
EOT

     if [ $DEV == "eth0" ]; then
       echo " GATEWAY=$NETWORK.1"
     fi

echo ""
}


IFACES=`get_interfaces`

for i in $IFACES; do
     MASTER_DEV_MAC=$i
     DEV=`get_dev $i`
     MAC=`get_mac $i`
     IP=`mac2ip $MAC`
     NETWORK=`get_network $IP`
done

# gen_hosts $NETWORK > /etc/hosts

# gen_exports $NETWORK  > /etc/exports

# gen_hostname $MAC  > /etc/hostname
(
cat <<EOT

EOT

for i in $IFACES; do
     gen_interface $i
done
) > /etc/sysconfig/network-scripts/ifcfg-${DEV}

#ifdown $DEV
#ifup $DEV

exit $RETVAL
# /bin/hostname `cat /etc/hostname`
----------------------------------8<---------------------------

I have to investigate other means of accessing the VM console, since we plan
to use OpenNebula to offer Windows virtualization and this script does  
not cope
with Windows bootstrap process AFAIK.

--
ing. Gian Uberto Lauri
Ricercatore / Reasearcher
Divisione Ricerca ed Innovazione / Research & Innovation Division
GianUberto.Lauri at eng.it

Engineering Ingegneria Informatica spa
Corso Stati Uniti 23/C, 35127 Padova (PD)

Tel. +39-049.8283.538         | main(){printf(&unix["\021%six\012\0"],
Fax  +39-049.8283.569		  |    (unix)["have"]+"fun"-0x60);}
Skype: gian.uberto.lauri	  |          David Korn, AT&T Bell Labs
http://www.eng.it 			  |          ioccc best One Liner, 1987





More information about the Users mailing list