XS Installing Software 0.6: Difference between revisions
(remove latest releases table, it does not serve any purpose here and is a distraction) |
|||
(72 intermediate revisions by 24 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 |
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. |
This page covers '''XS 0.6 and newer'''. For older releases, see |
||
* [[XS_Installing_Software_0.5]] |
|||
* [[XS_Installing_Software_0.4]] |
|||
=Downloading the System Image= |
=Downloading the System Image= |
||
Line 13: | Line 16: | ||
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:// |
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!) |
|||
== Using a USB key/disk for installation == |
|||
Using a USB key to install this version of the XS involves several additional steps. |
|||
* First, ensure you have syslinux installed, and that your USB key is both bootable (you can use gparted to make it bootable) and unmounted. |
|||
* Then, copy the installation using the 'mkusbinstall' script you can download [http://dev.laptop.org/git?p=projects/xs-livecd;a=blob;f=util/mkusbinstall;hb=HEAD here] (click on the 'raw' link). Assuming your usb key is /dev/sdb, you can invoke it like this: |
|||
mkusbinstall OLPC_XS_LATEST.iso /dev/sdb1 |
|||
* You may need to configure your machine to boot from USB - see [[XS_Boot_from_USB]] for details. |
|||
* Early in the installation , anaconda will say that it cannot find its kickstart file. Change the path from 'cdrom:/ks.cfg' to 'hd:sdb1:/ks.cfg'. You will get prompted again for the path to the ISO - set it to Hard Drive, device: '/dev/sdb1' and directory: 'iso'. If the machine has more than one hard drive, then the device might be sdc1 instead of sdb1. |
|||
This process has worked on an Ubuntu machine. |
|||
=Installing the Software= |
=Installing the Software= |
||
Line 33: | Line 26: | ||
'''Please read the [[XS Release Notes|release notes]] for the version you are installing.''' |
'''Please read the [[XS Release Notes|release notes]] for the version you are installing.''' |
||
The install from a '''CD''' or '''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 |
# 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. |
# 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.''' |
# '''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. |
# 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 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 key after power-down, but before the boot process begins. |
|||
# 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 |
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]]. |
|||
Right after installation, you '''must''' |
|||
* Set the server domain name (the hostname is always 'schoolserver') using: |
|||
[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] '''example.org''' |
|||
* Set the hostname of the machine like this (until we fix bug [http://dev.laptop.org/ticket/8983 8983]) by editing /etc/sysconfig/network to set '''HOSTNAME=schoolserver.example.org''' and restarting. |
|||
* Enable ejabberd on startup, and start it using: |
|||
chkconfig --level 345 ejabberd on |
|||
service ejabberd start |
|||
* Create an account on ejabber for the administrator: |
|||
ejabberdctl register admin schoolserver.'''example.org''' admin |
|||
* Go to the web-based administration interface for ejabberd at <tt>http://schoolserver.example.org:5280/admin/</tt>, or <tt>http://172.18.0.1:5280/admin/</tt> if using an XO or other laptop connected through the LAN interface. |
|||
* Login as "admin@schoolserver.example.org" with the password you set when registering (admin). |
|||
* Click on "Virtual Hosts", then your hostname, then "Shared Roster Groups". Type "Online" and click Add New. |
|||
* Click on "Online" and enter "Online" for Name, "@online@" for Members, and "Online" for Displayed Groups. Click Submit. |
|||
== Installing on an XO == |
|||
===Optional: Enable Squid transparent proxy=== |
|||
If you are wanting to run the XS software on an XO, please see [[XS-on-XO]]. |
|||
Setup and start [[XS_Configuration_Management#Web_Caching|web caching]] with Squid by typing: |
|||
= Initial Configuration = |
|||
[http://dev.laptop.org/git?p=projects/xs-config;a=blob;f=fsroot.olpc.img/etc/sysconfig/olpc-scripts/TURN_SQUID_ON;hb=HEAD /etc/sysconfig/olpc-scripts/TURN_SQUID_ON] |
|||
== Setting hostname and domain == |
|||
If you need to make any modifications to the default Squid configuration make sure you make the modifications to the XS squid.conf file (called squid-xs.conf) not the default squid.conf file. To point to an external proxy server or a content filtering service simply add the following line, inserting the appropriate proxy name: |
|||
Login as root, with whatever password you assigned during installation. |
|||
Right after installation, you '''must''' |
|||
* cache_peer parentcache.foo.com parent 3128 0 no-query default |
|||
* Set the server domain name (the hostname is always 'schoolserver') using: |
|||
* acl all src 0.0.0.0/0.0.0.0 |
|||
/etc/sysconfig/olpc-scripts/domain_config example.org |
|||
* never_direct allow all |
|||
* Reboot the machine so the hostname change can take effect: |
|||
reboot |
|||
* Installation and initial configuration are complete! |
|||
== What next? == |
|||
Then restart Squid (or the server) and test. |
|||
'''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]] |
|||
Note: If user authentication is required for the network through a pop-up browser you may need to use Firefox rather than the default browse activity as it doesn't support popups. Also, if you have a PAC file you need to use you can distribute it by DHCP. |
|||
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. |
|||
===Network=== |
|||
* 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 Acceess 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. |
|||
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 you can use the xs-swapnics utility. |
|||
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]]. |
|||
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]]. |
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]]. |
||
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]] |
|||
== Access Points == |
== Access Points == |
||
Line 90: | Line 86: | ||
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. |
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 == |
== Active Antennae == |
||
'''Important note: Active Antennae is not supported or available from OLPC at this time''' |
'''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 |
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= |
|||
==AP Configuration== |
|||
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]]. |
|||
The steps for setting up a wireless router access point vary based on the wireless router being using, but this serves as a rough guide for installation. These steps were run using a Zoom Wireless-G model 4400 router. |
|||
=Upgrading= |
|||
*Press the reset button on the wireless router to reset it and connect it to any computer. It's possible to do this setup with an XO or any other machine with linux installed. |
|||
*Open terminal and type |
|||
ifconfig eth0 IPaddress |
|||
==Upgrade from XS 0.5 or later== |
|||
Where IPaddress is in the same subnet as the default IP for the access point |
|||
*Connect to the access point by typing in the IP address in a web browser. |
|||
*Login to the access point using the default password (or skip entering a password if none is provided) |
|||
*Set the wireless channel to 1, 6 or 11 to minimize interference |
|||
*Set a unique name for the wireless network |
|||
*Make sure that the access point is NOT running as a DHCP server and it's not running NAT |
|||
With the full ISO: |
|||
== Recommended Hardware Specifications == |
|||
* The process is similar to a new (anaconda based) installation. Download the iso, and boot it... |
|||
A number of computers may act as a school server, but it must be a Fedora-capable computer. Recommended minimum specifications for a school server are as follows: |
|||
* 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>: |
|||
<table border='1'> |
|||
* Clean yum's caches |
|||
<tr> |
|||
yum clean all |
|||
<th>Server</th> |
|||
* Swith to the new repositories |
|||
<th>Laptops Supported</th> |
|||
rpm -Uvh http://xs-dev.laptop.org/xsrepos/stable/olpc/xs-0.6/i386/xs-release-9-0.4.15.2.ga69303f.noarch.rpm |
|||
<th>Processor</th> |
|||
* Check that the new repositories have not been installed as "rpmnew": |
|||
<th>RAM</th> |
|||
ls /etc/yum.repos.d/*rpmnew |
|||
<th>Storage</th> |
|||
* Run the install! |
|||
</tr> |
|||
yum update |
|||
<tr> |
|||
* Reboot, and complete the 'steps after upgrade'. |
|||
<td>Small</td> |
|||
<td><20-25</td> |
|||
<td>466 MHz</td> |
|||
<td>1 GB</td> |
|||
<td>40-120 GB</td> |
|||
</tr> |
|||
<tr> |
|||
<td>Large</td> |
|||
<td><150</td> |
|||
<td>1 GHz</td> |
|||
<td>1 GB</td> |
|||
<td>320-750 GB</td> |
|||
</tr> |
|||
</table> |
|||
Steps after upgrade: |
|||
See [[XS Recommended Hardware]] for more information. |
|||
* 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== |
|||
== Installing additional software == |
|||
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. |
|||
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 |
|||
With this extra option, Anaconda will recognise the old installation and will offer to upgrade. |
|||
=Keeping your XS software up to date= |
|||
Steps after upgrade: |
|||
Upgrading a server is done using the [http://linux.duke.edu/yum/ <tt>yum</tt>] package interface provided by Fedora. |
|||
* 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 |
|||
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: |
|||
chkconfig --level 345 postgresql off |
|||
chkconfig --add pgsql-xs |
|||
yum -y upgrade |
|||
=Upgrading 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 the (preselected) 'Install with kickstart' option, 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. |
|||
Notes: |
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 = |
|||
* Right after the upgrade, you '''must''' re-run the /etc/sysconfig/olpc-scripts/domain_config script with the appropriate domain name for the machine. |
|||
* [[XS Techniques and Configuration]] |
|||
* 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. |
|||
* [[XS Troubleshooting]] |
|||
== See also == |
|||
* [[XS Server Installation]] |
|||
[[Category:SchoolServer]] |
[[Category:SchoolServer]] |
Latest revision as of 21:56, 5 August 2013
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.
- 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.
- "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.
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
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.