[Planetlab-devel] bootcd_v3 for wireless/mesh myplc

Marc E. Fiuczynski mef at CS.Princeton.EDU
Tue Nov 7 16:38:01 EST 2006


Hello Winson,

Thanks for sending this info to the list. I've renamed the subject line to
include the fact that you are working on WiFi/mesh related things.  The goal
here is to get more folks in the devel community involved, especially those
who are interested in bringing up nodes with WiFi cards.

> ADD NODE
> 1.	On the PLC website, add a new node and generate a configuration
> file for it. Make sure the IP address and other network configurations
> are correct.

Stays the same.

> 2.	Put the configuration file under
> /planetlab/bootcd_v3/configurations/<PLC name> and add the file name to
> the last line of file configuration

Run /plc/root/usr/share/bootcd/build.sh with -f plnode.txt (the node's
configuration file) to generate a bootcd image that has the config file
built in.  On most of our newer nodes we boot from USB devices, and it is
easier (at least for me) to just mount the usb image, add the config file,
umount it, and then dd the usb image to the USB flash key.  However, if your
nodes do not support booting from USB devices, then I suppose you'll have to
burn CDs with the config file on them.

> 3.	. /planetlab/bootcd_v3/build.sh clean <PLC name> to clean the
> old boot CD image
> 4.	. /planetlab/bootcd_v3/build.sh build <PLC name> to generate new
> boot CD image.

The new boot cd image can be built by executing on the box running myplc
with:

# service plc start bootcd

> 5.	If cdrecord is not installed (rpm -qi cdrecord), install it by
> yum -y install cdrecord
> 6.	Burn boot CD by ./planetlab/bootcd_v3/build.sh burn <PLC name>
> 7.	For the new node, configure it to boot from CD first. Boot the
> new node from the above burned boot CD. Answer 'yes' when prompted.

Steps 5-7 do not change assuming you are using a CD to boot vs. a USB key.

You mentioned that you did not need a customized kernel / bootmanager yet.
Let me know when you do and I can tell you the recipe and/or give you a
script that will do the right thing for the kernel.  For the bootmanager,
you just have to copy the updated code to the right spot in
/plc/root/usr/share/bootmanager and then run

# service plc start bootmanager

and it will rebuild + sign the bootmanager.


> 6.	We have enabled root login without password so that we can
> directly login to the new node after booting to the new kernel.

This is probably a bad idea.

> 7.	During rebooting, the network connection to PLC is needed first
> when PlantLabConf is called. It is also required by ntpd,
> vserver-reference, and netflow. So we need to bring up the wireless
> connection before that. The script wirelessdriver will be called to
> bring up mesh networking. It is noted that the driver modules are loaded
> twice before it works. The booting process of standard Fedora Core linux
> is as follows.

It would be great to learn what you have here and whether it will work with
hardware to which corresponding software is publically available.

Best regards,
Marc





More information about the Devel mailing list