A hint: This file contains one or more very long lines, so maybe it is better readable using the pure text view mode that shows the contents as wrapped lines within the browser window.
1 <?xml version="1.0" encoding='ISO-8859-1'?> 2 <!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" 3 "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" 4 [ 5 <!ENTITY inetd "<application>inetd</application>"> 6 <!ENTITY xinetd "<application>xinetd</application>"> 7 ]> 8 9 <article> 10 <articleinfo> 11 <author><honorific>Dr</honorific><firstname>Cornelius</firstname><surname>Krasel</surname></author> 12 <author><firstname>Matthias</firstname><surname>Andree</surname> </author> 13 <title>Leafnode FAQ</title> 14 <copyright> 15 <year>2002</year> 16 <holder>Cornelius Krasel</holder> 17 </copyright> 18 <copyright> 19 <year>2002</year> 20 <year>2003</year> 21 <year>2004</year> 22 <year>2005</year> 23 <year>2006</year> 24 <year>2009</year> 25 <year>2021</year> 26 <holder>Matthias Andree</holder> 27 </copyright> 28 </articleinfo> 29 <sect1 id="FAQ"><title>Leafnode frequently asked questions, with answers.</title> 30 <sect2><title>Installation-related problems, including relocations</title> 31 <qandaset defaultlabel='qanda'> 32 <qandaentry> 33 <question><para>Compiling causes a message 34 'SA_RESETHAND undeclared'!</para></question> 35 <answer> 36 <para>This means that your operating system is too old and 37 lacks this symbol which is required by POSIX. 38 Please update your operating system. </para> 39 </answer> 40 </qandaentry> 41 <qandaentry> 42 <question><para>I cannot compile leafnode on Linux!</para></question> 43 <answer> 44 <para>Another common reason for the build to 45 fail is that Leafnode depends on some 46 system-specific information which is usually 47 included in the sources of the kernel.</para> 48 <para>Unfortunately, some Linux distribution do 49 not install kernel sources by default; therefore, 50 compilation of Leafnode (and most other programs as 51 well) will fail. The obvious solution is to install 52 the kernel sources. On 53 Linux, if the kernel sources are installed in 54 <filename>/usr/src/linux-a.b.cc</filename> (with a.b.cc being the version 55 number of your kernel), create a symlink to 56 <filename>/usr/src/linux</filename>.</para> 57 </answer> 58 </qandaentry> 59 <qandaentry> 60 <question><para>Where/how do I get the source RPM? I 61 want to modify it.</para></question> 62 <answer><para>You can generate it yourself from the 63 source tarball (which contains the necessary 64 <filename>.spec</filename> file. Just 65 type: 66 <userinput>rpmbuild -ts leafnode-1.11.5.tar.bz2</userinput> - of 67 course, you will have to adjust the version 68 shown here. For RPM 3.x and older, type this instead: 69 <userinput>rpm -ts leafnode-1.11.5.tar.bz2</userinput> 70 </para> 71 </answer> 72 </qandaentry> 73 <qandaentry> 74 <question><para>How do I copy/move the spool?</para></question> 75 <answer><para>There are two important requirements to heed:</para> 76 <orderedlist><listitem><para>You must copy hard links as hard links. There are three supported methods to achieve that. In each of the following examples, replace the source and DEST directories:</para> 77 <itemizedlist><listitem><para>On POSIX compliant systems, use <userinput>mkdir DEST && sudo pax -r -w -p e -H /var/spool/news/ DEST</userinput></para></listitem> 78 <listitem><para>If rsync is installed, use (note the trailing slash!), use <userinput>rsync -aH /var/spool/news/ DEST</userinput></para></listitem> 79 <listitem><para>If GNU cp is installed (it's sometimes called gcp), use <userinput>cp -a /var/spool/news/ DEST</userinput></para></listitem></itemizedlist> 80 <para>If you fail to do this, texpire may expire articles too early. You can repair broken hard links with <userinput>texpire -r</userinput>.</para> 81 </listitem> 82 <listitem><para>You must update the hashed message.id/nnn/ links if you are running leafnode from the new location. Unless the new spool directory has the same name as the old one (if, for instance, moving to a new computer), run <userinput>texpire -r</userinput> before any other leafnode program. Leafnode-1's spool layout unfortunately depends on the name of the spool directory, and when that changes, files may have to be moved between the message.id/nnn/ directories, and <userinput>texpire -r</userinput> does just that - and it also repairs hard links.</para> 83 <para>If you fail to do this, leafnode may not find articles in its spool.</para></listitem></orderedlist> 84 </answer> 85 </qandaentry> 86 </qandaset> 87 </sect2> 88 <sect2><title>Configuration problems</title> 89 <qandaset defaultlabel='qanda'> 90 <qandaentry><question><para>Leafnode refuses to start and tells 91 things about my hostname!</para></question> 92 <answer><para>There is a separate documentation file dedicated 93 to this issue, how to obtain a hostname, and how to tell 94 leafnode about it. Please see 95 <filename>README-FQDN</filename> or 96 <filename>README-FQDN.html</filename> for details.</para></answer></qandaentry> 97 <qandaentry><question><para>Does leafnode support local 98 newsgroups?</para></question> 99 <answer><para>Leafnode 1.x does not support local newsgroups. 100 Leafnode 2.x will do that.</para></answer> 101 </qandaentry> 102 <qandaentry id='nntpds'> 103 <question><para>How do I run leafnode as NNTP+SSL 104 server?</para></question> 105 <answer><para>Wrap leafnode with an SSL wrapper:</para> 106 <orderedlist><listitem><para> 107 Obtain <ulink 108 url='http://stunnel.mirt.net'>stunnel 109 version 3</ulink> 110 and install it. 111 </para></listitem> 112 <listitem><para>Create a certificate and 113 save it to 114 <filename>/etc/leafnode/stunnel.pem</filename>, see 115 the stunnel documentation. 116 Implications such as whether to 117 use signed certificates are beyond the 118 scope of this document.</para></listitem> 119 <listitem><para>Add a configuration to your 120 inetd.conf or xinetd.conf as described in the 121 <filename>INSTALL</filename> document; but instead of 122 <userinput>/usr/local/sbin/leafnode</userinput>, 123 you'll type</para><para> 124 <userinput>/usr/local/sbin/stunnel -f -p 125 /etc/leafnode/stunnel.pem -l 126 /usr/local/sbin/leafnode.</userinput></para></listitem></orderedlist></answer></qandaentry> 127 <qandaentry id='nntps'> 128 <question><para>How do I use fetchnews with NNTP/SSL 129 servers, such as 130 <filename>nntp.sourceforge.net</filename>?</para></question> 131 <answer><para>Warning: SourceForge does not 132 currently support the 133 <command>HEAD</command>, 134 <command>STAT</command> and 135 <command>BODY</command> commands, so 136 leafnode-1 is totally out of the play for 137 now. leafnode-2 will work for lurking, but 138 will likely be unable to post. Sourceforge 139 are aware that we need these commands and 140 will add them at a later time.</para> 141 <orderedlist><listitem><para> 142 Obtain <ulink 143 url='http://stunnel.mirt.net'>stunnel 144 version 3</ulink> 145 and install it. 146 </para></listitem> 147 <listitem><para>Arrange for stunnel to be started at 148 system boot time, try:</para> 149 <para><userinput>/usr/sbin/stunnel -c -d 150 127.0.0.1:563 -r 151 nntp.sourceforge.net:563</userinput></para> 152 <para>Add</para> 153 <para><programlisting>server = localhost 154 port = 563 155 username = YOUR_SF_LOGIN 156 password = TOP_SECRET 157 </programlisting></para> 158 159 <para>to your 160 <filename>/etc/leafnode/config</filename>. 161 </para></listitem> 162 </orderedlist></answer> 163 </qandaentry> 164 </qandaset> 165 </sect2> 166 <sect2><title>Problems at run time</title> 167 <sect3><title>leafnode (the NNTP server)</title> 168 <qandaset defaultlabel='qanda'> 169 <qandaentry><question><para>I cannot post, leafnode tells me the 170 Message-ID is invalid.</para></question> 171 <answer><para>Netscape Communicator, Mozilla and derived 172 products (Beonex) will by default generate the Message-ID 173 from the domain part of your E-Mail address. However, if 174 your address is that of a big freemailer site (hotmail.com, 175 yahoo.com, gmx.de), this will lead to invalid Message-IDs.</para> 176 <para>To work around this, go to the <command>Mail & 177 Newsgroups</command> settings and enclose your E-Mail 178 addresses into double quote marks, like 179 this:<userinput>"matthias.andree@gmx.de"</userinput>This 180 will prevent your Netscape-based newsreader from generating 181 the invalid Message-ID and leave the generation to leafnode.</para></answer></qandaentry> 182 <qandaentry> 183 <question><para>I cannot connect to my newsserver.</para></question> 184 <answer><para>You may not have configured &inetd; or 185 &xinetd; properly, 186 or the corresponding super server is not running. Please review 187 the installation instructions. <link 188 linkend="redhat-xinetd">See below for 189 information specific to Red Hat.</link></para> 190 <para> 191 To test the setup, try: <userinput>telnet localhost 192 119</userinput>. Leafnode should then 193 reply with (on one line): 194 <screen>200 Leafnode NNTP Daemon, version 1.9.27.rel running at merlin.emma.line.org 195 (my fqdn: merlin.emma.line.org)</screen> 196 </para> 197 </answer> 198 </qandaentry> 199 <qandaentry> 200 <question><para>Remote users cannot connect to leafnode.</para></question> 201 <answer><para>You are connecting from outside the same 202 networks that your leafnode 203 server is in. Leafnode by default refuses connections from 204 outside your 205 LAN to prevent your leafnode server from abuse should you forget to 206 configure tcpd or make a mistake when writing your 207 <filename>hosts.allow</filename> or 208 <filename>hosts.deny</filename> files. 209 210 Please see <filename>/etc/leafnode/config.example</filename> for the 211 <parameter>allowstrangers</parameter> option and how to 212 configure this option, and its requirements. 213 YOU are responsible for the abuse of your 214 server if this option is enabled, so only 215 give access to people with static IP whom 216 you trust.</para><para>If the clients are on 217 dynamic IP, please use other methods of 218 access instead, for instance SSH tunnels 219 (which are also available on Windows, before 220 you ask).</para></answer> 221 </qandaentry> 222 </qandaset> 223 </sect3> 224 <sect3><title>fetchnews</title> 225 <qandaset> 226 <qandaentry> 227 <question> 228 <para>Fetchnews does not fetch any articles.</para> 229 </question> 230 <answer><para>There are several reasons why this may 231 be the case:</para><itemizedlist> 232 <listitem><para>You did not read any pseudo articles with 233 your news reader. Subscribe to some groups, 234 enter them and read the leafnode placeholder 235 article.</para></listitem> 236 <listitem><para>Your groupinfo file may be corrupt. 237 Run <userinput>fetchnews 238 -f</userinput>.</para></listitem> 239 <listitem><para><filename>/var/spool/news</filename> may have 240 wrong permissions. 241 <filename>/var/spool/news</filename> and all its 242 subdirectories should be owned by user and 243 group news and have permissions drwxrwsr-x 244 (02755).</para></listitem> 245 </itemizedlist></answer> 246 </qandaentry> 247 <qandaentry> 248 <question><para>Fetchnews has problems 249 retrieving new newsgroups.</para></question> 250 <answer><para>Maybe your upstream server supports neither the 251 <command>XGTITLE news.group.name</command> nor the 252 <command>LIST NEWSGROUPS news.group.name</command> 253 command.</para> 254 <para>In this case, add <userinput>nodesc = 255 1</userinput> to the 256 server entry in <filename>/etc/leafnode/config</filename>, 257 as described in the 258 <citerefentry><refentrytitle>leafnode</refentrytitle><manvolnum>8</manvolnum></citerefentry> 259 manual page and the 260 <filename>/etc/leafnode/config.example</filename> file.</para> 261 </answer> 262 </qandaentry> 263 <qandaentry><question><para>Since the update, fetchnews does 264 not post my new articles!</para></question> 265 <answer><para>You have probably mixed old and new 266 binaries. Check your 267 <filename>inetd.conf</filename> or 268 <filename>xinetd.conf</filename> configuration 269 if they really point to the new binary.</para></answer></qandaentry> 270 <qandaentry> 271 <question> 272 <para>While fetchnews is running, my modem hangs up.</para> 273 </question> 274 <answer><para> 275 An article that causes the interruption may contain 276 three plus signs in a row (<quote>+++</quote>), which 277 many modems interpret as the beginning of a command. 278 You can change or disable this <quote>escape</quote> 279 sequence. Consult your modem's manual, register S2 is 280 a common place to configure this. 281 </para></answer> 282 </qandaentry> 283 <qandaentry><question><para>How can I run fetchnews as regular user (not 284 root)?</para></question> 285 <answer><para>For security reasons, this is not possible.</para> 286 <para>However, there is a tool named <quote>sudo</quote> 287 that allows a regular, unprivileged user to 288 impersonate another user, and this can be used to 289 enable a regular user to run fetchnews.</para> 290 <para><quote>sudo</quote> is available from 291 <ulink url="http://www.courtesan.com/sudo/"></ulink>.</para> 292 <para>If <quote>sudo</quote> is installed on your 293 system, then run 294 <userinput>visudo</userinput> as root and 295 add this line: 296 <programlisting>username ALL = (news) NOPASSWD: /path/to/fetchnews</programlisting> 297 Remember to replace 298 <quote>username</quote> and <quote>/path/to/</quote> with the 299 user's login and the proper path to 300 fetchnews.</para> 301 <para>Now, the user who has been enabled access to fetchnews can 302 just type <userinput>sudo -u news 303 /path/to/fetchnews</userinput> 304 to run fetchnews.</para></answer> 305 </qandaentry> 306 <qandaentry> 307 <question><para>I have unsubscribed from a newsgroup, but 308 fetchnews still pulls articles for that group.</para></question> 309 <answer><para>Your news reader talks to leafnode via the NNTP 310 protocol. This protocol provides no means for Leafnode to 311 determine which newsgroups you are actually subscribe. 312 Therefore, Leafnode assumes that a newsgroup that is not 313 read for a certain time (which can be configured with the 314 <parameter>timeout_long</parameter> parameter) is unsubscribed 315 and will only stop retrieving articles in it after this 316 time.</para> 317 <para>If you are impatient and want to stop retrieving 318 articles from that group immediately, delete the 319 corresponding file in the 320 <filename>/var/spool/news/interesting.groups/</filename> 321 directory. The articles that are already in your spool are 322 still subject to the regular <command>texpire</command> 323 schedule, however.</para></answer> 324 </qandaentry> 325 <qandaentry><question><para>How do I stop fetchnews from unsubscribing from 326 newsgroups?</para></question> 327 <answer><para>Make sure that your newsreader issues 328 GROUP or LIST ACTIVE commands for each of 329 the groups it is subscribed to when checking 330 for new news, so that leafnode can actually 331 see which groups are interesting. For 332 instance, a newsreader configured to read 333 the whole active file with a LIST command 334 may lose subscriptions for low-traffic 335 groups. <link linkend="gnus">See also the Gnus 336 FAQ below.</link></para> 337 <para>As a last resort, change your cron job or 338 ip-up script to run 339 <userinput>fetchnews -n</userinput> rather than just 340 <userinput>fetchnews</userinput>.</para></answer></qandaentry> 341 <qandaentry><question><para>fetchnews is slow, how do I 342 speed it up?</para></question> 343 <answer> 344 <para>If you are using filters, try the 345 article_despite_filter option (introduced in 346 leafnode v1.9.33).</para> 347 <para>If your upstream server does not support 348 XOVER, try using as few of the 349 maxage, maxlines, maxbytes, minlines, 350 maxcrosspost options as possible.</para> 351 </answer></qandaentry> 352 <qandaentry><question><para>fetchnews keeps downloading the full newsgroup list 353 every time it runs</para> 354 </question> 355 <answer><para>Watch the fetchnews output for error messages, if you see a 356 message such as <computeroutput>Reading newsgroups descriptions 357 failed: 501 bad command usage.</computeroutput> then try adding 358 <userinput>nodesc = 1</userinput> blow the 359 server=news.example.org line of the server that showed this error.</para> 360 </answer> 361 </qandaentry> 362 </qandaset> 363 </sect3> 364 <sect3><title>texpire</title> 365 <qandaset> 366 <qandaentry><question><para>Texpire does not expire 367 articles.</para></question><answer><para>The backup software 368 that you are using may not reset the atime after reading a 369 file. Check if you can reconfigure it to reset the 370 <quote>atime</quote>.</para><para>As a workaround, run 371 <userinput>texpire -f</userinput>. This will expire articles 372 somewhat earlier because expiry is then determined from the 373 time the file was last modified, rather than when it was last 374 accessed.</para></answer></qandaentry> 375 <qandaentry><question><para>Texpire message.id counts do 376 not match the sum of the group counts!</para></question> 377 <answer><para>This may happen if texpire has been 378 interrupted previously, crashed, some other 379 application touched the spool or the spool is corrupt.</para></answer></qandaentry> 380 </qandaset> 381 </sect3> 382 </sect2> 383 <sect2><title>Problems with particular newsreaders</title> 384 <qandaset defaultlabel='qanda'> 385 <qandaentry> 386 <question id='gnus'> 387 <para>leafnode loses subscriptions of low-traffic 388 groups with Gnus.</para> 389 </question> 390 <answer> 391 <para>Check the setting of gnus-read-active-file (you 392 can use customize-variable to do that), it should be 393 <userinput>'some</userinput> or 394 <userinput>nil</userinput>. 395 </para> 396 </answer> 397 </qandaentry> 398 <qandaentry> 399 <question id='slrn'> 400 <para>leafnode loses subscriptions of low-traffic 401 groups with slrn.</para> 402 </question> 403 <answer> 404 <para>Check the setting of read_active, it should be 405 <userinput>0</userinput> (the default). 406 </para> 407 </answer> 408 </qandaentry> 409 <qandaentry> 410 <question> 411 <para>When searching news with Netscape, I only get back 412 <quote>unknown command</quote>.</para> 413 </question> 414 <answer> 415 <para> 416 To search news, older versions of Netscape needed a 417 news server which supports the XPAT command. 418 Leafnode-1 does not. If you want to use Netscape, you 419 have to upgrade to version 4.5 and press the 420 <quote>options</quote> button which appears in the 421 <quote>search 422 messages</quote> window. In the box which appears you have 423 to select <quote>on your local system</quote>. 424 </para> 425 </answer> 426 </qandaentry> 427 <qandaentry> 428 <question><para>Outlook Express locks up.</para></question> 429 <answer><para> 430 This can be caused by a corrupted <filename>inbox</filename> 431 file in Outlook Express. It is said to happen during the 432 initial install of Internet Explorer. To fix this problem, 433 go to <quote>Add/Remove Programs</quote>, choose 434 <quote>Internet Explorer</quote>, then <quote>Repair 435 installation.</quote> 436 </para><para>Thanks to Jim Gifford who talked to Microsoft to 437 find this solution.</para></answer> 438 </qandaentry> 439 <qandaentry> 440 <question> 441 <para>Tin complains about a missing file 442 <filename>/var/lib/news/active</filename>.</para> 443 </question> 444 <answer> 445 <para> 446 Either you have started the wrong version of tin (the one 447 which tries to read news directly from the spool) or your 448 groupinfo file is corrupt. 449 </para> 450 451 <para> 452 In the first case, simply invoke tin with 453 the -r flag: <userinput>tin -r</userinput>. If 454 this does not help, try to rebuild the 455 groupinfo file by running 456 <userinput>fetchnews -f</userinput>. 457 </para> 458 </answer> 459 </qandaentry> 460 </qandaset> 461 </sect2> 462 </sect1> 463 <sect1 id="backtrace"><title>Obtaining a stack backtrace</title> 464 <para>This section will tell you how to obtain a <emphasis>stack 465 backtrace</emphasis>, a special program state output that is 466 very useful to somebody who is about to debug a crash.</para> 467 <para>The prerequisite to work is that the program is 468 <emphasis>not stripped</emphasis>, i. e. it contains the debug 469 symbols. That means leafnode must have been installed with 470 <userinput>make install</userinput> rather than <userinput>make 471 install-strip</userinput>. Note that most packagers (for RPM at 472 least) use <userinput>make install-strip</userinput> to save space.</para> 473 <para>To find out if your leafnode installation has been 474 <emphasis>stripped</emphasis>, type <userinput>file 475 /usr/local/sbin/leafnode</userinput> (adjust the path as 476 necessary, packages will usually install to 477 <filename>/usr/sbin/leafnode</filename> instead), here is a sample 478 output of an unstripped program:</para> 479 480 <para><screen><prompt>$</prompt> <userinput>file /usr/local/sbin/leafnode</userinput> 481 <computeroutput>/usr/local/sbin/leafnode: ELF 32-bit LSB executable, Intel 80386, version 1, 482 dynamically linked (uses shared libs), not stripped</computeroutput></screen></para> 483 484 <sect2><title>From a core file.</title> 485 <para>This is simple: 486 <orderedlist> 487 <listitem><para>Type <userinput>gdb 488 <replaceable>PROGRAM</replaceable> 489 core</userinput>. Replace 490 PROGRAM by the name of the 491 program that crashed, for 492 example fetchnews.</para></listitem> 493 <listitem><para>Type <userinput>backtrace 494 full</userinput>.</para></listitem> 495 <listitem><para>Type 496 <userinput>quit</userinput>.</para></listitem> 497 </orderedlist> 498 </para></sect2> 499 <sect2><title>Running a program under gdb supervision.</title> 500 <orderedlist> 501 <listitem><para>Type <userinput>gdb 502 <replaceable>PROGRAM</replaceable></userinput>. 503 Replace PROGRAM by the name of the program that 504 crashes, for example fetchnews. Do not give any program 505 options, gdb does not understand them here.</para></listitem> 506 <listitem><para>Type <userinput>run 507 <replaceable>OPTIONS</replaceable></userinput>, where 508 you name the options that you would normally pass to the 509 program itself. Just a plain 510 <userinput>run</userinput> is 511 also fine.</para></listitem> 512 <listitem><para>Wait until the program crashes. The output might 513 look like similar to this:</para> 514 <screen><computeroutput> 515 This GDB was configured as "i686-pc-linux-gnu"...</computeroutput> 516 <prompt>(gdb)</prompt> <userinput>run -vvn</userinput> 517 <computeroutput> 518 Starting program: /tmp/crashme 519 520 Program received signal SIGSEGV, Segmentation fault. 521 main () at crashme.c:4 522 4 *x = 4; 523 <prompt>(gdb)</prompt> 524 </computeroutput></screen> 525 </listitem> 526 <listitem><para>Type <userinput>backtrace 527 full</userinput>, this is the 528 desired <emphasis>stack backtrace</emphasis>.</para></listitem> 529 <listitem><para>Type <userinput>quit</userinput> to leave 530 gdb.</para></listitem> 531 </orderedlist></sect2> 532 <sect2><title>From a running/hanging leafnode 533 program.</title> 534 <orderedlist> 535 <listitem><para>Find out the Process 536 ID of the hanging leafnode 537 program. Type 538 <userinput>ps axw | grep 539 <replaceable>PROGRAM</replaceable> | grep -v 540 grep</userinput> on BSD 541 systems and Linux, 542 replacing 543 <replaceable>PROGRAM</replaceable> by the 544 name of the program. Use 545 <userinput>ps -ef</userinput> 546 instead on SysV systems such 547 as Solaris.</para> 548 <para>You will get an output 549 like: 550 <screen> 1995 ? S 0:00 /usr/local/sbin/leafnode 551 </screen> 1995 is the 552 Process ID.</para></listitem> 553 <listitem><para>Then attach gdb: 554 <userinput>gdb 555 <replaceable>PROGRAM</replaceable> 556 <replaceable>12345</replaceable></userinput>, 557 replacing 558 <replaceable>PROGRAM</replaceable> by the 559 program's name and 560 <replaceable>12345</replaceable> 561 by the PID that you have just 562 found out.</para></listitem> 563 <listitem><para>Type 564 <userinput>backtrace 565 full</userinput>.</para></listitem> 566 <listitem><para>Type 567 <userinput>detach</userinput>.</para></listitem> 568 <listitem><para>Type 569 <userinput>quit</userinput>.</para></listitem> 570 </orderedlist> 571 </sect2> 572 </sect1> 573 <sect1 id="redhat-xinetd"> 574 <sect1info> <author> 575 <firstname>William</firstname> 576 <surname>Hooper</surname> 577 </author> 578 </sect1info> 579 580 <title>Red Hat and the inetd vs. xinetd issue.</title> 581 582 <para>RedHat Linux has changed stance on &inetd;/&xinetd; 583 over the years. In the 6.x version, &inetd; was used, while 584 &xinetd; is used in the 7.x series and 8.0. Note in the 585 following I make the assumption that the "Gnome workstation" 586 and "KDE workstation" installs are the same in regard to our 587 discussion. Also, when in doubt a simple <userinput>rpm -qa 588 | grep &inetd;</userinput> will show you if either inetd 589 or &xinetd; is installed. The <command>service</command> and 590 <command>chkconfig</command> commands can be used to be sure 591 [x]&inetd; is running and configured to run at boot time. By 592 default, runlevels 3, 4, and 5 start [x]&inetd;.</para> 593 594 <para>Beginning with Redhat 6.2, &inetd; was broken out as a 595 separate RPM and not included when doing a "Workstation" 596 install. This stands true for the 7.x series (&xinetd; not 597 installed) until 7.3. In Redhat 7.3, &xinetd; was added back 598 to the "Workstation" install as a dependency for "sgi_fam". 599 Note, this change is not reflected in the RH documentation, 600 which states that &xinetd; is not installed in "Workstation" 601 installs. </para> 602 603 <para>In Redhat 8.0, the install options have changed, now 604 offering a "Personal Desktop" install. When doing a 605 "Workstation" or "Personal Desktop" install &xinetd; is 606 installed as in 7.3, presumably to satisfy the same 607 dependency. </para> 608 609 <para>In cases where &inetd; is not installed, no other RPMs 610 are required to install it. This means to install it you 611 have three options (for RedHat 6.2 substitute &inetd; instead of 612 &xinetd;): </para> 613 614 <orderedlist> 615 <listitem><para><emphasis>Best</emphasis> 616 - If you have registered for Redhat's up2date 617 service, just type "up2date xinetd" as 618 root.</para></listitem> 619 620 <listitem><para><emphasis>Next Best</emphasis> 621 - Install RPM from updates.redhat.com (version 622 numbers current as of 2002-11-10 for RH 7.3). You 623 can manually download the RPM and install it (as 624 root) using <userinput>rpm -ivh 625 xinetd-2.3.9-0.73.i386.rpm</userinput>, or have 626 RPM download it for you by using (again, as root) 627 <userinput>rpm -ivh 628 http://updates.redhat.com/7.3/en/os/i386/xinetd-2.3.9-0.73.i386.rpm</userinput></para> 629 </listitem> 630 631 <listitem><para><emphasis>Worse</emphasis> 632 - Install the RPM from the original CD. This is usually the worse 633 option because the updates (used above) are released to fix security issues. 634 </para><para> 635 (All as root) First mount the first RH CD by putting it in the CD-ROM and 636 doing a <userinput>mount /mnt/cdrom</userinput>, and install the 637 RPM similar to this: <userinput>cd 638 /mnt/cdrom/Redhat/RPMS/xinetd-2.3.7-2.i386.rpm</userinput>. 639 </para></listitem> 640 </orderedlist> 641 </sect1> 642 </article>