Experimental XS-on-XO image

Martin Langhoff martin.langhoff at gmail.com
Thu Apr 16 07:37:13 EDT 2009

"Cross-posted" to http://wiki.laptop.org/go/XS-on-XO -- help and edits
welcome :-)

Yipeee! We have an experimental ext3 image that boots and seems to
work correctly as an XS would, on XO hardware.

=Grab the image from=


The sha1 of the uncompressed file is


=To install=

# grab a fast SD card, at least 4GB (though smaller cards may work in
some cases, see below)
# uncompress the image with gzip -d
# identify the mountpoint for the first partition -- usually
/dev/mmcblk0p1 or /dev/sdX1
# using fdisk, make the first partition at least 4GB, type 83 (linux)
and bootable
# dd if=OLPC-School-Server-0.5.2-dev01-i386.img of=/dev/<device> bs=1M

Now the SD card should just boot on any unlocked XO.

=Matching the fs size to the actual partition on the SD card=

If your card or first partition is larger,  first dd the image onto
the card, and then use resize2fs on it. resize2fs will expand it to
fill the partition.

If your card is smaller than 4GB (which sometimes happens with cards
advertised as 4GB), shrink the partition with resize2fs before using
dd. You can expand it to fill the whole partition with resize2fs.

=Completing the installation=

# Set a password for the root user.
# Follow the ''Initial Configuration'' steps outlined in
[[XS_Installing_Software]] .
## It's probably a wise idea to avoid using Squid on the XO hardware.

=Further work=

Help is needed with...

* Testing of the XS functionality
* Getting a vanilla F9 kernel+initrd to boot
* ejabberd and postfix complain dyring the generation of the ext3
image about not having a hostname. Check whether this creates
problems, and what fixes can be applied.
* PostgreSQL ('pgsql-xs' service) does not seem to have landed in good shape.
* External disk setup: scripts to setup an external disk to handle
/library and swap. Should be hooked up with the usbmount triggers.
* Load testing and tuning of memory settings in apache and postgres --
how many users can reasonably use eJabberd & Moodle with our limited
* Scripts to auto-configure usb-ethernet adapters as eth0
* Scripts to auto-configure USB "3G" adapters (usually appearing as ppp devices)
* Scripts to switch from mesh portal to hostap

=Developer notes=
== Building the image==

# checkout xs-livecd
# wget http://xs-dev.laptop.org/xs/OLPC-School-Server-0.5.2-i386.iso
# sudo ./util/mkext3img OLPC-School-Server-0.5.2-i386.iso


 martin.langhoff at gmail.com
 martin at laptop.org -- School Server Architect
 - ask interesting questions
 - don't get distracted with shiny stuff  - working code first
 - http://wiki.laptop.org/go/User:Martinlanghoff

More information about the Devel mailing list