XS Installing Software 0.6: Difference between revisions

From OLPC
Jump to navigation Jump to search
(remove latest releases table, it does not serve any purpose here and is a distraction)
 
(98 intermediate revisions by 33 users not shown)
Line 5: Line 5:
[[Category:SchoolServer]]
[[Category:SchoolServer]]


This page describes how to obtain a copy of the [[XS_Server_Software|XS school server software]], load it onto media, and install it onto a system. A more [[XS Software Repositories|complete description of the software repositories]], [[XS_Configuration_Management|configuration information]], and [[Schoolserver_Testing|testing instructions]] are also available.
This page describes how to obtain a copy of the [[XS_Server_Software|XS school server software]], load it onto media, and install it onto a system.


This page covers '''XS 0.6 and newer'''. For older releases, see
=Downloading the System Image=


* [[XS_Installing_Software_0.5]]
* [[XS_Installing_Software_0.4]]

=Downloading the System Image=
You can obtain the latest image from [http://xs-dev.laptop.org/xs/ http://xs-dev.laptop.org/xs/]:
You can obtain the latest image from [http://xs-dev.laptop.org/xs/ http://xs-dev.laptop.org/xs/]:


wget http://xs-dev.laptop.org/xs/OLPC_XS_LATEST.iso
wget http://dev.laptop.org/xs/OLPC-School-Server-0.6-i386.iso


This can be copied onto a '''CD''' or '''DVD''' using your favorite software.
This can be copied onto a '''CD''' or '''DVD''' using your favorite software.


You can also [[XS_Techniques_and_Configuration#Installing_from_USB|install it from USB]] (warning: unsupported!)
It may also be copied onto a '''USB''' key, using the <tt>livecd-tools</tt> provided by Fedora 7:

livecd-iso-to-disk OLPC_XS_LATEST.iso /dev/sdb1

where <tt>/dev/sdb1</tt> represents the USB key being copied onto.

There is [http://git.fedoraproject.org/git/?p=hosted/livecd a git repository for <tt>livecd-tools</tt>] if you need a different version of the script, or are on a different linux distro.

==Using an XO to create an installer USB key==

You can use an XO laptop to create an installer key. First, you will need to install some necessary tools on the XO, then download the image, then transfer it to a USB key inserted in the laptop:

sudo yum install livecd-tools
wget http://xs-dev.laptop.org/xs/OLPC_XS_LATEST.iso
sudo livecd-iso-to-disk OLPC_XS_LATEST.iso /dev/sda1


=Installing the Software=
=Installing the Software=


'''Please read the [[XS Release Notes|release notes]] for the version you are installing.'''
The install from a '''CD''' or '''USB''' key will eventually be automatic upon booting. While the install is currently mostly automated (not interactive), it is not performed automatically upon boot.


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 Key or CD-ROM -- Getting an older system to boot from a USB key can be difficult, but most will do it.
# Select "Run from Image" at the initial boot screen.
# When it has finished booting, login as root (no password is required) and type:
./olpc-install
# You will be prompted for the keyboard type, the time zone, and a root password
# If the disk in the system is new, you may be prompted to OK its formatting.
# When it has finished installing, you will need to reboot. The installer will erroneously tell you it is rebooting, but you will have to manually type <tt>reboot</tt>. Remove the CD-ROM or USB key after power-down, but before the boot process begins.


# Boot from the USB device or CD-ROM.
You should now have a machine which somewhat resembles a school server.
# Press enter to start the graphical boot menu.
# Select "Install using kickstart" at the initial boot screen.
## "Install using kickstart" is the last menu item. Do not use the other "Install" options on this menu as they only install Fedora 9 without the olpc scripts. The Anaconda installer will install around 546 packages. If it announces it is installing 407 packages, the olpc scripts are missing. Start again.
# '''Note: the default graphical installer can be unstable at times. You can press tab and add 'text' at the end of the line to request the text-based installer.'''
# 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.
## 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.
===Booting Install from a USB key===


== Automating the Install ==
In our experience, most generic x86 computers equipped with USB ports support booting from a USB storage device (a ''USB key''). Almost none are configured to do so automatically. This can easily be forced from the BIOS.


If you want to install XS software using a cobbler-based Installation Server, please see [[XS_Install_Server]].
====Phoenix BIOS====


== Installing on an XO ==
# Insert the USB key into the machine before booting
# Enter the BIOS by pressing ''DEL'' on a keyboard during the initial boot process.
# Select "Advanced BIOS Features"
# Select "Hard Disk Boot Priority"
# You should see your USB key listed as a boot device. Move it to the top by selecting it and pressing ''PgUp''.
# If you don't see your USB key listed, move "Bootable Add-in Cards" to the top of the list. But remember to move it back down after installation, or your system may not boot!
# Save the BIOS parameters to CMOS and reboot by pressing ''F10'', then ''Enter''


If you are wanting to run the XS software on an XO, please see [[XS-on-XO]].
====Dell====


= Initial Configuration =
If the system has a blank disk drive, it will automatically boot from a USB key.


== Setting hostname and domain ==
If the disk drive has a bootable OS, you will need to:
Login as root, with whatever password you assigned during installation.


Right after installation, you '''must'''
# Insert the USB key into the machine before booting
* Set the server domain name (the hostname is always 'schoolserver') using:
# Enter the Boot menu by pressing ''F11'' on boot
/etc/sysconfig/olpc-scripts/domain_config example.org
# Select ''USB Device''
* Reboot the machine so the hostname change can take effect:
reboot
* Installation and initial configuration are complete!


====Workaround with Grub?====
== What next? ==


'''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. [[XS Techniques and Configuration#Moodle|More about Moodle]]
''Need work around (like with grub?) for older hardware without boot from USB capability here...''
All the topics below are discussed in [[XS Techniques and Configuration]]


* Setting a static IP address for eth0, or using something other than eth0 as your WAN port.
''And possibly a run Live from USB key without install to hard drive for standalone demos and learning purposes???''
* Using specific DNS servers (from your ISP, or from OpenDNS -recommended!)
* You may want to enable the transparent HTTP proxy.
* and more...


== Configuration ==
=Network Configuration Notes=


The default server setup is to connect to the Internet on the first wired ethernet network interface, using IPv4 DHCP. Laptops connect to the server over the wireless mesh using one or more [[Active Antenna]], connected through USB interfaces. Optional second (and additional) ethernet interfaces are configured by default to provide an internal LAN within the school. Traditional WiFi access points, if used, should be located on this internal LAN. See [[XS Configuration Management]] for details.
The default server setup is to connect to the Internet on the '''first wired ethernet network interface''', using IPv4 DHCP. Laptops connect to the server over Access Points (APs) connected to the '''second wired ethernet network interface''' or via the wireless mesh using one or more [[Active Antenna]], connected through USB interfaces.


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 [[XS_Techniques_and_Configuration#Using_a_different_WAN_connection|recipes for WAN connections]].
To enable external IPv6 you will have to [[XS_Configuration_Management#IPv6|configure the global address of the machine and setup an IPv6 tunnel]].


IPv6 is not enabled by default and not needed -- to enable external IPv6 you will have to [[XS_Configuration_Management#IPv6|configure the global address of the machine and setup an IPv6 tunnel]].
== Installing additional software ==


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 [[XS_Techniques_and_Configuration#Use_ISP-provided_DNS_servers|using ISP-provided DNS servers]]
If you wish to install packages that aren't part of the default school server distribution, you should first try using <tt>yum</tt>. The ''stable'' and ''testing'' school server repositories include all packages included in Fedora, even if they aren't installed by default. For third party software you should follow their installation procedure for Fedora 7 or for the XS Server specifically. For example, to install Moodle, follow these instructions: http://docs.moodle.org/en/OLPC_XS_installation#Install_Moodle_from_the_OLPC_XS_Image


== Access Points ==
=Upgrading=


[[Image:XS_Usage_APNormal.png|600px]]
Upgrading a server is done using the [http://linux.duke.edu/yum/ <tt>yum</tt>] package interface provided by Fedora.


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.
==Over the Internet==


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.
If you have an Internet connection, you can upgrade from the default servers at OLPC, or your own mirrors of them. This is done using yum:


Some tips on configuring APs at [[XS_Techniques_and_Configuration]].
sudo yum -y upgrade


== Active Antennae ==
==From a CD or USB key==
'''Important note: Active Antennae is not supported or available from OLPC at this time'''


If you have active antenna(e) to use, simply plug them in and reboot the XS. It will detect them and allocate them to mshbond0, mshbond1 and mshbond2. It should just work and XOs will see "School server mesh" when they connect to the mesh served by the XS. You may need to manually allocate different frequencies per antenna.
If you do not have an Internet connection (or wish to minimize its use), you can obtain a '''CD''' or '''USB''' key for upgrading an existing system.


=More configuration options=
''More instructions coming soon. Feel free to contribute''


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]].
=Release Notes=
[[Category:Release notes]]


=Upgrading=
Please read these notes to understand the capabilities and known problems with a particular release of the XS school server software. The latest release of software is described first, with a selection of earlier releases also described for completeness.

==OLPC_XS_165==

[http://xs-dev.laptop.org/xs/ Download], [[XS_Configuration_Management#Example_Configurations|steps to install]].
This release provides:
* [[XS_Blueprints:Datastore_Simple_Backup_and_Restore|DS-Backup]]
* RSSH and PAM SOTP packages (still unconfigured)
* Fixes [http://dev.laptop.org/ticket/6678 Root password not set on school server install]
* Fixes BIND config errors in build 164
* Fixes [http://dev.laptop.org/ticket/7703 domain_config only updates configs for services that are running]
* See [[XS_Configuration_Management#Example_Configurations|Example school server configuration]] for a step-by-step installation and configuration guide.
* A reinstall is recommended over a yum upgrade -- as various people found out, you have to re-do the configuration steps (domain_configure, etc) if you upgrade. We'll [https://dev.laptop.org/ticket/7708 fix this in a future release].

WLAN Firmware: '''22.p6''' Kernel: '''2.6.23.1-23.fc7''' xs-config: '''0.2.10-1'''

This release contains the DS-Backup implementation, with a ''restore''
facility aimed mainly at the test team. The user-friendly (and
privacy-friendly) version of this will be part of Moodle - coming to a
build near you soon. For production deployments you might want to
disable the restore page.

'''Notes:'''
* This build still requires a minimum of a '''10Gig'''? hard drive to install due to fixed requirements in autoinstallation scripts ([http://dev.laptop.org/ticket/7241 trac 7241])

==OLPC_XS_163==

This release provides:
* Improved Active Antenna firmware ([http://dev.laptop.org/pub/firmware/libertas/usb8388-5.110.22.p6.bin 22.p6]) that fixes the problems with rebooting.
* Minor bug fix (/etc/resolv.conf problem in 160)
* See [[XS_Configuration_Management#Example_Configurations|Example school server configuration]] for a step-by-step installation and configuration guide.

WLAN Firmware: '''22.p6''' Kernel: '''2.6.23.1-23.fc7''' xs-config: '''0.2.7-3'''

'''NOTE:''' This build requires a minimum of a '''10Gig'''? hard drive to install due to fixed requirements in autoinstallation scripts ([http://dev.laptop.org/ticket/7241 trac 7241])

==OLPC_XS_161==

This release has a broken kernel/libertas driver combo. ''DO NOT INSTALL !''

==OLPC_XS_160==

This release provides:
* An improved ejabberd server which might improve reliability under load
* Support for [[XS_Configuration_Management#Web_Caching|squid web caching]] is now provided
* Configuration of server domain name has been automated.
* Automatic installation is now supported by the default ISO image. Boot this image and you will be prompted for a few parameters then installation will automatically begin.
* See [[XS_Configuration_Management#Example_Configurations|Example school server configuration]] for a step-by-step installation and configuration guide.

WLAN Firmware: '''20.p49''' Kernel: '''2.6.23.1-23.fc7''' xs-config: '''0.2.6-6'''

[http://xs-dev.laptop.org/xs/ Download Here]

===Known Problems===
* For some reason, anaconda now sets the root password on the running livecd image, not the installed one ([http://dev.laptop.org/ticket/6678 trac 6678]). You must provide a root password when prompted by the installer, and you will need it to log in and reboot the system after installation ([http://dev.laptop.org/ticket/6677 trac 6677]), but it will not be set on the new disk image. You should [[XS_Configuration_Management#Changing_the_Root_Password|set it manually]] ASAP after booting into the installed system.
* Configuration is improved over build 150. A script ([http://dev.laptop.org/git?p=projects/xs-config;a=blob;f=fsroot.olpc.img/etc/sysconfig/olpc-scripts/domain_config;hb=HEAD /etc/sysconfig/olpc-scripts/domain_config]) now configures the domain name of the server. If using multiple servers in a school this must currently be done AFTER running network_config/auxiliary_config.
* Clean up /etc/resolv.conf to have 172.18.0.1 listed as the only nameserver, and delete the DHCP hooks file:
sudo rm /etc/dhclient-exit-hooks
* Dynamic DNS and other support isn't in place for true DHCP'd servers. The server will work fine if DHCP'd, but outside access by name will be broken.
* Plenty of functionality still missing, such as IPv6, ejabberd monitoring ([http://dev.laptop.org/ticket/6373 trac 6373), Moodle, etc.
* Netplugd is still disabled at this time. It interacts badly with the the current libertas driver, and causes crashes, lack of network, etc. This doesn't seem to affect anything right now, but is an unplanned change.
* The installer stops when the disk being installed onto has a FreeBSD slice/partition (and probably other non-Linux partitions as well). Removing those partitions with fdisk and rebooting works around the problem.
* Substantiated problems sometimes with two active antennas plugged in, but this seems to be antenna specific. This build has been tested to support multiple meshes with collaboration between them (once registered).

===Upgrading from earlier releases===

This has not been tested. '''And at this time, the stable repositories do not reflect this build! Change to using the testing repositories if you are testing upgrade.'''

Known issues:

====Disable Netplugd service====
If upgrading from a build earlier than 141, you will need to manually turn off netplugd until we figure out why it is unhappy with the latest libertas driver:
chkconfig netplugd off
service netplugd stop

====Reconfiguration of Network====
'''ON ALL UPGRADES''' the network configuration script will have to be run manually (which will require reconfiguring the WAN interface):
/etc/sysconfig/olpc-scripts/network_config 1
The single parameter is a server number. This must be unique per school, but otherwise may be any number from one to eight (currently). After running this script, any manually configured network scripts (in <tt>/etc/sysconfig/network-scripts/</tt>) such as the WAN configuration will be saved with a <tt>.bak</tt> suffix. Reboot immediately after running the <tt>network-config</tt> script.

==OLPC_XS_150==

This release provides support for multiple school servers in a school. It also includes primitive ejabberd presence server support.

WLAN Firmware: '''20.p49''' Kernel: '''2.6.23.1-23.fc7''' xs-config: '''0.2.5-6'''

[http://xs-dev.laptop.org/xs/ Download Here]

===Known Problems===
* I'm unable to get the automatic install to build properly tonight (despite earlier successes), so you still have to log in as root (no password) and type <tt>./olpc-install</tt> to start the installation process.
* For some reason, anaconda has decided to stop setting the root password. You should set it manually ASAP after
booting into the installed system.
***How do you change the root password? [[User:70.124.61.211|70.124.61.211]] 23:31, 13 February 2008 (EST)
* Configuration is state of the art --- for the 1970s! Realistically, we are one global parameter (the domain name) and one service (ejabberd) away from automatic configuration. '''See [[XS_Configuration_Management#Example_Configurations|Example school server configurations]] to walk you through the steps, one by one.'''
* <tt>/etc/dhcpd.conf</tt> might accidentally reassign a school server IP address. Change the range on 172.18.0.1 to be <tt>172.18.0.32 172.18.0.254</tt> (instead of <tt>172.18.1.254</tt>).
* Dynamic DNS and other support isn't in place for true DHCP'd servers. The server will work fine if DHCP'd, but outside access by name will be broken.
* Plenty of functionality still missing, such as web caching and IPv6.
* ejabberd needs some [[Ejabberd_Configuration|configuration]] before starting, which is currently difficult.
* Netplugd is still disabled at this time. It interacts badly with the the current libertas driver, and causes crashes, lack of network, etc. This doesn't seem to affect anything right now, but is an unplanned change.
* The installer stops when to be installed disk has a FreeBSD slice/partition. Removing the slice with fdisk and rebooting works around the problem.

===Upgrading from earlier releases===

This might work (the testing cycle was tight!), with a few caveats:

====Disable Netplugd service====
If upgrading from a build earlier than 141, you will need to manually turn off netplugd until we figure out why it is unhappy with the latest libertas driver:
chkconfig netplugd off
service netplugd stop

====Reconfiguration of Network====
'''ON ALL UPGRADES''' the network configuration script will have to be run manually (which will require reconfiguring the WAN interface):
/etc/sysconfig/olpc-scripts/network_config 1
The single parameter is a server number. This must be unique per school, but otherwise may be any number from one to eight (currently). After running this script, any manually configured network scripts (in <tt>/etc/sysconfig/network-scripts/</tt>) such as the WAN configuration will be saved with a <tt>.bak</tt> suffix. Reboot immediately after running the <tt>network-config</tt> script.

==OLPC_XS_141==

This release provides the latest firmware and drivers for the Active Antennas, fixing a problem with large file transfers over the mesh. All users of earlier XS software builds are strongly encouraged to upgrade!

WLAN Firmware: '''20.p47''' Kernel: '''2.6.23.1-23.fc7''' xs-config: '''0.2.2-4'''

[http://xs-dev.laptop.org/xs/ Download Here]

===Known Problems===
* Plenty of functionality still missing, such as [[Ejabberd_Configuration|ejabberd]] and web caching
* The idmgr is not installed. To install and start it, type:
yum install idmgr
* Netplugd is disabled at this time. It interacts badly with the the current libertas driver, and causes crashes, lack of network, etc. This doesn't seem to affect anything right now, but is an unplanned change.
* The installer stops when to be installed disk has a FreeBSD slice/partition. Removing the slice with fdisk and rebooting works around the problem.

===Upgrading from earlier releases===

This should work, with a few caveats:

====Disable Netplugd service====
You will need to manually turn off netplugd until we figure out why it is unhappy with the latest libertas driver:
chkconfig netplugd off
service netplugd stop

====Reconfiguration of Network====
To avoid disturbing any manual configuration of the server network interfaces, hot-plug of the Active Antennas will not be supported on an upgraded machine until the network configuration script is run manually (which will require reconfiguring the WAN interface):
/etc/sysconfig/olpc-scripts/network-config.py
After running this script, any manually configured network scripts (in <tt>/etc/sysconfig/network-scripts/</tt>) such as the WAN configuration will be saved with a <tt>.bak</tt> suffix. Reboot immediately after running the <tt>network-config.py</tt> script.

==OLPC_XS_137==
This release supports hot-plug of the Active Antennas (unplugging and plugging while the server is running.) It also provides the latest firmware and drivers for the Active Antennas, fixing a number of stability problems and avoiding a problem where the mesh interacted badly with conventional 802.11b/g access points running a Broadcom chipset (such as the Linksys WRT54G).


==Upgrade from XS 0.5 or later==
===Known Problems===
* Plenty of missing functionality.


With the full ISO:
===Upgrading from earlier releases===
* The process is similar to a new (anaconda based) installation. Download the iso, and boot it...
* In the menu shown right after booting, you choose one of the 'Install or upgrade an existing system'.
* At the 'Install new or upgrade' screen choose upgrade.
* Reboot, and complete the 'steps after upgrade'.


With <code>yum</code>:
This has been tested and should work fine, with one intentional exception:


* Clean yum's caches
To avoid disturbing any manual configuration of the server network interfaces, hot-plug of the Active Antennas will not be supported on an upgraded machine until <tt>/etc/sysconfig/olpc-scripts/network-config.py</tt> is run manually. After running this script, any manually configured network scripts (in <tt>/etc/sysconfig/network-scripts/</tt>) will be saved with a <tt>.bak</tt> suffix.
yum clean all
* Swith to the new repositories
rpm -Uvh http://xs-dev.laptop.org/xsrepos/stable/olpc/xs-0.6/i386/xs-release-9-0.4.15.2.ga69303f.noarch.rpm
* Check that the new repositories have not been installed as "rpmnew":
ls /etc/yum.repos.d/*rpmnew
* Run the install!
yum update
* Reboot, and complete the 'steps after upgrade'.


Steps after upgrade:
==OLPC_XS_128==
* Re-run the /etc/sysconfig/olpc-scripts/domain_config script with the appropriate domain name for the machine.
This release has the registration server required for Trial3, as well as a fix to the inittab script which caused problems in India.
* Ensure the right Postgres is set to run
chkconfig --level 345 postgresql off
chkconfig --add pgsql-xs


==Upgrade from XS 0.4 or earlier==
==OLPC_XS_127==
A bug fix release, due to our lame QA department not testing build 126 on a server with a single wired interface before release. This fixes the network configuration problems in 125 and 126 on servers with a single wired interface.


If you are upgrading from XS 0.4 or earlier, the process is similar to a new installation, with some minor changes. In the menu shown right after booting, you should choose one of the 'Install or upgrade an existing system' options, press the Tab key, and add 'upgradeany' to the boot configuration line. After adding that line, press enter twice.
==OLPC_XS_126==
A bug fix release. This fixes the mesh channel assignment and network configuration problems in 125


With this extra option, Anaconda will recognise the old installation and will offer to upgrade.
==OLPC_XS_125==
This release has basic network functionality. It supports laptops on the mesh.


Steps after upgrade:
It does NOT autoinstall automatically. You will need to login as root (no password), then run <tt>/root/olpc-install</tt>. You will be prompted for a root password, otherwise the installation is automatic.
* Re-run the /etc/sysconfig/olpc-scripts/domain_config script with the appropriate domain name for the machine.
* Ensure the right Postgres is set to run
chkconfig --level 345 postgresql off
chkconfig --add pgsql-xs


Notes:
Missing:
* The new OS may detect your network cards differently -- the roles of WAN and LAN cards may end up swapped from what they were under 0.4. If that happens, use the xs-swapnics script and reboot.
* Registration
* Web services
* Presence service
* A configuration interface
* Lots more...


= See also =
Known Problems:
* [[XS Techniques and Configuration]]
* /etc/named.conf isn't being installed correctly from the xs-config RPM. The fix is:
* [[XS Troubleshooting]]
cp /etc/named.conf.olpcnew /etc/named.conf
* Hotplug of the mesh interfaces doesn't trigger a restart of the olpc-mesh-config, which is needed for the mesh to work.
* SELinux is left in permissive mode, instead of completely disabled. Edit <tt>/etc/selinux/config</tt> and set <tt>SELINUX=disabled</tt>
* The channel on the mesh interface isn't being set correctly. This causes problems with XO builds later than 542. Set the channel manually using iwconfig for now. Fixed in build 126.
* The network configuration script could fail and assign a mesh interface as the WAN. Fixed in build 127.
* On machines with no serial port, there might be a problem resulting in an error message on the console: <tt>INIT : Id "s0" respawning too fast : disabled for 5 minutes</tt>. This is fixed in xs-config v0.1.7-4, (not currently in any live CD build).


[[Category:SchoolServer]]
The most common problem with the mesh is due to a hardware problem with the Marvell wireless modules used in the Active Antennas. They frequently do not reset properly, and need to be power cycled. The symptom is that you will get a message: "libertas: Unable to init firmware" on the console, and <tt>ifconfig</tt> won't show a mesh interface. A reboot will not fix the situation, you need to actually power cycle the USB adapter by unplugging it and plugging it back in.

Latest revision as of 21:56, 5 August 2013

  english | españolCopy "{{subst:requesttranslation}}" to 한국어 HowTo [ID# 290708]  +/-  


  This page is monitored by the OLPC team.

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.6 and newer. For older releases, see

Downloading the System Image

You can obtain the latest image from http://xs-dev.laptop.org/xs/:

wget http://dev.laptop.org/xs/OLPC-School-Server-0.6-i386.iso

This can be copied onto a CD or DVD using your favorite software.

You can also install it from USB (warning: unsupported!)

Installing the Software

Please read the release notes for the version you are installing.

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.

  1. Boot from the USB device or CD-ROM.
  2. Press enter to start the graphical boot menu.
  3. Select "Install using kickstart" at the initial boot screen.
    1. "Install using kickstart" is the last menu item. Do not use the other "Install" options on this menu as they only install Fedora 9 without the olpc scripts. The Anaconda installer will install around 546 packages. If it announces it is installing 407 packages, the olpc scripts are missing. Start again.
  4. Note: the default graphical installer can be unstable at times. You can press tab and add 'text' at the end of the line to request the text-based installer.
  5. 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.
    1. 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.
  6. When prompted to add specific packages, just leave the default and click next.
  7. 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.

Automating the Install

If you want to install XS software using a cobbler-based Installation Server, please see XS_Install_Server.

Installing on an XO

If you are wanting to run the XS software on an XO, please see XS-on-XO.

Initial Configuration

Setting hostname and domain

Login as root, with whatever password you assigned during installation.

Right after installation, you must

  • Set the server domain name (the hostname is always 'schoolserver') using:
/etc/sysconfig/olpc-scripts/domain_config example.org
  • Reboot the machine so the hostname change can take effect:
reboot
  • Installation and initial configuration are complete!

What next?

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

  • Setting a static IP address for eth0, or using something other than eth0 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...

Network Configuration Notes

The default server setup is to connect to the Internet on the first wired ethernet network interface, using IPv4 DHCP. Laptops connect to the server over Access Points (APs) connected to the second wired ethernet network interface or via the wireless mesh using one or more Active Antenna, connected through USB interfaces.

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

Access Points

XS Usage APNormal.png

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.

Active Antennae

Important note: Active Antennae is not supported or available from OLPC at this time

If you have active antenna(e) to use, simply plug them in and reboot the XS. It will detect them and allocate them to mshbond0, mshbond1 and mshbond2. It should just work and XOs will see "School server mesh" when they connect to the mesh served by the XS. You may need to manually allocate different frequencies per antenna.

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.

Upgrading

Upgrade from XS 0.5 or later

With the full ISO:

  • The process is similar to a new (anaconda based) installation. Download the iso, and boot it...
  • In the menu shown right after booting, you choose one of the 'Install or upgrade an existing system'.
  • At the 'Install new or upgrade' screen choose upgrade.
  • Reboot, and complete the 'steps after upgrade'.

With yum:

  • Clean yum's caches
 yum clean all
  • Swith to the new repositories
 rpm -Uvh http://xs-dev.laptop.org/xsrepos/stable/olpc/xs-0.6/i386/xs-release-9-0.4.15.2.ga69303f.noarch.rpm
  • Check that the new repositories have not been installed as "rpmnew":
 ls /etc/yum.repos.d/*rpmnew
  • Run the install!
 yum update 
  • Reboot, and complete the 'steps after upgrade'.

Steps after upgrade:

  • Re-run the /etc/sysconfig/olpc-scripts/domain_config script with the appropriate domain name for the machine.
  • Ensure the right Postgres is set to run
 chkconfig --level 345 postgresql off
 chkconfig --add pgsql-xs

Upgrade from XS 0.4 or earlier

If you are upgrading from XS 0.4 or earlier, the process is similar to a new installation, with some minor changes. In the menu shown right after booting, you should choose one of the 'Install or upgrade an existing system' options, press the Tab key, and add 'upgradeany' to the boot configuration line. After adding that line, press enter twice.

With this extra option, Anaconda will recognise the old installation and will offer to upgrade.

Steps after upgrade:

  • Re-run the /etc/sysconfig/olpc-scripts/domain_config script with the appropriate domain name for the machine.
  • Ensure the right Postgres is set to run
 chkconfig --level 345 postgresql off
 chkconfig --add pgsql-xs

Notes:

  • The new OS may detect your network cards differently -- the roles of WAN and LAN cards may end up swapped from what they were under 0.4. If that happens, use the xs-swapnics script and reboot.

See also