XS Installing Software 0.7
This page describes how to obtain a copy of the XS school server software, load it onto media, and install it onto a system.
This page covers XS 0.7 and newer. For older releases, see
Please read the release notes before installing.
Two installation options are available:
- XS installation CD (recommended): download and burn a CD image, and use the resultant CD to install the system.
- On top of another system (advanced): install the XS software packages on top of an existing operating system installation
If in doubt, go with option 1. This is the most simplistic option and is the easiest route to take. Option 2 is useful for advanced users where the XS cannot be given its own dedicated hardware - it allows you to run the XS alongside other services on an existing system, but involves a bit more work on your end.
Installing from CD
Download the latest release image from:
(md5sum should be 70aac0db570d8c13a65510e5252c88bd)
Burn the image to CD with your favorite software. You can also install it from USB.
The install from a CD or USB storage device will eventually be automatic upon booting. While the install is currently mostly automated (not interactive), it is not performed automatically upon boot.
- Boot from the USB device or CD-ROM.
- Press enter to start the graphical boot menu.
- Select "Install using kickstart" at the initial boot screen.
- Anaconda (the Fedora installer) takes over and you will be prompted for the standard questions - these are preset to the correct defaults for the School Server configuration. You will want to set keyboard type, the time zone, and a root password for your specific system.
- The default settings will wipe Linux installations from the first disk (sda) without warning.
- If you are planning to deploy to a large number of XSs, it is easy to modify the Kickstart file to have the whole process run automatically.
- When prompted to add specific packages, just leave the default and click next.
- When it has finished installing, you will be prompted to reboot. Remove the CD-ROM or USB device after power-down, but before the boot process begins.
You should now have a School Server! It needs initial configuration before it starts providing services to the laptops. Proceed to #Initial Configuration.
Notes on deleting Windows partitions
One common situation faced by deployments is that a system that comes preinstalled with Windows needs to be upgraded to an XS. Unfortunately, due to oddities within Anaconda (the CentOS install software), Windows partitions cannot be deleted from inside the XS installer.
The workaround for this problem is to delete the Windows partitions before booting the XS installer. This can be done with any other operating system - I suggest creating a Fedora LiveCD/LiveUSB, booting from that, using the GNOME disk utility to delete the partitions, and then shutting down to proceed with the XS install from XS install media (as outlined above).
Alternatively, expert users have the option of booting from the XS install media, and pressing Ctrl+Alt+F2 early on in the installation process. This will present a shell. From there, "fdisk" can be run and can be used to delete existing partitions on the disk. After modifying the partition table you must reboot and start the installer again, otherwise Anaconda will not pick up the changes you have made.
Installing on top of existing OS installation
As an alternative to performing the XS CD/USB install, you can install this XS version on top of any RHEL6-compatible OS installation, such as RHEL, CentOS, Scientific Linux, etc. This is useful for situations where you cannot dedicate the XS its own machine, but you must combine it with an existing system running on a network.
- Only CentOS 6.2 has been tested at this time.
First, install your base OS of choice (e.g. CentOS 6.2 minimal install). When partitioning your disks, be aware that the XS stores the bulk of its data under /library - so either make a dedicated partition for /library or ensure that your / partition is big.
Install the EPEL repository configuration.
Now it is just a case of installing the XS repository package and the package group:
# rpm -ivh "http://dev.laptop.org/xs/repos/stable/olpc/xs-0.7/i386/xs-release-6-1.noarch.rpm" # yum groupinstall "OLPC XS"
Now proceed to #Initial configuration
Login as root, with whatever password you assigned during installation.
Right after installation, you must
- Activate the XS functionality and choose a server domain name (the hostname is always 'schoolserver') using:
- Reboot the machine so the hostname change can take effect:
- Installation and initial configuration are complete!
Now that your XS is installed, you have two options for setting up networking.
- XS standard networking (recommended): The XS takes over your network with predefined addresses and automatically configures and starts network-hosting services such as DHCP and DNS, in addition to the school-facing services offered by the XS.
- Manual networking configuration (advanced): The user must configure networking.
Option 1 is recommended, and is the most straightforward. Option 2 is for situations where instead of running the network, the XS must be connected to a network that has an existing server.
XS standard networking configuration
To activate XS standard networking, run:
eth0 (the first network interface found) is now purposed as the LAN connection, and eth1 (if found) is purposed as the WAN (internet) connection. If you have an internet connection, you will want to edit the /etc/sysconfig/network-scripts/ifcfg-eth1 file to specify the configuration (DHCP, static IP, etc).
To complete the network setup:
If your XS has 2 network interfaces and you would like to reverse their (WAN, LAN) roles, or if you only have one network interface and would like to swap it's role, you can use the xs-swapnics utility. If you get your WAN via some other interface (e.g., ppp0) then you will want to see the recipes for WAN connections.
IPv6 is not enabled by default and not needed -- to enable external IPv6 you will have to configure the global address of the machine and setup an IPv6 tunnel.
The XS runs a fully-fledged DNS server internally, therefore there is no need to enter the DNS servers from your ISP into the configuration. If you do want the XS to use specific DNSs, see the instructions on using ISP-provided DNS servers
Most access points are compatible with the XO. For a list of ones which have been shown to work see Wireless Access Point Compatibility. Unless a single access point is being used (not recommended for more than forty to fifty laptops), a network switch of some sort will also be needed.
Make sure your AP is configured to act as an Access Point, with no added features or smarts. The AP should not be a DHCP server and should not act as a router.
Some tips on configuring APs at XS_Techniques_and_Configuration.
Manual networking configuration
If you are integrating the XS onto a network which already has a server that cannot be upgraded to an XS, this option is for you. However, everything is left in your hands. You must configure the network interfaces of the XS according to your preference and requirements, and take care of running any services that are not running elsewhere. Considerations include:
- DHCP/DNS must be provided by another network server, or activated by you, so that the XOs can have connectivity.
- It is up to you to configure firewalling. Note that some of the XS standard services listen on all interfaces by default, so be sure to block non-school incoming connections if applicable.
Important: Register an XO and visit the Schoolserver. You should do this with the XO of a teacher or school principal, as the first XO to visit the Schoolserver will have the "course creator" role. More about Moodle
All the topics below are discussed in XS Techniques and Configuration
- Using something other than eth1 as your WAN port.
- Using specific DNS servers (from your ISP, or from OpenDNS -recommended!)
- You may want to enable the transparent HTTP proxy.
- and more...
More configuration options
For more information on keeping your XS up to date, Internet content filtering, alternative networking/routing setups, and a lot of other advanced configuration topics see XS_Techniques_and_Configuration.