On Tuesday 07 July 2009 19:39:08 Juan Jose Pablos wrote:
> Pierre Bourgin escribió:
> > IMHO, it should be sufficient to define and describe precisely what is
> > the "official" or reference platform for building Unattended: linux
> > distribution flavor, exact versions of gcc and glibc of the host system,
> > etc.
> Debian 5.0 (Lenny). I was happy with previous version, but because
> other people was worry about the glibc version, I updated as soon was
> released as stable.
> > Then we should provide this reference host build environment as an image
> > of a virtual host, aka Virtual Appliance.
> I do not have any problem to get a fully virtual machine using
> VirtualBox so others can use it.
It's pretty easy to create a couple of scripts to help build the virtual
machine from scratch. When I was writing the quickstart guide to paella, I
decided to use virtualbox to create the paella server.
What I did was to write a script that will download and remaster the debian
netinst iso. The script will download the iso from a debian mirror, mount it
via -o loop, and copy the contents to a new directory. Then the script would
use svn export to grab the extra files that will go into the new iso (preseed
files and scripts to configure the machine) and place them in the new
directory. After that the script would use genisoimage to create the new
iso, which would be used to boot the VM and automatically install the new
The quickstart guide gives instructions on how to use virtualbox to create the
new machine and attach the remastered iso to it. Here, we could use
vboxmanage(or VBoxManage, we'd have to set an variable at the top of the
file) to create the VM and the .vdi, attach the .vdi to the VM, attach the
iso to the VM and boot the VM. The preseed on the iso should take over after
that and install the system for you.
$vboxmanage createvm -name $vmname -register
$vboxmanage createhd -filename $harddisks/$vmname.vdi -size $hdsize -register
$vboxmanage modifyvm $vmname -hda $harddisks/$vmname.vdi
$vboxmanage openmedium dvd $isoimage
$vboxmanage modifyvm $vmname -dvd $isoimage
if [ $bootvm == "yes"]; then
$vboxmanage startvm $vmname
This is just a rough example. It doesn't handle errors very well.
It may also be interesting to note that a method similar to this could be used
to bootstrap a testing environment. It's relatively easy to install the
packages and configure the machine to be an unattended server, so that
virtualbox could be used as a testing environment for unattended.
Here's a short outline:
remaster netinst iso
run a script similar to example above to create VM
add a second nic to that vm for internal networking
boot vm and watch it install
vm should reboot automatically, then run the scripts to set up the services
(bind, dhcp, samba, nfs, tftpd, etc.)
vm will then run the create-live-image script, which will use live helper to
create the installer image (net boot by default) and install the tftpboot and
image files to their appropriate location.
On my system, I use rsyncd to host the windows iso files, but we could use
the "shared folders" feature of virtualbox for this.
get those win iso's and mount -o loop, copy the i386/ directories.
run the update script to get the packages/updates
create a client vm w/ harddisk and attach it's nic to internal network
boot client vm via pxe and it will run live image and start installing windows
my remaster iso script is here:
the files that I export to the netinst are here:
While this is specific to getting paella up and running, it wouldn't be too
difficult to use this method to get unattended bootstrapped as well.
If you're interested, and you have a couple of hours to spend, you may want to
read/follow the paella quickstart guide to see how the whole process works.
Setting up an unattended server would be a little bit easier, as you don't
need to generate a gpg key, or make a partial debian mirror, but seeing how
I've done things may be helpful.
The advantage of this method is that it keeps you from having to host
large .vdi files (or maybe .ovf files). And even if you were to host those
files, it provides a way to generate them pretty easily.
If y'all are interested in this method, I would be happy to help implement it.
I already have most of the difficult parts taken care of. Using this method
for unattended would only take a few (mostly) minor modifications, and I'm
very familiar with where those modifications need to happen. This is all
second nature to me, as I've been working on this for a while. In my use of
unattended, I have been just as concerned with being able to automatically
install and configure the unattended server, as well as being able to use
that server to automatically install the windows machines.
Most of my clients are small businesses with 3-10 machines on their network.
So for me, I need to be able to easily create a server for each client that
will run unattended. This is different than just managing a single network
of machines, which is why I've spent so much time with making sure that I
could easily create an unattended server complete with a pxe installer.
> > I bet on Debian (even if I don't know it).
> same here, I do not have any technical reason, just mainly because
> stable releases, and the fact that i have been using for years.
I've been using debian since potato and haven't looked back. I think that
debian provides a good base for making a custom system (or distribution).
While stable may get old quickly with respect to the new hardware that comes
out, the method of making new kernel packages, and backporting some of the
newer software that may be required, is fairly easy and straightforward. The
way I like to look at it is not as much "does debian provide what we need?"
as "does debian provide an easy way to _make_ what we need?". I think that
this way of looking at things is important when it becomes apparent that no
single distro will ever "fit the bill" entirely.
>--- Enter the BlackBerry Developer Challenge
> This is your chance to win up to $100,000 in prizes! For a limited time,
> vendors submitting new applications to BlackBerry App World(TM) will have
> the opportunity to enter the BlackBerry Developer Challenge. See full prize
> details at: http://p.sf.net/sfu/Challenge
> unattended-devel mailing list