Differences between revisions 34 and 46 (spanning 12 versions)
Revision 34 as of 2008-02-05 11:33:29
Size: 11716
Editor: ?elb
Comment:
Revision 46 as of 2009-11-27 14:38:51
Size: 12512
Comment:
Deletions are marked like this. Additions are marked like this.
Line 6: Line 6:

[[TableOfContents(2)]]
<<TableOfContents(2)>>

= Important note =

/!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\


/!\ This page is obsolete (based on Debian Edu/Etch). The most recent manual for network clients (related to Debian Edu/Lenny) is located at http://wiki.debian.org/DebianEdu/Documentation/Lenny/HowTo/NetworkClients and get rid of this page altogether (cf. [http://wiki.debian.org/DebianEdu/Documentation/Lenny/HowTo/NetworkClients#Howtosetupandconfiguredisklessworkstations Chapter: How to set up and configure diskless workstations])

/!\ The old page for etch can be found at http://wiki.debian.org/DebianEdu/HowTo/LtspDisklessWorkstation-etch

= Confirmation =
These people have followed these instructions successfully:

## please enter your name here!
|| Name || Date || Remark ||
||Valerio Pachera||19/10/2008|| ref. also to his posting to d-e-mailinglist on 12.11.2008 11:46 ||
Line 20: Line 35:
Line 24: Line 38:
 * fans means moving parts, moving parts means higher risk of hardware failure. a thinclient is less likely to display the aging syndroms that regular pc's experience. Like the noise from a worn out fan. Expect slightly more hardware issues with diskless workstations then you do with thinclients with no moving parts. That said hardware manufacturor are now making new pc's usable as diskless (LowFat) workstations with no moving parts and low power consumtion.    * fans means moving parts, moving parts means higher risk of hardware failure. a thinclient is less likely to display the aging syndroms that regular pc's experience. Like the noise from a worn out fan. Expect slightly more hardware issues with diskless workstations then you do with thinclients with no moving parts. That said hardware manufacturor are now making new pc's usable as diskless (LowFat) workstations with no moving parts and low power consumtion.
