/[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 - (show annotations) (download) (as text)
Wed May 12 08:47:32 2004 UTC (10 years, 5 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 <?xml version='1.0' encoding="UTF-8"?>
2 <!-- $Header: /home/cvsroot/gentoo/xml/htdocs/doc/en/ltsp.xml,v 1.7 2004/04/11 13:30:27 swift Exp $ -->
3 <!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 <mail link="lanius@gentoo.org">Heinrich Wendel</mail>
9 </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
21 <license/>
22
23 <version>1.5</version>
24 <date>May 12, 2004</date>
25 <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 <section>
101 <body>
102
103 <p>
104 After the emerge process has finished all services must be configured:
105 </p>
106
107 </body>
108 </section>
109 <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 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 </p>
120
121 <pre caption="/etc/conf.d/sysklogd">
122 SYSLOGD="-m 0 -r"
123 KLOGD="-c 3 -2"
124 </pre>
125
126 </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 <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
193 <p>
194 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 </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 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 </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 <pre caption="start dhcp">
299 # <i>rc-update add dhcp default</i>
300 # <i>/etc/init.d/dhcp start</i>
301 </pre>
302
303 <note>
304 DHCPD needs CONFIG_PACKET and CONFIG_FILTER activated in the kernel to work.
305 </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 <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 </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 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 <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 <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 </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 <pre caption="Write floppy image">
406 # <i>cat nicfile.lzdsk > /dev/fd0</i>
407 </pre>
408
409 </body>
410 </section>
411 </chapter>
412
413 <chapter>
414 <title>Troubleshooting</title>
415 <section>
416 <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 </section>
434 </chapter>
435
436 <chapter>
437 <title>FAQ</title>
438 <section>
439 <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 <b>Q:</b> In some applications the fonts look crappy, what to do?
479 </p>
480
481 <p>
482 <b>A:</b> You have to setup the XFontServer, add <c>USE_XFS=Y</c> to your
483 <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 <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 </p>
490
491 <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 </body>
501 </section>
502 </chapter>
503
504 <chapter>
505 <title>Glossary</title>
506 <section>
507 <body>
508
509 <p>
510 <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 graphical or character based terminals on a GNU/Linux server."
513 </p>
514
515 <p>
516 <b><uri link="http://www.webopedia.com/TERM/P/PXE.html">PXE</uri></b>
517 "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 </p>
524
525 </body>
526 </section>
527 </chapter>
528 </guide>

  ViewVC Help
Powered by ViewVC 1.1.20