![]() |
|
#1
|
|||
|
|||
|
Posted 31 Aug 2007 Debian 4: How to Install LTSP 5 with Etherboot Floppy Workstations Introduction 1--Preparing your Server for the Installation of LTSP 2--Installing LTSP 3--Personalizing the Generic LTSP Files 4--Etherboot Image Booting - Part 1: Configuring the Server 5--Etherboot Image Booting - Part 2: Configuring the LTSP Workstation 6--Installation Notes 7--Sample LTSP Files 8--References ~~~~~~~~ Introduction ~~~~~~~~ "Dot-Zero" software. Gleefully anticipated by those who desire change. Feared by those who prize reliability. Debian's newest version of LTSP -- LTSP 5 "Dot-Zero" -- meets all such expectations. For the optimists LTSP 5 delivers greatly improved installation. The counter-intuitive installation menu is gone; not even one of the trendy new graphic installers is employed. Manual configuration of files has been reduced to only two files, "exports" and "dhcpd.conf". But the pessimists' fears have also come true. Debian LTSP 5 contains a bug, the "nfsmount: need a path" error. The error results in intermittent failure of PXE workstations and complete failure of etherboot floppy workstations. This is probably the reason that Debian's LTSP 5 wiki installation instructions cover only PXE workstation setup (Reference #1). Addendum, 16 June 2008, by Castaway: Debian's LTSP wiki page has been recently updated. For the first time since the release of Debian Etch and LTSP 5 over a year ago, the wiki contains a reference to etherboot workstations. The wiki now states that there are problems with "older versions" of etherboot which must be resolved with "additional configuration." No solutions are given. However -- with minor changes of several Debian files -- it is possible to have an LTSP 5 network using etherboot image workstations. And they are more reliable than their PXE counterparts. Despite this, LTSP 5 should still be considered as a work in progress. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1--Preparing your Server for the Installation of LTSP 5 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1. Install Debian Etch 4.0r1. 2. Assign your server a static address. The setup instructions in this article assume that 192.168.2.150 is the server's IP address. ** If you want to use the Gnome desktop environment, accept the preselected items "Desktop Environment" and "Standard System". ** If you want a "lean & mean" installation, do not install the "Desktop" and "Standard" packages. Instead you might choose to install icewm: apt-get install icewm icemc gedit eterm less xfe apt-get install xorg xscreensaver msttcorefonts gdm apt-get install iceweasel gnome-utils mtools gzip unzip ~~~~~~~~~~~ 2--Installing LTSP ~~~~~~~~~~~ 1. Obtain the LTSP installation files: apt-get install ltsp-server-standalone openssh-server 2. Install the LTSP chroot files: ltsp-build-client ~~~~~~~~~~~~~~~~~~~~~~~~ 3--Personalizing the Generic LTSP Files ~~~~~~~~~~~~~~~~~~~~~~~~ 1. Modify /etc/exports. Add the following text at the end of the file. Note that there is no space between the asterisk and the parenthesis. (If you insert a space you will give everyone on the web access to this directory.) "/opt/ltsp *(rw,no_root_squash,async,no_subtree_check)" {do not enter quotation marks} 2. Modify /etc/dhcp3/dhcp.conf: Copy the contents of the sample dhcpd.conf found in the "Sample LTSP Files" chapter. Replace the data in your server's dhcpd.conf by pasting the copied data into the file in its stead. Finally, replace all IP addresses with those from your own network. Restart the dhcp daemon: /etc/init.d/dhcp3-server restart If major errors are present in dhcpd.conf, the daemon will not load it; minor errors will not be detected. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 4--Etherboot Image Booting - Part 1: Configuring the Server ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ LTSP 5 is now completely installed -- at least it is according to the Debian directions. But if you try to boot a PXE workstation or an etherboot floppy workstation you will encounter intermittent "nfsmount: need a path" errors. The "need a path" error can be minimized by modifying several configuration files. If you are unsure of where to insert new text into a file, locate that file in the "Sample LTSP Files" chapter. The new text is identified in red. Modify your "official" LTSP 5 installation as follows: 1. Revise /etc/inetd.conf: Scroll down to the entry for "tftp". At the end of the line -- but not on a new line -- enter the following text: "-r blksize" {do not enter quotation marks} Inetd will automatically process this file change when you reboot your workstation. {Reference #2} 2. Create an /opt/ltsp/i386/etc/lts.conf file. Lts.conf is not routinely installed by LTSP 5. We use it here to enforce default values for the workstation's graphics adapter and desktop screen resolution. Our lts.conf file will correct two installation problems: (1) an nvidia display adapter (GeForce 4MX-4000) which crashes as it attempts to display the desktop at a resolution of 1200x1040; and (2) an ati (Radeon 7000) adapter which must be treated as a vesa display adapter and must also be prevented from automatically displaying at 640x480. Create the file by manually typing the data into a newly opened file. Use the copy of lts.conf found in the "Sample LTSP Files" chapter as your guide. Do not copy and paste. If you do, the file will not work. 3. Run the following command: /usr/sbin/ltsp-update-sshkeys (I have added this command as the last step in case you performed the above tasks out of sequence and assigned your server a static IP address after installing LTSP.) 4. Reboot your server. The reboot will start the daemons installed by LTSP and will also force Linux to reread your newly revised files. reboot -n ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 5--Etherboot Image Booting - Part 2: Setting Up the LTSP Workstation ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1. Obtain an etherboot image for your workstation floppy. The easiest image to use is the Thinclient multi-rom etherboot floppy image. (See "Installation Notes" chapter, section 7.) If one of its images matches your NIC, the floppy will boot your workstation. Download the multi-rom etherboot image from: http://sourceforge.net/project/showf...id=80408<br /> At the bottom of the page navigate to "thinstation contrib > Universal network boot floppy/cd/hd > BootDisk522b.zip". Do not mistakenly download "network_boot_floppy+cd+hd_540.zip"; it will not work. Extract the zipped image. Now skip to Step #2 below and copy the Thinstation image to a floppy disk. Then continue on with Step #3. ******************* If the Thinclient etherboot image does not work, you will need to identify your workstation's NIC chip before searching for an etherboot image: (1) Detect the manufacturer of the NIC in your workstation. __1. If you are already running Linux on the computer that is going to be your workstation, obtain lspci and run the following commands: apt-get install pciutils lspci lspci -n The output will give the device ID, the manufacturer of the network card, and its model number. See the following post for additional help: www.mepis.org/docs/en/index.php/LTSP_Server If you do not already have Linux on the computer, then boot a live cd such as Knoppix, Mint, or grml. Then run lspci. __2. If Windows XP is installed on the workstation, download the program UnknownDevices.zip from: http://halfdone.com/ukd/ Unzip UnknownDevices.zip in its own directory and run it. Search through the device listings until you find the NIC listing for your network card. (Note this program will not run in Windows Vista.) In Windows Vista, click "Control Panel > System > Hardware > Device Manager > Network Adapters". Then left click "Network Adapters"; right click on your "adapter's name"; choose "Properties" and click "Details". (2) Download the specific floppy disk image for your NIC. __1. Debian etherboot images. Debian is currently the only source for individual etherboot images that can be used with LTSP 5. ___(1) Obtain the etherboot images from the Debian repository: apt-get install etherboot ___(2) Search through the /usr/share/etherboot directory. Look for the DSK.GZ version of the NIC image you need. (ZDSK and ELF images can also be used. Note that the Debian COM versions are not usable: they act like romomatic etherboot images.) cd /usr/share/etherboot ls -l |more ___(3) Extract the DSK image from its archived GZ version. gunzip <NIC-Name>.dsk.gz ___(4) Skip to Step #2 below and copy the DSK image to a floppy disk. __2. Romomatic etherboot images. Romomatic.org used to be another source for etherboot images. However, at the present time romomatic ZDSK images will not work with LTSP 5 although they can still be used with LTSP 4.X. (See the "Installation Notes" chapter for details.) ******************* 2. Copy the etherboot image to a floppy disk. Note that this is a totally different process than copying a file to a floppy disk. Copy your Thinstation or Debian etherboot image as follows: dd if=/<path>/<NIC-name>.dsk of=/dev/fd0 bs=1k 3. Test your etherboot image. 1) First boot the LTSP server. 2) Next insert the etherboot image floppy in your workstation. Be sure the workstation BIOS is set to boot from the floppy drive first. With your server running and the gdm login screen visible (you do not need to be logged in), boot the workstation. If successful, the scrolling of text on the display screen will culminate with the LTSP login screen. The booting process may momentarily hang with a "time out" warning. Generally within 20-25 seconds the workstation will then resume loading the LTSP files. Future boots will not hang. If on the first boot, booting does not resume after the "time out" warning, reboot the workstation. The reboot attempt should be successful. 4. How to boot your workstation if no etherboot image is available. If the Thinstation multi-boot floppy did not contain an image compatible with the NIC in your workstation, nor did the Debian etherboot collection contain the necessary image, then you can try booting with PXE if your motherboard provides that option. (Unfortunately, in my experience, many of the motherboards that claim to have the ability to PXE-boot cannot PXE-boot.) An alternate option is to install a network card, compatible with one of the Thinstation multiboot NIC images or Debian images, in each of your LTSP network computers. See the "Installation Notes" chapter, Section 7, for a listing of NIC images in the Thinstation multiboot floppy disk image. ~~~~~~~~~~~~~ 6--Installation Notes ~~~~~~~~~~~~~ 1. Equipment Used during LTSP 5 Tests. My LTSP 4.1 network server and etherboot floppy workstations (Reference #5) served as the test bed for the LTSP 5 installation described above. In addition to the computers the network is comprised of switches, a cable modem, router, and a jetdirect LaserJet printer. Network cards used were the D-Link 530TX+ and Belkin F5D5000 which contain RealTek 8139 chips. Two computers were used for PXE-booting tests, one with a motherboard containing an nForce3 250 lan; another with a motherboard containing a via VT6102 lan (via Rhine II). Neither of the PXE-booting workstations was able to complete a successful LTSP 5 boot. The lans in the PXE-booting computers were turned off, the RealTek NICs were installed, and the PXE-booting workstations were used as etherboot floppy workstations. 2. Different Versions of LTSP5. I have commented on the various versions of LTSP 5 elsewhere (Reference #6). The "need a path" error is present in versions of LTSP 5 from both the Ubuntu Feisty Fawn and Debian Etch repositories. It is not present when LTSP 5 is directly installed from the Edubuntu 4.02 cd. Examination of various Edubuntu files discloses none of the hacks cited above: the Edubuntu developers have circumvented the error with other modifications. 3. Modifications Which May Work for You. The following modifications, used by themselves, did not prevent the "need a path" error in my LTSP 5 installation. They are listed here for you to try should you find the procedure posted above does not work with your hardware. (Remember to reboot after making any of these changes.) (1) Modify etc/sysctl.conf. At the end of the file -- on a separate line -- add the following text: "net/ipv4/ip_no_pmtu_disc=1" {do not enter quotation marks} (Reference #2) (2) Modify /var/lib/tftpboot/ltsp/i386/pxelinux.cfg/default. (This modification is for PXE booting only.) Add the following text to the end of the "option=" line: "-r blksize" {do not enter quotation marks} Other references contained modifications which were not acceptable to the operating system. In one situation (Reference #7) the dhcp daemon refused to load the modified dhcpd.conf file. 4. Network Cards. If you are going to use floppy etherboot images, use only one brand and model of NIC. Then you will need to search for a usable boot image only once. If you decide to use a plugin NIC to replace a defective lan chip built into a motherboard, you must turn off the lan on the motherboard. Otherwise the LTSP workstation will try to use both NICs at the same time. 5. Routers and switches. These can also be the source of "need a path" errors. I have previously discussed the problems caused by accessory hardware (Reference #8). 6. Etherboot Images. The romomatic etherboot images crash early in the workstation's boot process because of defects in the NBI kernel image installed by LTSP 5. To circumvent this I created new NBI and ELF kernel images with different "append" and "command" parameters which I had hoped would prevent the "need a path" error (References #3 & #4). The new NBI and ELF kernel images did allow the workstations to boot to, or boot past the "need a path" error point. But successful boots were erratic with a success rate of 11 out of 15 attempts. (In contrast the Thinstation and Debian etherboot images have success rates of 15 out of 15 attempts -- and they do not require a new kernel image.) 7. Contents of the Thinstation BootDisk522b.zip Disk. The following etherboot images are present in the Thinstation multiboot image: PCI CARDS: 3c90x, 3c595, cs89x0, davico, depca, e1000, eepro, eepro100, epic100, fa311, natsemi, ns8390, pcnet32, prism2_pci, prism2_plx, rtl8139, sis900, sk_g16, sundance, tg3, tlan, tulip, via-rhine, w89c840. ISA CARDS: 3c503, ne, wd, 3c529, 3c509, smc9000. ~~~~~~~~~~~~~ 7--Sample LTSP Files ~~~~~~~~~~~~~ The following files are from my LTSP 5 server. Use them as samples of where to add new text to your server's files. The new text is marked in red. Do not copy the text of a sample file and paste the text into a new file on your server: several of the sample files are sensitive to formatting codes generated during such a copying process. Although the formatting codes do not display on the screen, Linux will detect them and either read the file incorrectly or simply refuse to read it. Fortunately dhcpd.conf is the exception: codes inserted in it by the copying process are ignored. Copy text from the sample dhcpd.conf file and paste the text into a new file and save it. Dhcpd.conf contains so many punctuation symbols that one cannot type the text, proof read it, and find all the errors! Be sure to change the IP addresses in these files to your own IP addresses. 1. /etc/network/interfaces Code:
###############
# /etc/network/interfaces -- LTSP VERSION
#
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
allow-hotplug eth0
iface eth0 inet static
address 192.168.2.150
netmask 255.255.255.0
network 192.168.2.0
broadcast 192.168.2.255
gateway 192.168.2.1
#
##############
Code:
####### # /etc/exports -- LTSP VERSION # /opt/ltsp *(rw,no_root_squash,async,no_subtree_check) # ######### Copy the text of this sample file and paste it into a new file. Do not try to type it! Code:
########
# /etc/dhcp3/dhcpd.conf -- CORRECTED LTSP-5 VERSION
# This file uses an IP address of 150 for your server.
# IP addresses 100-110 are used for your workstations.
# Comments, indicated by "<--(text)", show where specific
# modifications are required to adapt my version
# of dhcpd.conf to your own network. Most of the corrections
# entail entering your network's general address; some are
# the specific address on your network for a specific computer.
# Beware of "; { }" in the following text. If you erase one
# of these punctuation marks or type one in the wrong place,
# dhcpd.conf will *not* work.
# If you have a cable/router or dsl/router making dhcp assignments,
# you need to refer *non-LTSP* computers to the router for
# their IP address assignments. In this situation you must leave
# the following line as it is, commented *out*.
#authoritative;
subnet 192.168.2.0 netmask 255.255.255.0 { #<--your networks IP
range 192.168.2.100 192.168.2.110; #<--workstation IP range
option domain-name "MyLTSP.com"; #<--make up a name
option domain-name-servers 192.168.2.150; #<--LTSP server IP address
option broadcast-address 192.168.2.255; #<--your network IP address
option routers 192.168.2.1; #<--your router IP address
option subnet-mask 255.255.255.0;
if substring( option vendor-class-identifier, 0, 9 ) = "PXEClient" {
filename "/ltsp/i386/pxelinux.0";
}
else{
filename "/ltsp/i386/nbi.img";
}
option root-path "/opt/ltsp/i386";
next-server 192.168.2.150; #<--LTSP server IP address
}
#
########
The modifying text must be entered entirely by HAND. (Scroll to the right edge of the code box to find the new text.) Code:
############# # /etc/inetd.conf -- LTSP VERSION # --------------------------- snip --------------------- #:BOOT: TFTP service is provided primarily for booting. Most sites # run this only on machines acting as "boot servers." tftp dgram udp wait root /usr/sbin/in.tftpd /usr/sbin/in.tftpd -s /var/lib/tftpboot -r blksize #:RPC: RPC based services # --------------------------- snip ----------------------- # ################ The modifying text must be entered entirely by HAND. Code:
##### # /etc/sysctl.conf -- LTSP VERSION # # --------------------------- snip ------------------------ # Uncomment the next line to enable packet forwarding for IPv4 #net.ipv4.conf.default.forwarding=1 # Uncomment the next line to enable packet forwarding for IPv6 #net.ipv6.conf.default.forwarding=1 net/ipv4/ip_no_pmtu_disc=1 # ########## This text must be entered entirely by HAND. Do not copy and paste. Code:
############### # /opt/ltsp/i386/etc/lts.conf -- LTSP VERSION # [Default] XSERVER = vesa X_MODE_0 = 1024x768 # ######### 8--References ~~~~~~~~~ 1. http://wiki.debian.org/LTSP/Howto?highlight=%28ltsp%29 2. http://ubuntuforums.org/showthread.php?t=195956&page=3 3. https://help.ubuntu.com/community/Ub...EtherbootSetup 4. http://www.linuxjournal.com/article/7857 5. http://wiki.ltsp.org/twiki/bin/view/..._1_in_Debian_3 6. http://www.linuxagora.com/vbforum/showthread.php?t=749 7. http://ltsp.sourceforge.net/ltsp-4.1.1.html 8. http://wiki.ltsp.org/twiki/bin/view/...COMMENTS_NOTES Last edited by castaway; 06-17-2008 at 02:59 AM. |
![]() |
| Thread Tools | |
| Display Modes | |
|
|