Line 28: Line 41:
   * a regular skolelinux setup with tjener and preferably internet access
   * a fresh installed skolelinux terra/etch thin client server, that you want to run diskless workstations from (this server is promoted as "next-server" by tjener's dhcp)
   * combined server work fine (You must not edit pxelinux.cfg/default and in dhcpd.conf you must only enable your workstations).
    * swap on each diskless workstation is recommended. Schools has experienced that clients with 256 MB RAM freezes when swap is not enabled. Swap can be run on the server or on local hard drive
    * /!\ enough space on /opt? It need to be at least 3.5 GiB.
    * /!\ enough space on /var? the apt cache must be able to store all the packages you download. 
   * /!\ patience and enough time. The ltsp-make-client script downloads and installs the complete Debian Edu into your chroot
   {{{
    lvextend --size +1G /dev/vg_system/opt 
  * a regular skolelinux setup with tjener and preferably internet access
  * a fresh installed skolelinux terra/etch thin client server, that you want to run diskless workstations from (this server is promoted as "next-server" by tjener's dhcp)
  * combined server work fine (You must not edit pxelinux.cfg/default and in dhcpd.conf you must only enable your workstations).
  * swap on each diskless workstation is recommended. Schools has experienced that clients with 256 MB RAM freezes when swap is not enabled. Swap can be run on the server or on local hard drive
  * /!\ enough space on /opt? It need to be at least 3.5 GiB.
  * /!\ enough space on /var? the apt cache must be able to store all the packages you download.
  * /!\ patience and enough time. The ltsp-make-client script downloads and installs the complete Debian Edu into your chroot
  {{{
    lvextend --size +1G /dev/vg_system/opt
Line 40: Line 53:
   * Because the CDs and DVD is not signed, one need to use network APT sources.
    * Add the security repository.
  * Because the CDs and DVD is not signed, one need to use network APT sources.
  * Add the security repository.
Line 48: Line 61:
Line 51: Line 65:
 1.#4 [optional] the next point is the breaking point of the operation. if it fails you have a semi broken chroot. so i usualy tar up the /opt/ltsp directories to make it easier to try the script several times. 
 1. Then run the command `/usr/sbin/ltsp-make-client` This will adapt your chroot `/opt/ltsp/i386` to diskless workstation, and install the packages needed for a workstation there. If it fails for some reason you can delete the broken chroot and restore the orginal from your tarfile and try again with `sh -x /usr/sbin/ltsp-make-client` to get a more verbose output. (run outside the chroot). [[BR]]
/!\ This command downloads and installs a complete debian installation into your chroot, so it can take a very long time. [[BR]]
/!\ you can only run this script once, if it breaks you must restore your tarfile or recreaet the chroot with ltsp-build-client, or debian-edu-ltsp.  
 1. [optional] the next point is the breaking point of the operation. if it fails you have a semi broken chroot. so i usualy tar up the /opt/ltsp directories to make it easier to try the script several times.
 1. Then run the command {{{/usr/sbin/ltsp-make-client}}} This will adapt your chroot {{{/opt/ltsp/i386}}} to diskless workstation, and install the packages needed for a workstation there. If it fails for some reason you can delete the broken chroot and restore the orginal from your tarfile and try again with {{{sh -x /usr/sbin/ltsp-make-client}}} to get a more verbose output. (run outside the chroot). <<BR>> /!\ This command downloads and installs a complete debian installation into your chroot, so it can take a very long time. <<BR>> /!\ you can only run this script once, if it breaks you must restore your tarfile or recreaet the chroot with ltsp-build-client, or debian-edu-ltsp.
Line 57: Line 68:
{{{ 
{{{
Line 59: Line 71:
debian-edu-archive-keyring ltspfsd   debian-edu-archive-keyring ltspfsd
Line 63: Line 74:
}}}   }}}
Line 69: Line 79:
Line 71: Line 80:
Line 73: Line 81:
Line 85: Line 92:
Line 88: Line 94:

Then you are ready to run ltsp-make-client, and here you have
#example of a verbose installation, with log in /var/tmp/ltsp-make-client.log
Then you are ready to run ltsp-make-client, and here you have #example of a verbose installation, with log in /var/tmp/ltsp-make-client.log
Line 94: Line 99:
    /!\ if you run this with bash you will end up with a minor bug in /etc/dhcpd3/dhcpd.conf. The default dash shell in Skolelinux-3.0 works fine.
 1.#5 add `nfsroot=/opt/ltsp/i386` to the end of the append line in `/var/lib/tftpboot/ltsp/i386/pxelinux.cfg/default`
    * if you don't you'll get an error on the client about not being able to mount /var/lib
 . /!\ if you run this with bash you will end up with a minor bug in /etc/dhcpd3/dhcpd.conf. The default dash shell in Skolelinux-3.0 works fine.
 1. add {{{nfsroot=/opt/ltsp/i386}}} to the end of the append line in {{{/var/lib/tftpboot/ltsp/i386/pxelinux.cfg/default}}}
  * (only for Etch, drop this step for Lenny:) If you don't you'll get an error on the client about not being able to mount /var/lib
Line 98: Line 103:
   * a next-server line pointing to the server serving diskless workstation root. ie the ltsp-server where you ran ltsp-make-client (see the example below)
    * remember to restart the dhcp service
  * a next-server line pointing to the server serving diskless workstation root. ie the ltsp-server where you ran ltsp-make-client (see the example below)
  * remember to restart the dhcp service
Line 101: Line 106:
   * The same client can function as thinclient or diskless workstation, depending on where you connect it. 10.0.2.0/23 for workstations, 192.168.0.0/24 for thin clients.   * The same client can function as thinclient or diskless workstation, depending on where you connect it. 10.0.2.0/23 for workstations, 192.168.0.0/24 for thin clients.
Line 103: Line 108:
Line 104: Line 110:
   * if all went well you should be looking at the kdm login screen      * if all went well you should be looking at the kdm login screen
Line 106: Line 112:
    /!\ keep in mind your diskless workstations need to be added to your ldap netgroups, just like any other workstation. Otherways it wont be able to mount your HOME dir, and you won't be able to login. For do it, open LWAT / Add machines; insert the mac address of the client network card and the same host name used in the dhcp.conf file (in the example below is "static04"). The athers fields are completed automaticcally. After that you have to wait few minutes or restart the NSCD daemon (didn't test yet, rebooting it works).
  . /!\ keep in mind your diskless workstations need to be added to your ldap netgroups, just like any other workstation. Otherways it wont be able to mount your HOME dir, and you won't be able to login. For do it, open LWAT / Add machines; insert the mac address of the client network card and the same host name used in the dhcp.conf file (in the example below is "static04"). The athers fields are completed automaticcally. After that you have to wait few minutes or restart the NSCD daemon (didn't test yet, rebooting it works).
Line 109: Line 114:
{{{  {{{
Line 111: Line 116:
Line 114: Line 118:
Line 117: Line 120:
Line 119: Line 121:

}}}
}}}
Line 124: Line 124:
{{{
# 50 workstations are defined as static00 to static49 on 10.0.2.50-99 

{{{
# 50 workstations are defined as static00 to static49 on 10.0.2.50-99
Line 129: Line 130:
Line 136: Line 138:
   # next-server tjener; # for a combi server     # next-server tjener; # for a combi server
Line 140: Line 142:
Line 149: Line 150:

Network swap is turned on as default in Etch. But the size of it is rather small. If needed the size of it can be easely changed.
   *You need to add a line: SIZE=xxx to /etc/ltsp/nbdswapd.conf on your ltspserver ;xxx is your preferable size of swap in MB. After a restart of the diskless klient the new amount of swap is applied.
   *Have in mind the memoryusage on you partition /var/opt/ltsp/swapfiles. If needed resize it:
   {{{
Network swap is turned on as default in Etch. But the size of it is rather small. If needed the size of it can be easely changed.

 * You need to add a line: SIZE=xxx to /etc/ltsp/nbdswapd.conf on your ltspserver ;xxx is your preferable size of swap in MB. After a restart of the diskless klient the new amount of swap is applied.
 * Have in mind the memoryusage on you partition /var/opt/ltsp/swapfiles. If needed resize it:
 {{{
Line 156: Line 157:
   }}}     }}}
Line 159: Line 160:
Line 164: Line 164:
Line 166: Line 165:
Line 168: Line 166:
   *You need to make a swap partition on your hard drive. Use any linux installation and choose manual partition when prompted. Make a swap partition of desired size and a small /-partition (only the size needed to be allowed to continue installing). Finish off the partitioning and break out of the install when the formatting is done. Any other method to make a linux swap partition is also ok.
   *Next you enable local swap by adding a line USE_LOCAL_SWAP=Y to the [Default] section in /opt/ltsp/i386/etc/lts.conf on your ltspserver. Remember to turn off central swap by using the line NBD_SWAP=N in the same file.
   *A restart of the client will change the swap automatically.

* You need to make a swap partition on your hard drive. Use any linux installation and choose manual partition when prompted. Make a swap partition of desired size and a small /-partition (only the size needed to be allowed to continue installing). Finish off the partitioning and break out of the install when the formatting is done. Any other method to make a linux swap partition is also ok.
 * Next you enable local swap by adding a line USE_LOCAL_SWAP=Y to the [Default] section in /opt/ltsp/i386/etc/lts.conf on your ltspserver. Remember to turn off central swap by using the line NBD_SWAP=N in the same file.
 * A restart of the client will change the swap automatically.
Line 173: Line 171:
Line 179: Line 176:
Line 181: Line 177:


{{{
chroot /opt/ltsp/i386 
{{{
chroot /opt/ltsp/i386
Line 189: Line 183:
## mount /proc do we need it after chroot?

Then you must prepare the system to use the new kernel
Then you must prepare the system to use the new kernel.
Exit from the the chroot and run
Line 195: Line 189:
Line 197: Line 190:
Line 200: Line 194:
remember to append "nfsroot=/opt/ltsp/i386" to the file "/var/lib/tftpboot/ltsp/i386/pxelinux.cfg/default" that got overwritten (see previous example ).
Line 203: Line 198:
Line 205: Line 199:
With Skolelinux 3.0r0 auto mounting of CD-ROMs though KDE (via popup window) does not correctly.
When selecting "Open in new Window" KDE will complain that the file system did not match.
A fix is being worked on, until then use pmount:
With Skolelinux 3.0r0 auto mounting of CD-ROMs though KDE (via popup window) does not correctly. When selecting "Open in new Window" KDE will complain that the file system did not match. A fix is being worked on, until then use pmount:
Line 213: Line 205:
Line 216: Line 207:
= Confirmation =
These people have followed these instructions successfully:


## please enter your name here!
|| Name || Date || Remark ||
|| || || ||
Line 225: Line 209:
Line 229: Line 212:
CategoryHowto  CategoryHowto

Important note

/!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\

/!\ This page is obsolete (based on Debian Edu/Etch). The most recent manual for network clients (related to Debian Edu/Lenny) is located at http://wiki.debian.org/DebianEdu/Documentation/Lenny/HowTo/NetworkClients and get rid of this page altogether (cf. [http://wiki.debian.org/DebianEdu/Documentation/Lenny/HowTo/NetworkClients#Howtosetupandconfiguredisklessworkstations Chapter: How to set up and configure diskless workstations])

/!\ The old page for etch can be found at http://wiki.debian.org/DebianEdu/HowTo/LtspDisklessWorkstation-etch

Confirmation

These people have followed these instructions successfully:

Name

Date

Remark

Valerio Pachera

19/10/2008

ref. also to his posting to d-e-mailinglist on 12.11.2008 11:46

What

This page is suposed to become the instructions in how you can run Diskless workstations from a skolelinux3.0 installation. Diskless workstations are also marketed using the term "LowFat Clients" or "Halfthin Clients" or "stateless workstations".

A diskless workstation is similar to a thin client in that it boots from the network with pxe. But instead of running applications on the server and displaying them on the thin client screen with X. A diskless workstations mounts it's root file system from its next-server, and runs all applications on the local hardware. You can think about it like a regular workstation with a very long hard drive cable.

Why

  • to better utilize the power of your client hardware
  • to get a full workstation experience, with all local devices working correctly
  • but still maintain central configuration and no maintenance of the individual client.
  • lower the demands of the central server, or run more clients of the same server.
  • on a 100 Mbit/s network it's possible to run 150 diskless workstations compared to 50-60 thin client

why not

  • older hardware will be very slow as a (diskless) workstation, you should have a P3 800-1000Mhz with 256-512MB ram, or there about. Try for yourself and see if your hardware is powerful enough as a diskless workstation.
  • the workstations will require more horsepower, and will be more noisy then a thinclient. you will have CPU fan and PSU fan noise. I have yet to find a reasonably priced 100% silent computer with enough power. So you loose the 40 computers in a room and no noise experience you can get from thin clients.
  • fans means moving parts, moving parts means higher risk of hardware failure. a thinclient is less likely to display the aging syndroms that regular pc's experience. Like the noise from a worn out fan. Expect slightly more hardware issues with diskless workstations then you do with thinclients with no moving parts. That said hardware manufacturor are now making new pc's usable as diskless (?LowFat) workstations with no moving parts and low power consumtion.

How

  1. prerequisites
    • a regular skolelinux setup with tjener and preferably internet access
    • a fresh installed skolelinux terra/etch thin client server, that you want to run diskless workstations from (this server is promoted as "next-server" by tjener's dhcp)
    • combined server work fine (You must not edit pxelinux.cfg/default and in dhcpd.conf you must only enable your workstations).
    • swap on each diskless workstation is recommended. Schools has experienced that clients with 256 MB RAM freezes when swap is not enabled. Swap can be run on the server or on local hard drive
    • /!\ enough space on /opt? It need to be at least 3.5 GiB.

    • /!\ enough space on /var? the apt cache must be able to store all the packages you download.

    • /!\ patience and enough time. The ltsp-make-client script downloads and installs the complete Debian Edu into your chroot

          lvextend --size +1G /dev/vg_system/opt
          resize2fs /dev/vg_system/opt
  2. Edit /opt/ltsp/i386/etc/apt/sources.list.
    • Because the CDs and DVD is not signed, one need to use network APT sources.
    • Add the security repository.

deb http://ftp.skolelinux.org/debian/ etch main
deb http://ftp.skolelinux.org/skolelinux/ etch local
deb http://security.debian.org/ etch/updates main

and comment the first line with a '#' character like below:

# deb file:///cdrom etch main local
  1. [optional] the next point is the breaking point of the operation. if it fails you have a semi broken chroot. so i usualy tar up the /opt/ltsp directories to make it easier to try the script several times.
  2. Then run the command /usr/sbin/ltsp-make-client This will adapt your chroot /opt/ltsp/i386 to diskless workstation, and install the packages needed for a workstation there. If it fails for some reason you can delete the broken chroot and restore the orginal from your tarfile and try again with sh -x /usr/sbin/ltsp-make-client to get a more verbose output. (run outside the chroot).
    /!\ This command downloads and installs a complete debian installation into your chroot, so it can take a very long time.
    /!\ you can only run this script once, if it breaks you must restore your tarfile or recreaet the chroot with ltsp-build-client, or debian-edu-ltsp.

If you choose to recreate the chroot with debian-edu-ltsp, you should run

aptitude install sitesummary-client debian-edu-artwork debian-edu-artwork-usplash
debian-edu-archive-keyring ltspfsd
inside the chroot
before retrying ltsp-make-client.

Or, before you run the debian-edu-ltsp do the following:

make this file
/usr/share/ltsp/plugins/ltsp-build-client/Debian-custom/032-edu-pkgs
and have following line in it
case "$MODE" in
   configure)
         LATE_PACKAGES="$LATE_PACKAGES \
                        sitesummary-client \
                        debian-edu-artwork \
                        debian-edu-artwork-usplash \
                        debian-edu-archive-keyring \
                        ltspfsd"
         DEBCONF_SEEDS="$DEBCONF_SEEDS /usr/lib/debian-edu-install/defaults.ltsp-chroot"
         ;;
esac
And then run debian-edu-ltsp.

Then you are ready to run ltsp-make-client, and here you have #example of a verbose installation, with log in /var/tmp/ltsp-make-client.log

sh -x /usr/sbin/ltsp-make-client | tee /var/tmp/ltsp-make-client.log
  • /!\ if you run this with bash you will end up with a minor bug in /etc/dhcpd3/dhcpd.conf. The default dash shell in Skolelinux-3.0 works fine.

  • add nfsroot=/opt/ltsp/i386 to the end of the append line in /var/lib/tftpboot/ltsp/i386/pxelinux.cfg/default

    • (only for Etch, drop this step for Lenny:) If you don't you'll get an error on the client about not being able to mount /var/lib
  • edit your main dhcpd.conf file located on tjener.intern:/etc/dhcp3/dhcpd.conf, you'll need
    • a next-server line pointing to the server serving diskless workstation root. ie the ltsp-server where you ran ltsp-make-client (see the example below)
    • remember to restart the dhcp service
  • Connect your diskless workstation to your workstation network 10.0.2.0/23
    • The same client can function as thinclient or diskless workstation, depending on where you connect it. 10.0.2.0/23 for workstations, 192.168.0.0/24 for thin clients.

This is setup in the file /opt/ltsp/i386/etc/init.d/ltsp_set_runlevel If you want your diskless workstation on the 192.168.0.0/24 network, you may change this here

  1. boot your client.
    • if all went well you should be looking at the kdm login screen
  2. login and use your system
    • /!\ keep in mind your diskless workstations need to be added to your ldap netgroups, just like any other workstation. Otherways it wont be able to mount your HOME dir, and you won't be able to login. For do it, open LWAT / Add machines; insert the mac address of the client network card and the same host name used in the dhcp.conf file (in the example below is "static04"). The athers fields are completed automaticcally. After that you have to wait few minutes or restart the NSCD daemon (didn't test yet, rebooting it works).

Known Problem

1. When the installations come to a point it's stops, you have to press "ctrl+c" 6 times this must be repeted 4 or 5 time.
05.02.2008: This seems to be fixed.

2. If the thinclient not start up the X after the ltsp-make-client, you just have to add the following in the /opt/ltsp/i386/etc/lts.conf file
            SCREEN_07=ldm

example dhcpd.conf snippet

Search the section that start with the comment

# 50 workstations are defined as static00 to static49 on 10.0.2.50-99
# Provide a static address using dhcp by adding their MAC addresses here

And then edit one of the "host static" code like described here (remember to insert your own MAC address):

host static04 {
   hardware ethernet 00:00:00:00:00:00;
   fixed-address static04;
   filename "/var/lib/tftpboot/ltsp/i386/pxelinux.0";
   option root-path  "/opt/ltsp/i386";
   next-server ltspserver00;
   # next-server tjener; # for a combi server
}

example /var/lib/tftpboot/ltsp/i386/pxelinux.cfg/default

DEFAULT vmlinuz ro initrd=initrd.img quiet splash root=/dev/nfs ip=dhcp  nfsroot=/opt/ltsp/i386

(you can only add a boot option for booting a locally installed operating system)

This configuration has been tested and found to work properly.

Resizeing network Swap

Network swap is turned on as default in Etch. But the size of it is rather small. If needed the size of it can be easely changed.

  • You need to add a line: SIZE=xxx to /etc/ltsp/nbdswapd.conf on your ltspserver ;xxx is your preferable size of swap in MB. After a restart of the diskless klient the new amount of swap is applied.
  • Have in mind the memoryusage on you partition /var/opt/ltsp/swapfiles. If needed resize it:
       lvextend --size +xxG /dev/vg_system/var+opt+ltsp+swapfiles   ;xx is your needed amount of space.
       resize2fs /dev/vg_system/var+opt+ltsp+swapfiles

example /etc/ltsp/nbdswapd.conf

SWAPDIR=/var/opt/ltsp/swapfiles
SIZE=512

Using Local Swap

Sometimes it is preferable to use local swap partitions. This is easily done.

  • You need to make a swap partition on your hard drive. Use any linux installation and choose manual partition when prompted. Make a swap partition of desired size and a small /-partition (only the size needed to be allowed to continue installing). Finish off the partitioning and break out of the install when the formatting is done. Any other method to make a linux swap partition is also ok.
  • Next you enable local swap by adding a line USE_LOCAL_SWAP=Y to the [Default] section in /opt/ltsp/i386/etc/lts.conf on your ltspserver. Remember to turn off central swap by using the line NBD_SWAP=N in the same file.
  • A restart of the client will change the swap automatically.

example /opt/ltsp/i386/etc/lts.conf

[Default]
        USE_LOCAL_SWAP=Y
        NBD_SWAP=N

Upgrade Kernel

chroot /opt/ltsp/i386
aptitude update
aptitude install linux-image-2.6.18-4-486
exit

Then you must prepare the system to use the new kernel. Exit from the the chroot and run

/usr/sbin/ltsp-update-kernels

When using ltsp in Lenny you must also recreate the image:

/usr/sbin/ltsp-update-image

remember to append "nfsroot=/opt/ltsp/i386" to the file "/var/lib/tftpboot/ltsp/i386/pxelinux.cfg/default" that got overwritten (see previous example ).

Further Reading

Known Problems

With Skolelinux 3.0r0 auto mounting of CD-ROMs though KDE (via popup window) does not correctly. When selecting "Open in new Window" KDE will complain that the file system did not match. A fix is being worked on, until then use pmount:

pmount /dev/cdrom
pumount /dev/cdrom

05.02.2008: Mount of cdroms is working out of the box with Skolelinux 3.0r1.

Note

If this wiki page is moved, also the pointer in $svn/trunk/src/debian-edu-config/sbin/ltsp-make-client needs to be changed


  • ?CategoryHowto