K12Linux Live Server Quick Start Guide

Please visit k12linux.org for the latest version of these instructions.

Welcome to K12Linux Live Server. This media contains the Fedora operating system pre-configured to serve as a Linux Terminal Server Project (LTSP) server. This Live image is most useful for two purposes:

  1. Conveniently demo K12Linux server without installing anything on your hard drive. You can boot your server from a USB stick, and after some simple network configuration you can boot an entire network of diskless clients.
  2. Installing K12Linux onto the server hard drive for a permanent deployment. Use the "Install to Hard Drive" launcher on the Desktop. After installation, reboot into the installed operating system, then follow this guide to enable a permanent LTSP server.

K12Linux is preconfigured with LTSP services enabled and the client chroot installed in /opt/ltsp/i386. By default the LTSP services, including a preconfigured DHCP server, NFS server and PXE tftp, are served on a virtual bridge named ltspbr0. This guide describes how to dedicate an ethernet port to the bridge to serve LTSP on that interface.

While LiveDVD is possible, LiveUSB with persistent overlay is recommended because it is more efficient in RAM usage. Be warned that your overlay or ramdisk will fill up and the demo will fail after a while, so do not rely on this Live image for production services. For production use, please install K12Linux onto a real hard drive.

Setup Instructions

This Quick Start Guide explains how to quickly configure the server's networking to support thin clients. It assumes that the server has two wired network ports, or one wired port & one wireless. One interface, either wired or wireless, is for accessing the Internet on your normal network. The other interface, wired, is dedicated to serving an isolated network segment for thin clients. Other methods of configuration such as "Single Network Card" are more advanced and require manual configuration beyond the scope of this guide. Please see K12Linux.org or ask on our mailing list for more information about other ways to configure networking.

CAUTION: The bridge interface, ltspbr0, should only be connected to the network interface that is connected to an isolated switch serving the thin clients, such as a lab, as described below. It must not be connected to your regular network because it has a DHCP server running on it and can cause serious problems for your network.

  1. Upon booting the K12Linux server, NetworkManager has control over all network interfaces. This can be good if one Ethernet port has Internet access or if you want the wireless to connect to the Internet. After logging into the Live desktop, the NetworkManager icon in the top right panel will tell you if it already connected to the Internet and through which interface. If you have wireless, you can use this interface to connect to a wireless network at this time. Once you have done that, continue on to the next step.
  2. We need to edit the configuration so NetworkManager no longer controls the Ethernet interface serving the thin clients. Go to System -> Administration -> Network.
  3. In the Network Configuration window, click the "New" button.
  4. In the Device Type column, choose 'Ethernet connection' and then click the Forward button.
  5. Select the desired Ethernet card to serve your isolated LTSP network segment. Be absolutely sure that this interface is NOT the one currently in use to connect to the Internet. You can click on the NetworkManager icon to verify which interface is currently in use. Click the Forward button when you have highlighted the desired interface.
  6. Select "Statically set IP addresses:". DO NOT FILL OUT ANYTHING IN THESE FIELDS. Click the Forward button.
  7. A confirmation box will come up. Click the Apply button.
  8. You'll be back at the Network Configuration window, but now the Ethernet device you just added should be listed. Select that new device and click the Edit button.
  9. Be sure that "Controlled by NetworkManager" is unchecked, then click the OK button.
  10. In the Network Configuration window, make a note of the name in the Device column (the name in the Nickname column is probably the same) for the new device you just created. You'll need to know this name for the next step. In this guide, we will assume the device name is eth0.
  11. From the File menu, choose Save (Ctrl+S) to save the configuration.

    Next, you'll get a dialog box saying the changes have been saved, and suggesting that you reboot. Click the OK button but do not reboot at this time.

  12. Under the Applications menu, go to System Tools -> Terminal to bring up a command line.
  13. In the terminal window, type 'su - ' to become root. Then type 'gedit' and a graphical text editor will come up in a separate window.
  14. --->

  15. In the gedit window, click the Open button, and then in the Open Files window in the Places pane on the left, click File System; in the right pane, click 'etc', then 'sysconfig', then 'network-scripts'. (As you drill down, the path will be shown at the top of the window.) In the right pane, probably at or near the top, you should see a file called 'ifcfg-ethX' where the ethX part is the same as the Device Name mentioned in step 10; in this case, the file name is ifcfg-eth0. Select that file and click the Open button.
  16. Add BRIDGE=ltspbr0 to the bottom of the file. Save the file and exit from gedit.
  17. Back in the terminal window, type ifdown eth0; you may get a message saying "device eth0 is not a slave of ltspbr0"--you can ignore this. Next type ifup eth0 where eth0 is the name of the Device you created in step 10. (Yours may have a different name.) Then type brctl show to verify that this interface is attached to the ltspbr0 bridge.

  18. Now it's time to create a user ID that can be used for logging in on a thin client. If you're running K12Linux from a hard disk, you have already created at least one user ID during the installation; you can either skip to the end of the guide, or use the steps below to create more user IDs. (For more information on creating user IDs, see the Fedora Installation Guide.)

    By default, this K12Linux Quick Start Guide that you are reading will automatically appear on the desktop of any users you create. If you don't want this to happen, type the following in the terminal window:

    su -c "rpm -e k12linux-quick-start-guide"

    You may (or may not) be prompted for the root password. Close the terminal window when finished.

  19. Back on the Desktop, go to the System menu and choose Administration -> Users and Groups.
  20. In the User Manager window, click the Add User button and add a test user.
  21. Just use the default settings for this user. Once finished, close the User Manager window.

At this point that Ethernet interface should be serving PXE network bootable clients. If it does not work, please ask for help on the K12Linux mailing list or in the #ltsp chat channel on the Freenode IRC network. For the record, K12Linux uses LTSP version 5 on Fedora Linux.