/[gentoo]/xml/htdocs/doc/en/ltsp.xml
Gentoo

Contents of /xml/htdocs/doc/en/ltsp.xml

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.8 - (hide annotations) (download) (as text)
Wed May 12 08:47:32 2004 UTC (10 years, 3 months ago) by swift
Branch: MAIN
Changes since 1.7: +6 -4 lines
File MIME type: application/xml
#50445 - Mention FontPath directive in LTSP Guide

1 swift 1.1 <?xml version='1.0' encoding="UTF-8"?>
2 swift 1.8 <!-- $Header: /home/cvsroot/gentoo/xml/htdocs/doc/en/ltsp.xml,v 1.7 2004/04/11 13:30:27 swift Exp $ -->
3 swift 1.1 <!DOCTYPE guide SYSTEM "/dtd/guide.dtd">
4    
5     <guide link="/doc/en/ltsp.xml">
6     <title>Gentoo - LTSP Guide</title>
7     <author title="Author">
8 swift 1.2 <mail link="lanius@gentoo.org">Heinrich Wendel</mail>
9 swift 1.1 </author>
10     <author title="Author">
11     <mail link="josiah@ritchietribe.net">Josiah Ritchie</mail>
12     </author>
13     <author title="Editor">
14     <mail link="swift@gentoo.org">Sven Vermeulen</mail>
15     </author>
16    
17     <abstract>
18     This guide shows you how to setup a LTSP Server with Gentoo.
19     </abstract>
20 swift 1.6
21     <license/>
22    
23 swift 1.8 <version>1.5</version>
24     <date>May 12, 2004</date>
25 swift 1.1 <chapter>
26     <title>Introduction</title>
27     <section>
28     <title>What is LTSP?</title>
29     <body>
30     <p>
31     LTSP is an abbreviation for "Linux Terminal Server Project". Installed
32     on a server it can supply many workstations (so called thin-clients)
33     with identical environments. All applications run on the server and
34     therefore you can use old PCs and convert them into XTerminals. This
35     reduces costs and maintenance especially in an environment where you
36     need to have an uniform workspace on each computer you login, e.g. in
37     schools or firms.
38     </p>
39     </body>
40     </section>
41     </chapter>
42     <chapter>
43     <title>Installation</title>
44     <section>
45     <title>Preliminaries</title>
46     <body>
47     <p>
48     All of the examples in this document presume that your server's IP is
49     192.168.0.254, your domain is named yourdomain.com and your network is
50     192.168.0.0/24.
51     </p>
52     </body>
53     </section>
54     <section>
55     <title>Installation</title>
56     <body>
57    
58     <p>
59     First of all, you must have a working Gentoo system. Please read the
60     Gentoo Installation Manual for your architecture on <uri
61     link="http://www.gentoo.org/doc">Gentoo's Documentation Website</uri>.
62     </p>
63    
64     <p>
65     Then lets begin with the easiest step, installing the ltsp core
66     utils:
67     </p>
68    
69     <pre caption="Emerge LTSP">
70     # <i>emerge ltsp-core</i>
71     </pre>
72    
73     <p>
74     This will install the following packages as dependencies:
75     </p>
76    
77     <ul>
78     <li><b>XFree</b>: They are called XTerminals, guess why :)</li>
79     <li><b>DHCP</b>: DHCP is a protocol for automating the configuration of
80     computers that use TCP/IP, used by ltsp to distribute IPs to the
81     workstations.</li>
82     <li><b>NFS</b>: NFS is a protocol to allow access to harddisks through
83     the network, used by ltsp to mount a base system for the
84     workstations.</li>
85     <li><b>TFTP</b>: TFTP is a simple file transfer protocol, used by ltsp
86     to transfer the kernel to the workstations.</li>
87     <li><b>XINETD</b>: Xinetd is a powerful replacement for inetd, with
88     advanced features, used by ltsp to start tftp.</li>
89     </ul>
90    
91     <note>
92     If you have the kde/gnome useflag set, it will also install a complete kde/gnome system.
93     </note>
94    
95     </body>
96     </section>
97     </chapter>
98     <chapter>
99     <title>Configuration</title>
100 swift 1.6 <section>
101 swift 1.1 <body>
102    
103     <p>
104     After the emerge process has finished all services must be configured:
105     </p>
106    
107     </body>
108 swift 1.6 </section>
109 swift 1.1 <section>
110     <title>System Logger</title>
111     <body>
112    
113     <p>
114     To analyze problems easier, the system logger must be configured to
115     accept remote connections. Please read the documentation of your
116 swift 1.7 system logger on how to achieve this. If, for example, you are using
117     sysklogd, all you need to do is edit <path>/etc/conf.d/sysklogd</path> and add
118     "-r" to the SYSLOGD line:
119 swift 1.1 </p>
120    
121 swift 1.7 <pre caption="/etc/conf.d/sysklogd">
122     SYSLOGD="-m 0 -r"
123     KLOGD="-c 3 -2"
124     </pre>
125    
126 swift 1.1 </body>
127     </section>
128     <section>
129     <title>NFS</title>
130     <body>
131    
132     <p>
133     Next step is to edit your <path>/etc/exports</path> file, in order to
134     allow the workstations to mount the root filesystem. There should be at
135     least two lines in it:
136     </p>
137    
138     <pre caption="/etc/exports">
139     /opt/ltsp/i386 192.168.0.0/255.255.255.0(ro,no_root_squash,async)
140     /var/opt/ltsp/swapfiles 192.168.0.0/255.255.255.0(rw,no_root_squash,async)
141     </pre>
142    
143     <note>
144     You have to alter the network/netmask to match your network/netmask
145     settings.
146     </note>
147    
148     <p>
149     Now start NFS.
150     </p>
151    
152     <pre caption="Starting nfs">
153     # <i>rc-update add nfs default</i>
154     # <i>/etc/init.d/nfs start</i>
155     </pre>
156    
157     </body>
158     </section>
159    
160     <section>
161     <title>xinetd/tftp</title>
162     <body>
163 swift 1.7 <p>
164     TFTP requires a bit of configuring to get it to work properly. First,
165     edit <path>/etc/conf.d/in.tftpd</path> to set tftpd's path correctly:
166     </p>
167    
168     <pre caption="/etc/conf.d/in.tftpd">
169     INTFTPD_PATH="/tftpboot"
170     INTFTPD_OPTS="${INTFTPD_PATH}"
171     </pre>
172    
173     <p>
174     Next, configure xinetd to run TFTP and allow remote connections. First,
175     check to see if the file <path>/etc/xinetd.d/tftp</path> was created when
176     you emerged tftp. By default TFTP won't be started by xinetd, so to change
177     this edit <path>/etc/xinetd.d/tftp</path> and replace <c>disable=yes</c> with
178     <c>disable=no</c>.
179     </p>
180    
181     <pre caption="/etc/xinetd.d/tftp">
182     service tftp
183     {
184     disable = no
185     socket_type = dgram
186     protocol = udp
187     wait = yes
188     user = root
189     server = /usr/sbin/in.tftpd
190     }
191     </pre>
192 swift 1.1
193     <p>
194 swift 1.7 Now edit <path>/etc/xinetd.conf</path> and comment out the line <c>only_from = localhost</c> by prefacing it with a <c>#</c>. Finally, start xinetd.
195 swift 1.1 </p>
196    
197     <pre caption="Starting xinetd">
198     # <i>rc-update add xinetd default</i>
199     # <i>/etc/init.d/xinetd start</i>
200     </pre>
201    
202     </body>
203     </section>
204     <section>
205     <title>Name resolving</title>
206     <body>
207    
208     <p>
209     In order for the workstation to reach all resources, a correct name
210     resolving must be available. There are several ways to achieve this. One
211     is to configure a DNS server for the local network, the other (and more
212     simple) is to have almost identical <path>/etc/hosts</path> files on all
213     systems. We are going to use the latter.
214     </p>
215    
216     <p>
217     All workstations must be listed in <path>/etc/hosts</path>. Take a look
218     at the example:
219     </p>
220    
221     <pre caption="/etc/hosts">
222     127.0.0.1 localhost
223     192.168.0.254 server server.yourdomain.com
224     192.168.0.1 ws-1 ws-1.yourdomain.com
225     </pre>
226    
227     </body>
228     </section>
229     <section>
230     <title>DHCP Config</title>
231     <body>
232    
233     <p>
234     This is the most complicated step in my opinion, you have to create a
235     valid DHCP Config (<path>/etc/dhcp/dhcpd.conf</path>). Here is an
236     example:
237     </p>
238    
239     <pre caption = "dhcpd.conf">
240     <codenote>Some general options</codenote>
241     default-lease-time 21600;
242     max-lease-time 21600;
243     use-host-decl-names on;
244     ddns-update-style ad-hoc;
245    
246     <codenote>Bootp options</codenote>
247     allow booting;
248     allow bootp;
249    
250     <codenote>Network Options</codenote>
251     option subnet-mask 255.255.255.0;
252     option broadcast-address 192.168.0.255;
253     option routers 192.168.0.254;
254     option domain-name-servers 192.168.0.254;
255     option log-servers 192.168.0.254;
256     option domain-name "yourdomain.com";
257    
258     <codenote>LTSP Path Options</codenote>
259     option root-path "192.168.0.254:/opt/ltsp/i386";
260     filename "/lts/vmlinuz-2.4.19-ltsp-1";
261    
262     <codenote>If your workstations have ISA NICs uncomment the following</codenote>
263     <codenote>lines and alter the driver and IO</codenote>
264     #option option-128 code 128 = string;
265     #option option-129 code 129 = text;
266     #option option-128 e4:45:74:68:00:00;
267     #option option-129 "NIC=ne IO=0x300";
268    
269     shared-network WORKSTATIONS {
270     subnet 192.168.0.0 netmask 255.255.255.0 {
271     <codenote>Distribute dynamic IPs to the workstations</codenote>
272     range dynamic-bootp 192.168.1.1 192.168.1.16;
273     <codenote>Workstation specific configuration for PXE booting</codenote>
274     #host ws001 {
275     # hardware ethernet 00:E0:06:E8:00:84;
276     # fixed-address 192.168.0.1;
277     #}
278     }
279     }
280     </pre>
281    
282     <p>
283     If your workstations support PXE, you should list each one of them as we
284     have done with <e>host ws001</e> (don't forget to uncomment it). Don't
285     give them an adress in the dynamic range, otherwise it would be possible
286 swift 1.7 that more workstations have the same IP (which is troublesome). Remember, if you cut-n-paste the above example, replace any "//" comments with "##", or else dhcp will fail to start.
287 swift 1.1 </p>
288    
289     <p>
290     For more documentation on this item read the official dhcp handbook:
291     <uri>http://www.dhcp-handbook.com/</uri>
292     </p>
293    
294     <p>
295     Now start DHCP as you did with NFS and xinetd:
296     </p>
297    
298 swift 1.3 <pre caption="start dhcp">
299 swift 1.1 # <i>rc-update add dhcp default</i>
300     # <i>/etc/init.d/dhcp start</i>
301     </pre>
302    
303     <note>
304 swift 1.3 DHCPD needs CONFIG_PACKET and CONFIG_FILTER activated in the kernel to work.
305 swift 1.1 </note>
306    
307     </body>
308     </section>
309    
310     <section>
311     <title>LTSP Configuration</title>
312     <body>
313    
314     <p>
315     There are many options to configure your workstations, visit
316     <uri>http://www.ltsp.org/documentation/ltsp-3.0-4-en.html#AEN903</uri>
317     for a full description of <path>/opt/ltsp/i386/etc/lts.conf</path>.
318     </p>
319    
320 swift 1.7 <p>
321     As a few suggestions to get started, you will want to first copy <path>/opt/ltsp/i386/etc/lts.conf.example</path> to <path>/opt/ltsp/i386/etc/lts.conf</path> and edit it from there. You may want to try changing the <c>SCREEN_01</c> option to read
322     <c>SCREEN_01 = startx</c>. To use a USB mouse on the remote client, add the following MODULE lines, and change the X_MOUSE_* lines as follows:
323     </p>
324    
325     <pre caption="/opt/ltsp/i386/etc/lts.conf">
326     MODULE_01 = usb-uhci
327     MODULE_02 = mousedev
328     MODULE_03 = usbmouse
329     X_MOUSE_PROTOCOL = "IMPS/2"
330     X_MOUSE_DEVICE = "/dev/input/mice"
331     </pre>
332    
333 swift 1.1 </body>
334     </section>
335    
336     <section>
337     <title>Displaymanager</title>
338     <body>
339    
340     <p>
341     Now you have to change your displaymanager's configuration to
342     also accept remote connections.
343     </p>
344    
345     <p>
346 swift 1.5 First change your <path>Xaccess</path> file, uncomment the following line:
347     </p>
348    
349     <pre caption="Xaccess">
350     #* #any host can get a login window
351     </pre>
352    
353     <p>
354     Now change the configuration of the displaymanager you use:
355     </p>
356    
357     <p>
358 swift 1.1 <b>XDM</b>: In <path>/etc/X11/xdm/xdm-config</path> comment out <c>DisplayManager.requestPort: 0</c>
359     </p>
360    
361     <p>
362     <b>KDM</b>: In <path>/usr/kde/3.1/share/config/kdm/kdmrc</path> look
363     for the <c>[Xdmcp]</c> section and change <c>Enable = false</c> to
364     <c>Enable = true</c>.
365     </p>
366    
367     <p>
368     <b>GDM</b>: In <path>/etc/X11/gdm/gdm.conf</path> look for the
369     <c>[xdmcp]</c> section and change <c>Enable = false</c> to
370     <c>Enable = True</c>.
371     </p>
372    
373     <p>
374     Then start the displaymanager:
375     </p>
376    
377     <pre caption="Starting xdm">
378     # <i>rc-update add xdm default</i>
379     # <i>/etc/init.d/xdm start</i>
380     </pre>
381    
382     <warn>
383     There seem to be problems currently with XDM and GDM. The author used
384     KDM to resolve these issues.
385     </warn>
386    
387 swift 1.7 <p>
388     Remember, if your display manager is already running, restarting the X server via CTRL-ALT-BACKSPACE doesn't restart the display manager.
389     </p>
390    
391 swift 1.1 </body>
392     </section>
393    
394     <section>
395     <title>Creating a bootfloppy</title>
396     <body>
397    
398     <p>
399     If you workstations don't support PXE booting, you must create a
400     boot-floppy, which is needed to start your workstations. Go to
401     <uri>http://www.rom-o-matic.net/5.0.9/</uri>, select your NIC, press
402     <e>Get ROM</e> and write the image to a floppy:
403     </p>
404    
405 swift 1.3 <pre caption="Write floppy image">
406 swift 1.1 # <i>cat nicfile.lzdsk > /dev/fd0</i>
407     </pre>
408    
409     </body>
410     </section>
411     </chapter>
412    
413     <chapter>
414     <title>Troubleshooting</title>
415 swift 1.6 <section>
416 swift 1.1 <body>
417    
418     <p>
419     There are a lot of things that can be the source of trouble, but there
420     are also several resources around which help you solve your problems:
421     </p>
422    
423     <ul>
424     <li>The official documentation:
425     <uri>http://www.ltsp.org/documentation/</uri>, especially the
426     Troubleshooting section.</li>
427     <li>The gentoo IRC channel: irc.freenode.org #gentoo</li>
428     <li>The ltsp irc channel: irc.freenode.org #ltsp</li>
429     <li>The ltsp mailinglists <uri>http://ltsp.org/mailinglists.php</uri>
430     are full of some real good knowledge.</li>
431     </ul>
432     </body>
433 swift 1.6 </section>
434 swift 1.1 </chapter>
435    
436     <chapter>
437     <title>FAQ</title>
438 swift 1.6 <section>
439 swift 1.1 <body>
440     <p>
441     <b>Q:</b> My workstations have Pentium II CPUs, but my server is compiled
442     with <c>march=athlon-xp</c>, does this work?
443     </p>
444    
445     <p>
446     <b>A:</b> This is no problem, because all applications run on the server.
447     </p>
448    
449     <p>
450     <b>Q:</b> Which CPU and how much RAM should the server have?
451     </p>
452    
453     <p>
454     <b>A:</b> There is a good document with suggestions at
455     <uri>http://ltsp.org/documentation/server_suggestions.html</uri>.
456     </p>
457    
458     <p>
459     <b>Q:</b> Do you have more information about this PXE stuff?
460     </p>
461    
462     <p>
463     <b>A:</b> Yes, take a look at
464     <uri>http://ltsp.org/documentation/eproms.txt</uri>
465     and <uri>http://ltsp.org/documentation/pxe.howto.html</uri>.
466     </p>
467    
468     <p>
469     <b>Q:</b> Is it possibly to use 3D-Accelerated software on the workstations?
470     </p>
471    
472     <p>
473     <b>A:</b> If you are using NVidia cards take a look at
474     <uri>http://ltsp.org/documentation/nvidia.txt</uri>.
475     </p>
476    
477     <p>
478 swift 1.3 <b>Q:</b> In some applications the fonts look crappy, what to do?
479 swift 1.1 </p>
480    
481     <p>
482 swift 1.3 <b>A:</b> You have to setup the XFontServer, add <c>USE_XFS=Y</c> to your
483 swift 1.1 <path>lts.conf</path>, edit <path>/etc/X11/fs/config</path> and comment
484     <c>no-listen: tcp</c> out, replace <c>XFS_PORT="-1"</c> with
485     <c>XFS_PORT="7100"</c> in <path>/etc/conf.d/xfs</path> and start xfs:
486 swift 1.8 <c>/etc/init.d/xfs start</c>. Also doublecheck that
487     <path>/etc/X11/XF86Config</path> (or <path>/etc/X11/xorg.conf</path>) contains
488     <c>FontPath "unix/:7100"</c> in the Files-section.
489 swift 1.2 </p>
490    
491 swift 1.5 <p>
492     <b>Q: </b> How can I use the soundcard of my workstation?
493     </p>
494    
495     <p>
496     <b>A: </b> There is a ltsp-sound package in gentoo, for more instructions read
497     the included <path>README</path> file.
498     </p>
499    
500 swift 1.2 </body>
501 swift 1.6 </section>
502 swift 1.2 </chapter>
503    
504     <chapter>
505     <title>Glossary</title>
506 swift 1.6 <section>
507 swift 1.2 <body>
508    
509     <p>
510 swift 1.3 <b><uri link="http://www.ltsp.org">LTSP</uri></b>
511     "The LTSP provides a simple way to utilize low cost workstations as either
512 swift 1.2 graphical or character based terminals on a GNU/Linux server."
513     </p>
514    
515     <p>
516 swift 1.3 <b><uri link="http://www.webopedia.com/TERM/P/PXE.html">PXE</uri></b>
517 swift 1.2 "Short for Pre-Boot Execution Environment. Pronounced pixie, PXE is one of the
518     components of Intel's WfM specification. It allows a workstation to boot from
519     a server on a network prior to booting the operating system on the local hard
520     drive. A PXE-enabled workstation connects its NIC to the LAN via a jumper,
521     which keeps the workstation connected to the network even when the power is
522     off."
523 swift 1.1 </p>
524    
525     </body>
526 swift 1.6 </section>
527 swift 1.1 </chapter>
528     </guide>

  ViewVC Help
Powered by ViewVC 1.1.20