
           Linux Gazette... making Linux just a little more fun!
                                      
         Copyright  1996-98 Specialized Systems Consultants, Inc.
     _________________________________________________________________
   
                       Welcome to Linux Gazette! (tm)
     _________________________________________________________________
   
                                 Published by:
                                       
                               Linux Journal 
     _________________________________________________________________
   
                                 Sponsored by:
                                       
InfoMagic 

S.u.S.E. 

Red Hat 

LinuxMall 

Linux Resources 

cyclades 

stalker 

LinuxToday 

   Our sponsors make financial contributions toward the costs of
   publishing Linux Gazette. If you would like to become a sponsor of LG,
   e-mail us at sponsor@ssc.com.
   
   Linux Gazette is a non-commercial, freely available publication and
   will remain that way. Show your support by using the products of our
   sponsors and publisher.
     _________________________________________________________________
     _________________________________________________________________
   
                             Table of Contents
                            March 1999 Issue #38
     _________________________________________________________________
   
     * The Front Page
     * The MailBag
          + Help Wanted -- Article Ideas
          + General Mail
     * News Bytes
          + News in General
          + Software Announcements
     * The Answer Guy, by James T. Dennis
     * More 2 Cent Tips
     * Adding a Second IDE Hard Drive, by Mendel Leo Cooper
     * Compiling Programs on Linux, by JC Pollman
     * Graphics Muse, by Michael J. Hammel
     * Introduction to IRQs, DMAs and Base Addresses, by Eugene Blanchard
     * Linux Dialin Server Setup Guide, by Josh Gentry
     * Linux Installation Primer, Part 7, by Ron Jenkins
     * PAP HOWTO, by Terry Martin
     * The Slashdot Effect, An Analysis of Three Internet P ublications,
       by Stephen Adler
     * The Standard C Library for Linux, Part Four, by James M. Rogers
     * Why you might want to use the Library GPL for your next library,
       by Eric Kidd
     * Windows/Linux Dual Boot, by Vince Veselosky
     * The Back Page
          + About This Month's Authors
          + Not Linux
       
   The Answer Guy
     _________________________________________________________________
   
   TWDT 1 (text)
   TWDT 2 (HTML)
   are files containing the entire issue: one in text format, one in
   HTML. They are provided strictly as a way to save the contents as one
   file for later printing in the format of your choice; there is no
   guarantee of working links in the HTML version.
     _________________________________________________________________
   
   Got any great ideas for improvements? Send your comments, criticisms,
   suggestions and ideas.
     _________________________________________________________________
   
   This page written and maintained by the Editor of Linux Gazette,
   gazette@ssc.com
   
    "Linux Gazette...making Linux just a little more fun!"
     _________________________________________________________________
   
The Mailbag!

   Write the Gazette at gazette@ssc.com
   
Contents:

     * Help Wanted -- Article Ideas
     * General Mail
     _________________________________________________________________
   
                        Help Wanted -- Article Ideas
                                      
   Answers to these questions should be sent directly to the e-mail
   address of the inquirer with or without a copy to gazette@ssc.com.
   Answers that are copied to LG will be printed in the next issue in the
   Tips column.
     _________________________________________________________________
   
   Date: Wed, 3 Feb 1999 10:47:38 +0100 (MET)
   From: Jan-Hendrik Terstegge, jh.terstegge@gmx.net
   Subject: Korn Shell FAQ
   
   I'm looking for a good Korn Shell FAQ, because I dislike reading the
   Manpages. Does anyone know a good Internet Address of a FAQ?
   
   Thanks in advance
   
   --
   Jan-Hendrik
     _________________________________________________________________
   
   Date: Tue, 2 Feb 1999 15:13:18 -0500
   From: "Jim Coleman", jecoleman@upsala.org Subject: Windows program
   replacements
   
   I'm making the move from Windows to Linux and am in the process of
   tracking down Linux programs to replace anything in Windows that I
   feel I cannot do without. It's a short but stubborn list. Presently,
   I'm trying to locate a Linux Family Tree program (I'm using Family
   Tree Maker in Windows) and also need a Linux program that can import
   the contents of several Cardfile databases.
   
   I've heard of and have downloaded the Unix based LifeLines program but
   have not yet tried it. Though it comes highly recommended, even the
   author admits that it's somewhat dated. I was hoping a more recent
   program was available. Not necessarily freeware, by the way.
   
   Suggestions would be appreciated. Thanks,
   
   Best Regards,
   --
   Jim Coleman
     _________________________________________________________________
   
   Date: Wed, 3 Feb 1999 14:45:12 -0800
   From: "Michel A. Lim", support@whl-international.com
   Subject: RH5.2 and Intel EtherExpress Pro/10+ ISA NIC
   
   I am a Linux newbie, with some computer experience, trying to install
   my intel etherexpress pro/10+ isa card on my new Linux box (Macmillan
   RH 5.2, kernel 2.0.36-0.7). I have read several newsgroup postings
   regarding this network card, but I could really use a step-by-step
   guide.
   
   The card did work when the OS was win98. Linux is now the only OS on
   this computer. The Linux install was successful except that it did not
   recognize my network card. I disabled the plug and play function of
   the card using the intel configuration software (softset2), and then
   tried re-installing Linux and passing the IRQ and I/O settings (7 and
   320-32Fh respectively) but that also did not work. I then tried to add
   the following lines to /etc/conf.modules:
alias eth0 eepro
options eth0 io=320-32Fh irq=7

   this was also unsucessful. Furthermore, pnpdump returns "board not
   found," and even AFTER reading the HOWTO for isapnptools, I have no
   idea what to add to add to my isapnp.conf file.
   
   Any help would be very appreciated, just please be detailed as I am
   not a guru by any stretch of the imagination.
   
   thank you. --
   michel a. lim
     _________________________________________________________________
   
   Date: Mon, 8 Feb 1999 18:30:50 -0200
   From: "Eliane Aureliana de Sousa", lili@martins.com.br
   Subject: We do not relay...
   
   Could you help me? I have Red Hat Linux installed and I have sendmail
   and a pop server running but when I try to send and receive mail via
   Netscape what I receive is this mensage: We do not relay..... and
   there is neve any msg in my mail box.
   
   I've read as many how-to as I could, but I couldn't find nothing about
   my problem. Send mail is already running, I need to know how to set
   the permissions to let my users send and receive mail.
   
   Thanks, Eliane Aureliana de Sousa Uberlandia - Brazil
     _________________________________________________________________
   
   Date: Mon, 08 Feb 1999 16:28:52 +0100
   From: Kristoffer Andersson, e7koffe@etek.chalmers.se
   Subject: Help wanted -- article ideas
   
   I'm having a sort of luxorius problem. In the building where I live we
   have a 24-7 ethernet connection two the Internet - so long every thing
   is fine - the problem is that this connection goes through a
   masquerading-server and as a result it is almost impossible to connect
   to your computer from a computer outside my building.
   
   To go around this limitation I have set up a small script that uses
   ssh to forward a few ports (21, 22 and 80) to a computer outside the
   building. This is fine as long as you and your friends now to wich
   computer the ports have been forwarded to.
   
   A more fancy solution would be to use ssh to tunnel ppp! The problem
   is that I dont now of an ISP that would let me to use PPP over the
   Internet instead of over their modem-pools.
   
   --
   Kristoffer Andersson
     _________________________________________________________________
   
   Date: Mon, 08 Feb 1999 10:35:02 -0200
   From: Silvia, silvia@waytecnet.com.br
   Subject: DOS Emulations
   
   How does the DOS emulation through the serial ports works?
   What is the default terminal emulation?
   How can we change this?
   We need to use 25 lines 80 columns and the key combinations ALT+F1,
   ALT+F2, ..., ETC.
   
   Regards
   --
   Silvia
     _________________________________________________________________
   
   Date: Mon, 08 Feb 1999 04:52:35 +0100
   From: JVA, vargaj@intrak.tuke.sk
   Subject: Sound card with radio on it
   
   I am intending to install Red Hat 5.0 to myP 166: PC and my question
   is that I have a ISA sound card (SF16-FMI) with radio on it, it's 100%
   SB compatible,and has a IDE connection on it and it's not PnP will it
   be able to work and in particular the radio please help I enjoy
   listening to radio.
   
   --
   Jva
     _________________________________________________________________
   
   Date: Wed, 10 Feb 1999 15:42:19 -0800
   From: Jay Xia, xia@xlnt.com
   Subject: MS words to Postscript conversion
   
   From time to time, people e-mail me documents in Microsoft Words
   format. Do you know where I can find an utility to convert the MS
   Words documents into Postscript format so that I can view/print them
   in Linux?
   
   Thanks.
   
   --
   jay
     _________________________________________________________________
   
   Date: Sun, 14 Feb 1999 01:32:18 +0100
   From: bonis, bonis@tin.it
   Subject: problema
   
   ciao, mi chiamo cris ho red hat 5.0 e devo collegarmi a internet...
   con netscape communicator.. ..non ci riesco :)..sono abbonato a
   tin...e ho un modem esterno da 33.6 ...ho provato di tutto..ma non
   riesco propio :) aiuto :) grazie. ps. ho installato Linux Red Hat da 3
   giorni :)..e mai prima.. :)
   
   --
   bonis
     _________________________________________________________________
   
   Date: Sat, 13 Feb 1999 20:58:10 +0530
   From: "Mukul Jain", jainmukul@usa.net
   Subject: Configuring Linux as mail server
   
   I want to configure Linux as my off-line mail server. What all I want
   is that I want it to aceept my mail and when I dial to my ISP it just
   sends the collected mail and then recieves the mail from my domain.
   and distributes according to Linux user accounts.
   
   I've done the following setting in sendmail.cw; I've added my domain
   entry.
   
   In sendmail.cf I've changed the DS to my ISP server DSgg.vsnl.net.in
   
   and at DM added my domain also changed OHoldExpensive=True
   
   Well and then changed settings for the mailers expensiver
   
   Now still I get an Error 'We do not relay mail'
   
   HELP!
   
   --
   Mukul
     _________________________________________________________________
   
   Date: Fri, 12 Feb 1999 11:06:49 +0100 (Ora solare Europa occidentale)
   From: Bruno Falconi, bruno@ifctr.mi.cnr.it
   Subject: primo approccio
   
   finalmente ho trovato un link interessante per chi vuole inoltrarsi in
   Linux.
   
   Ho cercato di installare Linux (Red Hat 5.2) sul mio pc che gia gira
   con windows 98. ho tre dischi (10gb, 2gb e 1.5gb). ho incontrato mille
   difficolta' e alla fine non sono riuscito ad installarlo, non solo, ma
   ho perso anche Windows 98. Ho ripristinato poi i dischi ed windows, ma
   prima di riprovarci gradirei qualche dritta per fare una cosa seria.
   
   grazie
   --
   Bruno Falconi
     _________________________________________________________________
   
   Date: Thu, 11 Feb 1999 12:35:03 -0500
   From: "Jeff Moore", champnet@iisc.net
   Subject: Converting to Linux
   
   Was told that I can do lot more with this Linux, where it be with 286
   or 386 so on, and to be able develop the full capabilities a Service
   provider to community, schools, business, residential. Would consider
   this task is a must see how it can be done. O f course now one would
   have to have a great deal old hardware, software all ready and surely
   this person would no just go out and buy old equipment with this
   intent in mind. Instead work with students with a great of old
   equipment that we are upgrading- Using what we have an looking for
   conversions that would act like they up-to-date? any suggestion ?
   
   --
   Jeff Moore
     _________________________________________________________________
   
   Date: Wed, 17 Feb 1999 01:05:56 +0800 (SGT)
   From: "Jayasuthan ......", suthan@eplx01.fairchildsemi.com
   Subject: Clear Up Corrupted Files
   
   I having problem with my filesystem lately. I believe it caused by
   Linux Kernel 2.2.0 with hdparm -m8 option on my hard disk. Lucky its
   not very serius. But now the problem is cleaning up those file which
   corrupted. I do have file in /lost+found folder and thats not an issue
   but files like this :-
br-Sr-S---   1 25449    28015     99, 105 Nov 26  2031 System.map
br-srwS-wT   1 29813    23328      9,  10 Jan 19  2026 System.old
drwxr-xr-x   2 root     root         1024 Feb 15 23:07 beta/
drwxr-xr-x   2 root     bin          2048 May  8  1994 bin/

   Look at System.map and System.old file. This file can't just "rm -rf"
   away. I don't want to format my hard disk well it will be very hard
   for me. I do have good backup. I want to learn Linux file system and
   understand it.
   
   Please help me out here.
   
   Thank You,
   --
   Jayasuthan
     _________________________________________________________________
   
   Date: Thu, 18 Feb 1999 13:20:29 +0200
   From: "yossi", yossi@sivan-north.co.il
   Subject: Linux & Win95/98/NT clients
   
   Well, I am system administrator in colleage (about 200 machines).
   Mostly they're running Win95/98 and some of them running NT4.0
   Workstation. We don't use yet Linux as a server ( but I use it a lot
   for java-development). We use NT4.0. So my question is : I'd like to
   install Linux as a file-server & keep on him images of hard-disks from
   classrooms(i.e every classroom has own "master" with all the
   programmes installed on it). So if something goes wrong with one (or
   more) of a computers in the classroom I'd like to keep this "masters"
   on Linux server & connect to them somehow from this computer and take
   the "image" off to my win95/98/nt client. Somehow - I mean I have to
   have a boot-diskette that does the work. The second point is that I'm
   not sure in possibility that in-the-same-time I can use the "image" on
   Linux with multiple connections... Sometimes the "image" has to be
   requested by 20-25 clients(in the same time).=20 If somebody can help
   me it's really great coz' this way I can install first-Linux-server in
   our network ( I really like this OS.... but it doesn't depend on me :)
   ) Any information will be appreciated. Thanx.
   
   --
   Daniel Mester
     _________________________________________________________________
   
   Date: Wed, 17 Feb 1999 18:23:55 -0700 (MST)
   From: "Dale M. Snider", dsnider@nmia.com
   Subject: Re: Trap float divide-by-zero and NaN
   
   Can someone tell me how to turn on a gcc compile option to trap a
   divide by zero and NaN with type float or double. I can get the
   divide-by-zero trap with type int. Is this a trap that can be done on
   the kernal level? The signal SIGFPED only works on integers?? I am
   using Red Hat 5.2 installation.
   
   Trap on divide by zero: a=1., b=0., a/b=Inf
   
   Trap on overflow: a=3.4e38, b=3.4e38, a*b=Inf
   
   Trap on NaN: sqrt(-1)
   
   I have included a small test code to illustrate the problem
   (question)..
   
   To build sample code:

  cc -g tst.c -lm -o tst

   Test code:

  #include <stdio.h>
  #include <math.h>

  main() {
   float a,b,c,d;
   int   ia,ib,ic;
   int   i;

   a=1.; b=0.;
   c=a/b;
   d=(float)sqrt((double)-a);
   printf("Float: a=%f b=%f a/b=%f d=sqrt(-a)=%f\n",a,b,c,d);
   ia=1; ib=0;
   ic=ia/ib;
   printf("Integer: ia=%d ib=%d ia/ib=%d\n",ia,ib,ic);
  }

   Results:

  Float: a=1.000000 b=0.000000 a/b=Inf d=sqrt(-a)=NaN
  Floating point exception (core dumped)

   Note that the integer divide by zero is trapped but reported as "
   Floating point exception"??
   
   Cheers
   
   --
   Dale
     _________________________________________________________________
   
   Date: Mon, 01 Feb 1999 03:39:39 +0200
   From: Jussi Kallioniemi, jukal@teraflops.com
   Subject: business plan
   
   Just a quick question (worth printing to next issue?)
   
   Is there any (good) GNU licensed programs to help the creation of
   businessplans?
   
   --
   Jussi Kallioniemi
     _________________________________________________________________
   
   Date: Wed, 27 Jan 1999 23:50:54 -0800
   From: "Snow Wolf", snowwolf@sprynet.com
   Subject: Letter to the Editor ...
   
   On the same day that I received my Linux Journal, I got a PC
   Connection periodical. It's a standard PC mail-order catalog, but it
   seems to assume that people are running Windows. Are there similar
   catalogs that cater to people running Linux/Unix. Like have non-PnP
   modems, cards that include drivers for other OSes besides Windows,
   etc., etc.
   
   --
   Charles Wheeler
     _________________________________________________________________
   
   Date: Tue, 23 Feb 1999 11:36:25 PST
   From: "Jaap Wolters", woltersj@hotmail.com
   Subject: problem
   
   Ik heb geprobeert jullie programma "LINUX" te downloaden, maar ik
   krijg geen toegang. hoe zou het toch kunnen? Op de t.v werd verteld
   dat het programma beter is dan Windows 98, Minder fouten en minder
   vastlopers. Is het programma windows compatible zodat ik mijn oude
   windows spellen kan doorspelen. Ik heb ZEER veel belang bij dit
   programma, maar aangezien me het niet lukt om het te downloaden zou ik
   graag uw advies willen.
   
   Met vriendelijke groeten
   
   --
   J.Wolters
     _________________________________________________________________
   
   Date: Tue, 23 Feb 1999 12:21:53 -0500
   From: "Nick Wilkens", NWilkens@holnam.com
   Subject: Making a Red Hat 5.2 CD
   
   Hi, I downloaded the Red Hat/RPMS Red Hat/base directories from
   sunsite, along with the proper image files, etc... I also burn them to
   a CD in this same way under the Red Hat directory, is this proper?
   because when i try to do a CD install, it says invalid media no Red
   Hat tree found or something to that effect. Any suggestions?
   
   --
   Nick
     _________________________________________________________________
   
   Date: Sun, 21 Feb 1999 17:28:54 PST
   From: helicon123@hotmail.com
   Subject: Installation Question
   
   Since Linux was mostly used by x86, do you think it's OK if I install
   it on PII-300MHz computer?
   
   --
   helicon123
     _________________________________________________________________
   
   Date: Mon, 01 Feb 1999 15:18:23 +0000
   From: Austin, austinp@headland.co.uk
   Subject: Help wanted: Fax gateway
   
   I'm toying with the idea of setting up a FAX gateway on a Linux
   machine. The machine is currently on a LAN, and has no modem, so I'll
   be wanting to stick a 56Kbps in there. I'm just after pointers,
   personal experience, web pages, and general advice on this, because I
   have no idea where to start :)
   
   So far, I've discovered Hylafax. Is this what I should be using? Are
   there alternatives?
   
   How do you go about installing a modem? What models are recommended?
   
   Thanks for any help.
   
   --
   Austin
     _________________________________________________________________
   
                                General Mail
     _________________________________________________________________
   
   Date: Mon, 01 Feb 1999 16:03:26 +0000
   From: Keith, kwhudson@ticnet.com
   Subject: Not Linux
   
   three oaths:
   1 of marriage
   1 of truth
   1 of leadership
   
   1st one Rendered invalid by actions
   2nd one destroyed by testimony
   3rd one ?
   
   lets not be lazy..lets not take a just get it over attitude...lets
   tell the Pop Press that we want news, not day to day hogwash...
   
   People are made to tire of a subject, because the press forces every
   conceivable amount of data real or not about a subject down to us.
   This is known. This is planned.
   
   No one has lost face. This is not a party issue. Let it continue. We
   need a answer. We need the Law. Whatever the outcome will be.
   
   --
   Keith
     _________________________________________________________________
   
   Date: Mon, 01 Feb 1999 18:24:34 +0100
   From: Roger Irwin, irwin@trucco.it
   Subject: Closed software promotion
   
   Launching into issue 37, I go straight to Software Announcements. And
   the first item is "New circuit design software", which goes on to
   describe itself as a spice front-end.
   
   Well, I design electronic circuits, and immediately hit the link. What
   I found was that the spice front-end was a plug-in for the 'visio'
   package. No mention was made of Linux, but the announcement said it
   would work on any version of Visio. So, I would need the Linux version
   of visio.
   
   So then I followed the link to Visio, and looked to see 'platform
   requirements'. It said this:
   
   "We've thought long and hard about what you'll need from a business
   diagram program. That's why we've designed our software to work on
   most desktops. Chances are, the computer you already use will be fine
   for running Visio Standard."
   
   Great, another program designed to run on as many platforms as
   possible? Not quite, it will run on W95, W98 & Windows NT4.0. Period.
   Another company who thinks the only OS that should be run on a desktop
   is Windows, and Linux Gazette is helping to promote this.
   
   Well done, keep up the good work...............
   
   Bill will be so proud of you.
   
   --
   Roger
   
     (Sorry to let that one slip by me. I tend to assume if they send
     the announcement to me, it works for Linux. And of course, I knew
     SPICE works for Linux. Wish I had time to chase every announcement
     down, but I don't. Anyway I removed it after getting a couple of
     letters telling me. --Editor)
     _________________________________________________________________
   
   Date: Tue, 02 Feb 1999 10:24:33 -0800
   From: jeff godden, jgodden@panlabs.com 
   Subject: under software announcements, SpiceLink is not a Linux
   product
   
   As usual, Linux Gazette remains one of my favorite sources of
   net-gleaned Linux information. Thank you!
   
   Under software announcements of issue #37 there is a link to SpiceLink
   which i was very thrilled about to see such a graphical support for
   spice under Linux. But alas, even through it's linked from Linux
   Gazette this software cannot run under Linux. From the president of
   the SpiceLink following an inquiry:
   
     You're right about SpiceLink; it's for Visio and therefore Windows.
     
   (maybe when they get near 100% of the Windows market they'll think
   about Linux). Perhaps a note might be added that one better have WINE
   running and even then it's uncertain...?
   
   Many thanks!
   
   --
   jeff
   
     (Always appreciate hearing when I lapse so I can get it corrected.
     Thanks for doing it in such a nice way. That announcement has been
     removed. -- Editor) 
     _________________________________________________________________
   
   Date: Tue, 02 Feb 1999 12:54:29 -0500
   From: Darren, PCTech1018@netscape.net 
   Subject: RE: What is a 'high crime'
   
   A "High crime" is not necessarily what could be called a 'heinous'
   act. A 'High crime' is simply a 'crime' committed by a 'High' official
   (such as a senator, federal judge, or president.) Because of their
   unique positions, what would not be considered crimes for us, may be
   considered crimes for 'High' officials, hence the term 'common
   criminal' versus 'high criminal'. For instance, accepting bribes
   would, for private citizens outside of public office, not be
   considered a crime (immoral perhaps, but not criminal.) For high
   officials, bribery is most definitely a 'high' crime.
   
   Some people feel that the questions that the president did not
   truthfully answer should not have been asked and were not relevant to
   governing. After all, even some of the framers of the constitution
   were known to have had 'improper relations'. But these same people
   seem to forget that we did not have laws relating to sexual
   harassment/discrimination back then. Also, the judgment by the courts
   pertaining directly to those 'irrelevant' questions was that the
   questions were relevant and proper at the time they were asked.
   
   As to using the principle of 'acts related to governing', it would
   seem that these same people feel that R. Nixon should have been
   impeached - even though his alleged acts and deceptions had nothing to
   do with 'governing'. Using the Nixon precedent, W. Clinton should be
   held accountable for lies and deception even if they had little
   bearing on the act of 'governing'.
   
   So then, we are left to ask, were the lies and deception in the courts
   by the president acceptable? I guess we all need to answer that for
   ourselves. If it is appropriate for the president to not tell the
   whole truth on those matters that the court has decided he should
   answer for and go unpunished for lying, then we should stop enforcing
   sexual discrimination cases altogether. Women should just accept their
   place as 2nd class citizens and let the rest of us get on with the job
   of making a living. Just think, if he had 'pleaded the fifth', we
   wouldn't be having this wonderful education on the constitutional
   process.
   
   This may not be the populist view, but the moral high ground usually
   isn't. Witness the popularity of Howard Stern and Larry Flynt. I am
   not perfect. When I get caught breaking 'minor' laws, I should fully
   expect some sort of punishment. But just because I am not perfect,
   does that mean I should give up any expectation of holding myself and
   others to standards of common decency?
   
   --
   Darren
     _________________________________________________________________
   
   Date: Wed, 03 Feb 1999 14:27:08 -0800
   From: James Guilford, guilfoja@oplin.lib.oh.us
   Subject: Thanks!
   
   I've been experimenting with Linux (Red Hat flavor) but needed to
   remove it from a machine to install {gad} Windows. LILO wouldn't go
   away.
   
   I found the answer on your Web site. Thanks for saving me a lot of
   trouble!
   
   --
   James Guilford
     _________________________________________________________________
   
   Date: Wed, 3 Feb 1999 14:08:43 -0600
   From: "John W. Burgoon", jwb@indiana.com
   Subject: J. W. Pennington's article about Doubt
   
   I read Pennington's article with considerable interest and look
   forward to more. As a web developer (trained in Physics and Chemistry)
   I have to point out the word that the hard sciences use in place of
   Mr. Pennington's "doubt": we call that "skepticism". Not cynicism,
   which many folks use as a way to protect their ego. (Failure is more
   common than success, so cynics just predict failure all the time to
   get their winning %age).
   
   Skepticism is a firm belief in empirical or deductive fact coupled
   with a firm disbelief in personal perception. The good engineer is a
   skeptic; he wants to know some empirical fact before he allows himself
   to believe his perceptions. He tests the girder design before it goes
   into a bridge, and even then he over builds that bridge by a factor of
   2 or 3 just in case the wind blows, or any army drives across with
   tanks, or an earthquake hits. And when it fails anyway, he shows up
   and figures out why.
   
   Linux benefits from skepticism since we don't say "Ha, this is
   perfect" but rather we say, "weeellll, this works but so far we
   haven't looked at x/y/z".
   
   Kudos to the good author for pointing out a fine generality in which
   Linux developers can take pride. Healthy old-fashioned skepticism
   kicks ass.
   
   John W. Burgoon
   
     (Mr. Pennington will return with part 2 next month. --Editor)
     _________________________________________________________________
   
   Date: Thu, 04 Feb 1999 04:37:32 -0800
   From: Igor Markov, imarkov@CS.UCLA.EDU
   Subject: Re: The Beauty of Doubt
   
   It seems, you are really talking about *critical thinking*. *Doubt* is
   often caused by critical thinking, but shouldn't be explicitly
   cultivated, in my opinion. Many colleges offer classes on critical
   thinking, and the topic is not that new. It is true, of course, that
   commercial software developers are not as free to think critically
   about their work as FSC folks, hence the advantage of FSC.
   
   Regarding the other three terms: *cooperation* seems too weak, free
   software developers *collaborate*."Cooperation" is what Microsoft does
   when it gets sued for a breach of contract ;-)
   
   *Non-control (read: Freedom)* is vague. You probably mean *independent
   thinking* and, separately, *freedom to allocate personal resources*.
   For example, I may be interested in kernel hacking, just because I
   like the subject (not because I am paid for this) and may have new
   ideas, but not time/skill to implement them. Someone else, who has a
   month of vacation may pick them up and produce something useful.
   
   "Rebellion"... how about "enthusiasm" or, better, "improvement drive".
   I would actually agree that many developers may be driven by a
   rebellion, but not the ones who are responsible for most innovation.
   "Rebellion" does not go well with incremental development models
   somehow.
   
   Finally, the lack and, OTOH, the ease of several aspects of management
   is critical to the FSC as much as the above issues. This may need to
   be discussed as well.
   
   well... so much for a non-native speaker. I guess, you will correct me
   if I messed up connotaions/meanings etc.
   
   --
   Igor
     _________________________________________________________________
   
   Date: Sun, 07 Feb 1999 21:17:27 +0000
   From: Kevin Atkinson, kevinatk@home.com 
   Subject: Did you know about Aspell?
   
   I saw you article titled "ispell: Spelling Checker" in the Linux
   Gazette and was wondering if you knew of the existence of Aspell.
   
   From the manual:
   
   1.1.1.1 Features that only Aspell has
     * Does a much better job with coming up with suggestions than Ispell
       does.
     * Can learn from users misspellings.
     * Is an actual library that others programs can link to instead of
       having to use it through a pipe.
     * Is multiprocess intelligent. When a personal dictionary (or
       replacement list) is saved it will now first update he list
       against the dictionary on disk in case another process modified
       it.
       
   1.1.1.2 Things that only Aspell will have real soon
     * Support for detachable dictionaries so that more than one aspell
       class can use the same dictionary.
     * Support for multiple personal dictionaries as well as support for
       special auxiliary dictionaries.
       
   1.1.1.3 Things that, currently, only Ispell have
     * Lower memory footprint
     * Support for affix compression
     * Support for spell checking Latex and Nroff files.
       
   Granted that when your article was first published Aspell didn't
   exist.
   
   More information can be found at
   http://metalab.unc.edu/kevina/aspell/.
   
   --
   Kevin Atkinson
     _________________________________________________________________
   
   Date: Mon, 22 Feb 1999 15:17:36 -0600
   From: "Gray, Robert C", Robert.Gray@feist.com
   Subject: Not Linux
   
   No offense meant, but
   
   Three states list perjury as a "High crime or misdemeanor" in their
   state constitution they are California, Texas, and Alabama. Three
   others call perjury an infamous crime (same as "High crime..." ?) they
   are West Virginia, Pennsylvania, and Illinois. Three others list
   perjury as an offense serious enough for removal from office they are
   Wyoming, Missouri, and Colorado.
   
   All these states also list conviction of perjury as reason to preclude
   someone from ever holding public office.
   
   In all 50 states perjury is a crime!
   
   --
   Robert Gray
     _________________________________________________________________
   
   Date: Sat, 13 Feb 1999 17:43:22 -0300
   From: Gustavo Larriera, gux@cs.com.uy
   Subject: Corrected version of my article NTloader+Linux
   
   I would be pleased if this letter goes to the Mail Bag section.
   
   I wish to thank the feedback I received for my article "Booting Linux
   with the NT Loader" (LG January 1999). Some readers pointed out my
   misinformation about the MBR-changed-means-NT-wiped-out affair :-)
   I've corrected the article, the revised version can be found at my
   home page [http://w3.cs.com.uy/u/gux/ntloadli2.htm].
   
   Have a lot of fun,
   
   --
   Gustavo Larriera
     _________________________________________________________________
   
              Published in Linux Gazette Issue 38, March 1999
     _________________________________________________________________
   
   [ TABLE OF CONTENTS ] [ FRONT PAGE ] Next 
   
      This page written and maintained by the Editor of Linux Gazette,
      gazette@ssc.com
      Copyright  1999 Specialized Systems Consultants, Inc.
      
    "Linux Gazette...making Linux just a little more fun!"
     _________________________________________________________________
   
   News Bytes
   
Contents:

     * News in General
     * Software Announcements
     _________________________________________________________________
   
                              News in General
     _________________________________________________________________
   
  April 1999 Linux Journal
  
   The April issue of Linux Journal will be hitting the newsstands March
   12. This issue focuses on Network Computing with a review of Corel's
   Netwinder and articles on FlowNET a high-performance network solution,
   Network administration using AWK tools, and an interview with John
   Ousterhout, creator of Tcl/TK. Linux Journal now has articles that
   appear "Strictly On-Line". Check out the Table of Contents at
   http://www.linuxjournal.com/issue60/index.html for articles in this
   issue as well as links to the on-line articles. To subscribe to Linux
   Journal, go to http://www.linuxjournal.com/ljsubsorder.html.
     _________________________________________________________________
   
  Debian Logo Contest
  
   Date: Wed, 03 Feb 1999 20:38:26 -0500
   Debian Project, http://www.debian.org/
   
   The Debian project is in the process of looking for a new logo.
   Currently Debian has a semi-official logo, which can be seen at
   http://www.debian.org/logos/debianlogo-2.jpg. As a
   majority of Debian developers are not happy with the current logo, we
   are searching for a new logo to replace the current one using a GIMP
   logo contest. Submission information and other details are available
   at http://contest.gimp.org/.
   
   Debian would like to have two logos: one logo with a very liberal
   license that everyone is free to use (for example on webpages, shirts,
   etc.), and a more official logo with a restricted license which can
   only be used on official Debian items (like CD's produced from the
   official ISO-images). Please note both license are not finished yet.
   
   The winning logo will be decided on by the Debian developers. Since
   there are a lot of active developers it may take as long as 3-4 weeks
   after the end of the contest to decide who the winner is.
   
   For further information, please send email to the Debian Press Contact
   press@debian.org or visit the Debian homepage at
   http://www.debian.org/ Nils Lohner
     _________________________________________________________________
   
  Invitation to Join Freedom of Choice Project
  
   Date: Fri, 5 Feb 1999 05:20:52 -0500
   The Freedom of Choice Project is a co-operative effort between IACT
   and James Capone, an IACT member as well as devoted user of Linux, who
   created the entire project at his own Linux website. In the project's
   first week, over 5000 people had participated in the Freedom of Choice
   consumer poll. With help from IACT, James Capone now is expanding the
   poll to reach users of _all_ platforms.
   
   As you know, all computer users certainly are affected by an ongoing
   problem in the computer market: Microsoft still maintains an exclusive
   distributorship with PC makers such as Compaq, Dell, Gateway etc..
   Those companies pre-install or "bundle" MSFT software on the majority
   of new PCs we buy. Once the MSFT software is pre-installed, we may
   decide to delete it and then fight to get a refund, but that approach
   still won't get to the root of the problem.
   
   The Freedom of Choice project is our grass-roots, long-term solution.
   By using the Internet as it was designed-- to bring together small
   groups like ours into a larger, stronger and unique network-- we're
   going to defend the fundamental right of consumers everywhere to
   choose any and all software that is installed on the new computers
   they buy.
   
   We want to give users of all platforms the chance to _send a direct
   message_ to the PC makers, to demand that the companies fully respect
   every consumer's right to choose.
   
   For more information:
   James Capone, linuxos@iname.com
   The Freedom of Choice Poll,
   http://www.angelfire.com/biz2/Linux/company.html
   Diane Gartner dgwhiz@earthling.net
   IACT's Freedom of Choice page:
   http://pages.cthome.net/iact/iact-tell.html
     _________________________________________________________________
   
  LinuxArchives.com
  
   Date: Fri, 05 Feb 1999 17:12:14 -0800
   LinuxArchives.com has been launched at www.linuxarchives.com. It is a
   software archive dedicated strictly to Linux software. The site is
   organized into specific categories, and also features a search engine
   that makes finding programs fast and easy. Most of the software is
   submitted directly by the manufacturers and it updated frequently. The
   site should be a valuable resource for Linux users, and Aceweb
   Internet will be working to ensure that it grows at a pace that is in
   step with the ever changing needs of the Linux community.
   
   For more information:
   Tony Ferrara, tonyf@aceweb.net
     _________________________________________________________________
   
  Debian based CUTE 2000 Server exhibited
  
   Date: Fri, 12 Feb 1999 10:08:29 -0500
   CUTE 2000, an all-in-one Linux based server was exhibited at the NET &
   COM '99 show. It is based on Debian GNU/Linux, and includes software
   for functions such as DNS, WWW, SMTP, FTP, SAMBA, NETATALK, DHCP and
   others.
   
   For more information:
   http://www.NikkeiBP.AsiaBizTech.com/Database/1999_Feb/08/Mor.02.gwif.h
   tml
   Debian, http.//www.debian.org/ GLUE: Groups of Linux Users Everywhere
   
   GLUE has added a number of new benefits in recent months to attract
   new groups, and is working hard to give our current member groups an
   excellent level of service. New benefits include: special subscription
   rate to the TPJ and LJ for registered GLUE LUG members, a set of the
   LJ archive CD-ROMs, Red Hat Linux, and TCL Blast. GLUE also continues
   to very graciously sponsored by Caldera Systems, with their Open Linux
   distribution, and Enhanced Software Technologies, with their BRU
   Backup and Restore Utilities. I'm working with Linux user groups to
   find out what other ways GLUE can contribute, from web resources, to
   inviting other vendors to particpate. The glue-list@ssc.com mailing
   list is available for discussion among LUGs.
   
   Linux Users can find a user group with our Group Locator pages, or
   post to find or form one of their own. These listings pages are
   updated and confirmed frequently, and are very comprehensive. Listing
   are free to all groups, not just those registered for GLUE membership.
   
   GLUE is a project of SSC Inc, publishers of Linux Journal. GLUE was
   implemented to provide a world-wide member group for Linux User
   Groups. GLUE member groups receive a subscription, materials for
   promoting and developing their group, a way of advertising their group
   in a global setting, list-serv and Linux Group location services, and
   discounts and samples from SSC and Linux Journal. Other vendors also
   offer special benefits or discounts to GLUE's member groups. Any LUG
   can have a free listing in the Linux Group location section, and Linux
   users can post to the site to find and form new groups in their area.
   
   For more information:
   http://www.ssc.com/glue/ Clarica Grove, glue@ssc.com
     _________________________________________________________________
   
  Linux Hardware Solutions to support Debian Project
  
   Date: Thu, 25 Feb 1999 12:51:21 -0500
   Linux Hardware Solutions, Inc. a premier supplier of Linux systems and
   service announce support for the Debian Project of Software in the
   Public Interest, Inc.
   
   The support comes in the form of a Linux Hardware Solution PS350RR-100
   RAID rackmount server with 256 MB RAM attached to a dedicated
   colocation connection at Mindspring Enterprises' data center in
   Atlanta, Georgia to act as the new ftp.debian.org server.
   
   For more information:
   Linux Hardware Solutions, Inc., http://www.linux-hw.com/
   Debian GNU/Linux, http://www.debian.org/
     _________________________________________________________________
   
  Subject: Dan Quayle or Linus Torvalds for President
  
   Date: Fri, 26 Feb 1999 14:52:40 -0700
   Even If you sat out the 60s, missed the March On Washington, or the
   Windows Refund Protest, you can still voice your vote for
   freedom--specifically, the freedom to use the Open Source computer
   operating system, Linux. As noted in this morning's Wall Street
   Journal, a young company called Linuxcare is holding a just-for-fun
   election for the new Leader of the Free World! Who would you choose:
   Bill Bradley, George Bush, Jr., Bill Gates, Al Gore, Dan Quayle, or
   Linus Torvalds? You can cast your vote at http://www.linuxcare.com,
   until "Super Tuesday," March 2, which also happens to be the opening
   day of LinuxWorld--the world's largest gathering of Linux users
   (http://www.linuxworldexpo.com/).
   
   The results will be published in the Wall Street Journal on March 2,
   the day Linuxcare goes live.
   
   Let the people decide -- in the democratic spirit that permeates Open
   Source --Get Out The Vote (GOTV) for the leader of the FREE WORLD.

   Linuxcare announced on March 2 that Linus had won with 73% of the vote. 
   No other candidate received more than 9%.

     _________________________________________________________________
   
  Linux Links
  
   Open Source MS Windoze 9x Petition:
   http://www.linuxresources.com/linuxreview/petition.html
   
   Brain Power, Jobs for Smart People: http://www.bpower.com/
   
   LinuxODBC: http://www.codebydesign.com/LinuxODBC
   
   UNIX newbie site: http://www.dicamp.univ.trieste.it/du96/unix/TOC.html
   
   New Linux logos:
   http://www-mddsp.enel.ucalgary.ca/People/adilger/logo/
   
   Compaq web page: http://www.unix.digital.com/linux/
   
   The Linux Merchandsising FAQ for Germany:
   http://www.reichmann.de/alex/lmf/index.html
   
   Microsoft & new lawsuits:
   http://www.zdnet.com/zdnn/filters/bursts/0,3422,2213093,00.html
   
   Vedova Linux, a new Linux distribution based on Debian GNU/Linux:
   http://www.vedovanet.bbk.org/linux/vedova
   
   CRN spot survey:
   http://www.techweb.com/se/directlink.cgi?CRN19990118S0023
   http://www.linuxresources.com/linuxreview/petition.html
   
   Ramblings on Apple and Linux:
   http://www.osopinion.com/Opinions/EdMcKenna/EdMcKenna2.html
   
   IBM and Redhat: Red Hat Press Release
     _________________________________________________________________
   
  Xpresso Ltd Needs Programmers
  
   Date: Mon, 22 Feb 1999 10:28:00 -0500
   I have a small company named Xpresso Ltd. This will hopefully produce
   a new simple software system aimed at users of Windows. The idea is to
   sell the Linux OS with the installation and set-up completely
   automatic. It will use one or more choices of graphical user shells
   (KDE as first default choice). The latest Linux Kernel 2.0.xx will be
   used (and built specifically for each installation - with maths module
   if processor is without etc). The System will analyse the hardware and
   construct or select the correct X Windows drivers and install correct
   files ( /fstab etc). by examining the existing DOS/Windows OS files or
   running MSD.EXE or similar. I have very little finance and am hoping
   to find programmers who will help me on a percentage basis. I shall be
   selling the product world-wide and hope millions of units will be
   sold. Can you possibly help me with details of any sources of
   programmers for this work please? The main aims are simple, safe
   (stable) and visually attractive graphics. The user will do nothing
   except click GO. Star Office and other quality free programs (only the
   best) will be included. But only the best. To enable all Windows users
   to switch to Xpresso LINUX. A safe dual boot on
   start up will enable the migration from Windows to Linux to proceed
   slowly, at each person's pace. Can you help please? I can e-mail a
   four page outline of my further plans for Linux if you are interested.
   
   For more information:
   Stephen Jackson, Xpresso Ltd, xpresso@compuserve.com
     _________________________________________________________________
   
                           Software Announcements
     _________________________________________________________________
   
  Vedova Linux
  
   Date: Thu, 4 Feb 1999 20:19:29 +0100
   New Linux Distribution based on Debian GNU/Linux
   
   http://www.vedovanet.bbk.org/linux/vedova/
   
   For more information:
   Emanuele Vedova, vedova@mail.omnitel.it
   Vedova Computing, Como, Italy
     _________________________________________________________________
   
  Linux for Coldfire
  
   Friday, 28th February 1999
   Greg Ungerer from Moreton Bay today announced the porting of the
   popular Linux operating system to the Motorola Coldfire family of
   processors. Source code for this Linux/Coldfire project is now
   available freely on the net at:
   http://www.moretonbay.com/coldfire/linux-coldfire.html
   
   The Linux/Coldfire project is a port of a recent Linux kernel and, as
   with all ports of Linux, this is free software under the GNU Public
   License. The code is based on the recent stable linux kernel version
   2.0.33 and it includes the uC-linux patches applied. The libc, libm
   and user applications also come from the uC-linux work.
   
   What's a ColdFire?
   ColdFire is the newest family of microprocessors from Motorola. First
   released in 1994, ColdFire embodies a revolutionary variable-length
   RISC architecture that is designed to meet the requirements of the
   embedded consumer market.
   http://www.mot.com/SPS/HPESD/prod/coldfire/cf_roadmap.html
   
   For more information:
   Moreton Bay, http://www.moretonbay.com/
     _________________________________________________________________
   
  SFS SOFTWARE RELEASES DOCFATHER PROFESSIONAL 2.2
  
   Schmalkalden Germany. February 1, 1999
   SFS SOFTWARE announces the release of DocFather Professional 2.2,
   their fast, easy to navigate online and offline search engine for any
   web site or web-based documentation. DocFather provides webmasters,
   publishers and developers alike with an excellent utility to make
   their Web Sites, HTML documentation or internet/intranet contents
   searchable.
   
   DocFather is top-rated and able to run on any Java-supported operating
   system like Linux. The nextcoming DocFather Office Edition is capable
   to index Adobe PDF, Microsoft Word and Excel, HTML and all text-based
   files.
   
   Availability and Pricing
   
   There are several DocFather licenses available. The product can be
   ordered on-line at the SFS SOFTWARE web site, or through its US-based
   partner Proactive International:
   
   Internet License: $ 349.00
   Intranet License: $ 990.00
   CD-ROM Publishing License for 10,000 CD-ROM: $ 1,990.00
   
   A fully-functional demo version of DocFather is available for free
   download at http://www.sfs-software.com/
   
   For more information:
   SFS Software, info@sfs-software.com
   Proactive International, LLC, http://www.proactive-intl.com,
   info@proactive-intl.com
     _________________________________________________________________
   
  Product Release of the MIMER DBMS for Linux
  
   Date: Wed, 03 Feb 1999 13:11:58 +0100
   Sysdeco Mimer AB in Uppsala, Sweden, has now released its DBMS MIMER
   for Linux. A complete developer version of MIMER 8 for Linux is now
   available for free download from the company's Web site at
   http://www.mimer.com. Full support agreements are available for MIMER
   8 on Linux.
   
   The release of MIMER for Linux is identical to that implemented across
   a wide range of platforms, including many other UNIX platforms (e.g.
   IBM, HP and Sun), Windows NT, Windows 95/98 and OpenVMS. In addition
   to offering MIMER 8 run-time licences for Linux on very competitive
   terms, Sysdeo Mimer also offers Linux customers the opportunity to
   sign a support agreement, which provides telephone support and free
   software updates.
   
   For more information:
   Sysdeco Mimer AB, info@mimer.se
     _________________________________________________________________
   
  PartitionMagic 4.0
  
   Date: Tue, 2 Feb 1999 22:14:27 GMT+2
   Recently released in the United States, PartitionMagic 4.0 - touted as
   the easiest way to create, resize and move harddisk partitions on the
   fly without destroying data - is now available in South Africa through
   accredited PowerQuest software distributor, OS/2 Express SA.
   
   PartitionMagic 4.0 offers complete support for FAT16, FAT32, FAT32X,
   NTFS, HPFS and Linux ext2 partitions. PartitionMagic continues to
   convert from FAT16 to FAT32 and vice versa, and from FAT to NTFS and
   HPFS.
   
   PartitionMagic 4.0 is available from OS/2 Express SA for R459. An
   upgrade from earlier versions is available for R289 including VAT.
   
   Additionally graphics / boxshots may be found at :
   ftp://ftp.powerquest.com/pub/Intl/graphics/PartitionMagic/PM4.x/ 
   
   For more information:
   os2express@icon.co.za
   http://www.os2.co.za/software/
     _________________________________________________________________
   
  LyX-1.0.0 released
  
   Date: Tue, 02 Feb 1999 21:58:22 +0200
   LyX is an advanced open source document processor running on many Unix
   platforms. It is called a "document processor", because unlike
   standard word processors, LyX encourages an approach to writing based
   on the structure of your documents, not their appearance. LyX lets you
   concentrate on writing, leaving details of visual layout to the
   software. LyX automates formatting according to predefined rule sets,
   yielding consistency throughout even the most complex documents. LyX
   produces high quality, professional output -- using LaTeX, an open
   source, industrial strength typesetting engine, in the background.
   
   LyX has undergone a quantum leap in functionality over the past 18
   months. This release offers extensive control over fonts, margins,
   headers/footers, spacing/indents, justification, bullet types in
   multilevel lists, a sophisticated table editor, a version control
   interface for collaborative projects -- the list goes on and on. LyX
   1.0 includes many standard formats and templates such as for letters,
   articles, books, overheads, even Hollywood scripts. Work continues on
   a growing library of "plug-in" formats and templates, in the best
   open-source tradition.
   
   LyX runs on standard Unix platforms, including Linux, FreeBSD, NetBSD,
   Solaris, IRIX, HP-UX, AIX, ... even OS/2 and Cygnus/Win32 (somewhat
   experimentally), and provides native support for PostScript(tm) fonts
   and figures.
   
   The main LyX site is ftp://ftp.lyx.org/pub/lyx/
   
   For more information:
   LyX Home Page: http://www.lyx.org/
     _________________________________________________________________
   
  Raima's Velocis 2.1 Now Available on Linux
  
   Date: Tue, 9 Feb 1999 14:33:59 -0800
   Raima Corporation has just released Velocis Database Server version
   2.1 for the Linux platform. Velocis is an embedded client/server
   database engine which now provides robust new interfaces for several
   popular development environments. These include an interface to Rogue
   Wave Software's DBTools.h++, a JDBC driver, Delphi Data Aware
   Components and support for the Perl DBI standard. Velocis 2.1 extends
   its SQL support with scrollable cursors and customized comparison
   functions and introduces a powerful new database utility, dbrepair.
   
   Please see the following announcement to learn more about Velocis 2.1.
   
   A free trial download is available from
   http://www.raima.com/download/product_list.cfm
   
   Raima Corporation, http://www.raima.com
     _________________________________________________________________
   
  SFS Software SITEFORUM Database Exchange
  
   Schmalkalden Germany. February 8, 1999
   SITEFORUM Database Exchange is a "100% pure Java" solution, which is
   capable to import and export your existing data, stored in any
   JDBC/ODBC-compatible database into another JDBC-/ODBC- compatible
   database. (i.e. Sybase to Oracle). The software allows you to create,
   delete and modify tables and columns . In addition to that you are
   able to modify the content, field types and attributes. The integrated
   SQL interface enables you to make queries to the database using SQL
   commands The results will be displayed in a fine-designed grid
   component. SITEFORUM Database Exchange lets you import and export
   databases from any location on the internet, the built-in proxy
   support enables you to work even behind a proxy or firewall. The new
   product of SFS SOFTWARE offers an attractive, intuitive and
   easy-to-use interface. SITEFORUM Database Exchange runs on about 30
   java-supporting operating systems like Linux.
   
   Availability and Pricing:
   A fully-functional evaluation version SITEFORUM Database Exchange can
   be downloaded from the SFS SOFTWARE web site at
   http://www.sfs-software.com/. The product is can be ordered using our
   secure online shop at http://www.sfs-software.com/shop/.
   
   SITEFORUM Database Exchange - Single User License - US$ 495.00
   SITEFORUM Database Exchange - 5 User License - US$ 1,990.00
   
   For more information:
   SFS Software, http://www.sfs-software.com/, info@sfs-software.com
   Proactive International, http://www.proactive-intl.com/,
   info@proactive-intl.com
     _________________________________________________________________
   
  Linuxcare Supports Business 24x7
  
   Date: 22 Feb 99 18:15:11 -0800
   
   SAN FRANCISCO, February 22, 1999=97Linuxcare, Inc. (www.
   linuxcare.com), the first company to offer a complete solution for
   Linux technical support, consulting, education, and product
   certification to Fortune 1000 companies, announced today the launch of
   24x7 enterprise- class support programs, including a state-of-the-art
   call center and business-oriented service level agreements.
   
   Linuxcare's state-of-the-art call center will feature advanced
   computer- telephony integration (CTI), so that all requests are
   received centrally and tracked, thus delivering speedier and more
   accurate customer responses. In addition, all Linuxcare technical
   support engineers can instantly access and update the largest shared
   database of worldwide Linux resources and expertise. The database
   includes all open and solved customer issues, all Linux documentation,
   articles, mailing lists and news group archives, Howtos, FAQs and
   more.
   
   Linuxcare supports all major distributions of Linux on all major
   platforms, allowing its customers the flexibility to choose options
   that best fit their needs.
   
   For more information:
   Linuxcare, Inc., http://www.linuxcare.com/
     _________________________________________________________________
   
  NetReality reads, understands, organizes, and presents the Web in virtual
  reality
  
   EDMONTON, ALBERTA--February 23, 1999-- Bittco Solutions today released
   the first downloadable exemplar of its powerful neural-net foundation
   technology. NetReality reads, understands, organizes, and presents Web
   content in VR. NetReality harnesses the vast amounts of information
   available on the World Wide Web. Unlike current technologies, which
   seem to increase the problem of information overload, NetReality
   automatically acquires, reads and organizes information, presenting
   web sites, documents, searches and bookmark files in an intuitive,
   personalized VR landscape. This unique and powerful form of
   presentation enables users to quickly locate, correlate, and apply
   information on the Web to tasks at hand.
   
   UNIQUE BUSINESS PROPOSITION - Bittco licenses its neuralVR technology
   to third parties for inclusion in products like web servers, browsers,
   search engines, document management solutions, news readers, and
   email. We have blown away all the traditional barriers to acquiring
   our technology, emphasizes Managing Partner, Terry Harrison, Our
   business approach supports low-cost/low risk acquisition vs.
   development. Interested software producers can embed this technology
   on a sizzling time-to-market schedule by licensing the Bittco advanced
   engineering, core and customization.
   
   PRE-RELEASE VERSIONS of NetReality (TM) for all common operating
   systems will be available for download from Bittco's Web site at
   http://www.bittco.com/ in the next few weeks beginning today with a
   version for all Linux users.
   
   For more information:
   Bittco Solutions Ltd., Dean Bittner, dean@bittco.com
     _________________________________________________________________
   
  Linuxcare and DELL Systems
  
   SAN FRANCISCO, February 26, 1999-Linuxcare, Inc - the first company to
   provide a complete solution for Linux technical support to Fortune
   1000 companies - announced today that it will provide comprehensive
   global support for selected Dell Precision(tm) WorkStations,
   PowerEdge=AE servers and OptiPlex business desktop PCs running any
   variant of the Linux operating system.
   
   Dell will include a free Linuxcare Silver Support Incident Coupon with
   every PowerEdge server that ships with Linux, starting March 1, 1999.
   Each coupon can be redeemed for Web or email-based technical support
   from Linuxcare. The Linuxcare Silver Service Level provides for
   resolution to, or a report on the customer's problem, within one
   business day. Linuxcare defines a technical support incident as a
   single identified customer issue or problem.
   
   Linuxcare, Inc., http://www.linuxcare.com/
   Dell Computer Corporation, http://www.dell.com/
     _________________________________________________________________
   
  Spectra Logic
  
   SAN JOSE, Calif., Mar. 1, 1999 - Spectra Logic Corp. today announced
   that the company's Alexandria Backup and Archival Librarian(tm)
   software is the first major backup software to support "hot" backup of
   Oracle8 and Oracle Applications on the Linux operating system (OS).
   Alexandria 4.50 provides Linux users with extensive backup and
   recovery tools that until now have only been available in large
   corporate data centers.
   
   Alexandria 4.50 supports backup of Oracle databases without taking the
   database offline via its Comprehensive Online Backup and Restore Agent
   (COBRA), the industry's fastest and most reliable Oracle
   backup/restore engine. In Oracle production environments, COBRA
   automatically discovers Oracle databases, including new tablespaces
   and datafiles, and puts the tablespaces into backup mode. Once the
   tablespaces are in backup mode and the datafiles are backed up, the
   tablespaces are taken out of backup mode.
   
   Availability
   Alexandria 4.50 with support for Oracle on Linux is available today
   for Red Hat Linux, Version 5.2. Additional Oracle on Linux support is
   planned for Caldera, SuSE and Turbo Linux OSes. A single-user version
   of Alexandria is available free for 45 days and can be downloaded from
   http://www.spectralogic.com/. At the end of the 45-day trial period,
   the hot Oracle backup module can be purchased directly from Spectra
   Logic.
   
   For more information:
   Spectra Logic, alexandria@spectralogic.com
     _________________________________________________________________
   
              Published in Linux Gazette Issue 38, March 1999
     _________________________________________________________________
   
   [ TABLE OF CONTENTS ] [ FRONT PAGE ] Back Next 
     _________________________________________________________________
   
      This page written and maintained by the Editor of Linux Gazette,
      gazette@ssc.com
      Copyright  1999 Specialized Systems Consultants, Inc.
      
    "The Linux Gazette...making Linux just a little more fun!"
     _________________________________________________________________
   
                           (?) The Answer Guy (!)
                                      
                   By James T. Dennis, answerguy@ssc.com
          Starshine Technical Services, http://www.starshine.org/
     _________________________________________________________________
   
  Contents:
  
   (!) Greetings From Jim Dennis
   
   (?) hmm. --or--
          FTP Only Access: Trickier than it Seems 
          
   (?) Why can I only login as root? --or--
          Another "No Login" Problem 
          
   (!) A Reader Answers: What is the TCP/IP SACK feature? 
          
   (?) Unable to Open Console: After "Custom" Install 
          
   (?) "Integrating" Linux/sendmail with MS Exchange 
          
   (?) Win 95 computer/NT server environment --or--
          Shell Scripting: Getting Host and User Names 
          
   (?) Bad Sectors in my HDD --or--
          More on: Bad Sectors 
          
   (?) Please upgrade your Internet Explorer --or--
          The Presumption! 
          
   (?) linux --or--
          Mysterious Message: Subject: Linux 
          
   (?) Diamond Multimedia Modems --or--
          Reader Comments: Diamond WinModems: 
          
   (?) About a OPL-3 ( Yamaha driver for sound) (sorry for bad
          english...) --or--
          OPL-3 Sound Drivers 
          
   (?) Question from an old friend.
          
   (?) [Q]: Winmodem under Linux
          
   (?) how to fix a bad cluster on hd --or--
          More Bad Clusters 
          
   (?) proxy & router combination --or--
          Proxying over PPP 
          
   (?) help with partitions --or--
          Installing on a Big Drive: More on the 1023 Cylinder Limit 
          
   (?) Linux 5.2 Loadlin.exe, where do I get it? --or--
          Finding LOADLIN.EXE ... and Linux Loader for Win '9x 
          
   (?) help with partitions --or--
          Partitioning Mini-HOWTO 
          
   (!) True modems
          
   (?) Is it possible to run Debian on 4 MB? --or--
          Low Memory Installation 
          
   (?) win95->wingate ; linux->? --or--
          Drop-in Replacement for "WinGate" 
          
   (?) Jim Dennis: Re: Gimp on RH5.1
          
   (?) xntpd --or--
          How 'ntpdate' finds IP addresses? 
          
   (?) Sportys
          
   (?) souncards
          
   (?) Great Job !!! --or--
          Linux as a Loghost (Syslog Server) 
          
   (?) Telnetd and pausing
            ____________________________________________________
   
(!) Greetings from Jim Dennis

   I have some exciting news.
   
   I'm now working for Linuxcare (http://www.linuxcare.com) --- the Linux
   support company.
   
   What does this mean for Linux Gazette readers of "The Answer Guy?" I
   think it means some very good things.
   
   Of course you might be concerned. Does this mean that I'll be more
   "corporate?" Will Linuxcare come to own "The Answer Guy" column? Will
   I answer all the good questions with: "Hey, pay for that answer from
   ..."
   
   I don't think so! I've been running a quiet little sole proprietorship
   consulting service for the entire time that I've been writing for LG.
   My consulting service specialized in support and training of Linux
   sysadmins. I've generally avoided "selling" my services through this
   column --- and I won't start now.
   
   Linuxcare has no intention of exerting any editorial control over, and
   has no connection to the Linux Gazette "Answer Guy." I might put in a
   disclaimer to that effect in future issues.
   
   However, the "good things" in this are:
   
     I can focus on technical issues rather than worrying about billing
     and sales of my consulting services. (Avoiding those is what kept
     Starshine Technical Services "small" and "quiet").
     
     Fellow techs at Linuxcare and the systems lab that we'll be setting
     up will allow me to learn all the latest and coolest stuff. My home
     network is pretty big, for a *home* network (four servers five
     desktop systems, and four laptops --- all on two or three ethernet
     segments (depending one what I'm doing at any given time). However,
     Linuxcare will be able to do *much* more.
     
     In the past I've "shooed off" some classes of questions ---
     particularly regarding X Windows configuration and similar items.
     I'm a self-admitted "curses curmudgeon" and prefer to stay out of X
     when I can. Surrounded by younger techs, many of whom are more
     enamored of the modern GUIs --- I'll soak up quite a bit of
     knowlege on these topics by osmosis.
     
   For those times when I'm actually on the phones --- I'll probably get
   quite a lot of LG done. I spent years in technical support at places
   like Quarterdeck and Symantec's Peter Norton Group. I can do phone
   support while reading netnews, and writing e-mail.
   
   So, for my loyal fans (I know there are a few of you -- I met one on
   the Caltrain the other day; "Hi, John"), Don't worry. Be happy.
   Another Linux hobbyist can do what he loves and support himself doing
   it.
   
   (BTW: Linuxcare is hiring. If you are in the SF Bay Area and have a
   couple years of extensive and technical Linux expertise --- check out
   their web site).
   
   What does this mean for my other projects?
   
   I'll be giving my tutorial on "Linux Security for System
   Administrators" at LinuxWorld Expo by the time you read this (9:00am
   Monday, March 1st). If that is successful I may be giving similar (and
   updated) talks at future Linux events. (LinuxWorld has already
   inquired about my availability for their next show). For any of you
   that are going to LinuxWorld Expo in San Jose, CA --- drop by
   Linuxcare's booth and meet me.
   
   I'm still working on my book ("Linux Systems Administration" ---
   though the work is going a bit slower than I, my publishers and my
   co-author would like. The goods news there is that my co-author, M, is
   really taking charge of the scheduling and development of the
   manuscript. Also the couple of hours a day that I spend on the train
   with my laptop (from Campbell up into SF city and back) will help keep
   me focused on this and stop me from drifting e-mail, netnews, and
   slashdot as I'm wont to do from home.
   
   I'm still teaching one class (weekly on Saturdays) at Mission College
   (Unix Shell Programming). I hope to continue doing that for the
   foreseeable future as well. My students were worried for the first
   couple of classes (as I was adjusting the level of discussion to their
   background). However, they seem to be catching on at this point and we
   have several more weeks to show them all the really cool things you
   can do with a Unix/Linux shell. (Yes, we've told them all about
   getting copies of Linux and/or FreeBSD to play with at home and at
   their offices. The school lab current runs on Sun Solaris systems ---
   though Linux is being installed in some of the college's new labs.
   
   I'm really surprised at how busy I've gotten this year. I was supposed
   to just work on the book and let Heather support me (mostly).
   (Incidentally, Heather has resigned from her full-time position and
   may be interested in quality, Bay Area offers in the near future).
   
   So, enough of all this "chaos manor" stuff. Let's go on to this
   month's selection of technical questions...
            ____________________________________________________
   
(?) FTP Only Access: Trickier than it Seems

   From chris on Fri, 29 Jan 1999 
   
   (?) i was recently reading your article in the december issue of
   linuxgazzette regarding setting up users for FTP access only. [titled
   "FTP Login as 'root' --- Don't! -- Heather] i ran into this problem
   about a month ago and putting a * in front of the password entry in
   the /etc/passwd file fixed the problem. no telnet/login access, but
   ftp access. is there something i dont know that prevents this from
   being a simple solution? 
   
   chris. 
   
     (!) "Starring out" the password field (the one between the second
     and third colons on that users line in /etc/passwd) should also
     prevent FTP access (unless your FTP daemon uses some other form of
     account management and authentication).
     
     Locking out the "shell" field (the last one) by setting it to
     /bin/false (if /bin/false is actually a compiled binary --- NOT the
     traditional shell script) or to a simple compiled program that does
     a 'printf()' or 'write()' and an 'exit()') will prevent telnet
     access. However it might not prevent 'rsh' and it certainly won't
     limit the user "just" to FTP.
     
     The clever user can post all sorts of .forward, .procmail and other
     files to his or her home directory (using FTP) and these "magic"
     files can be used to run arbitrary commands (generally under that
     user's ID) on behalf of the user. Thus I could post a .forward file
     that "forwarded" my mail through a program (using the piping
     feature that most installations of 'sendmail' are configured to
     support). My program can issue commands like 'chsh' (to change my
     shell to something that I can use).
     
     There are many "magic" files. I can use FTP to create a .ssh
     directory and put in the .ssh/authorized_keys which will then let
     me 'ssh' into the system (if you're running an ssh daemon). Not
     only are there many of these --- but more of them are added as we
     create new protocols and services.
     
     So, you really need to do more than just set their shell to
     '/usr/local/bin/noshell' or 'goaway' or '/bin/sync' That's why I
     suggest using a replacement to the standard old BSD FTP daemon. Go
     read the article again for that.
            ____________________________________________________
   
(?) Another "No Login" Problem

   From Spiros Alexiou on Fri, 29 Jan 1999 
   
   Thanks for your help. I am attaching a small file with more info. 
   
   It looks to me like the root of the problem is that the RH graphical
   tool does NOT encrypt the user account passwords, though root for
   example is encrypted. So either I missed something in the RH
   documentation, it is missing, or there is a bug, if what I think is
   right(please let me know). 
   
   If that is the case, I need to either run some additional tool that
   will encrypt the passwords or else remove the users and create the
   accounts by adduser 
   
   Please let me know if this sheds some light
   Spiros Alexiou 
   
   P.S. do you have IP for ssc.com? My other mailer does not know that
   address 
   
     (!) It would be very unwise to attempt to mail your message to an
     IP address. Internet mail processing using a different sort of DNS
     resource record than other TCP/IP protocols --- is uses MX records.
     If your mailer can properly pass the mail to a "smarthost" and
     can't properly handle the requisite MX resolution then you just
     shouldn't use it (or you should get it "fixed").
     
   (?)
   >I have RH 5.0 (2.0.32). Using their graphic tool, I created two
   >/home accounts, me and guest, assigned UID and GID's and set
   >passwords. The problem is, I can only log in as root. I looked for
   >.nologin files, there seem to be none. I am attaching my
   >/etc/fstab files. Thus, at the linux prompt If I try to login as
   >any of these two users, 
   
   >I am denied entry(back to the prompt). This is not an issue of
   >case sensitive. 
   
   >Any ideas of what I am doing wrong?
   >Sincerely, S.Alexiou 
   
     (!) I have NO idea. I've gotten a rash of different reports of this
     sort. All involve Red Hat usually right after new installations ---
     no login from console, no login over telnet, no login as root, no
     login as anyone other than root. 
     
   (?) Nice to know I'm not alone... 
   
     (!) Unfortunately all of these cases, so far, are being reported to
     me incompletely. Only sparse details ahve been provided (as above).
     I've mailed off troubleshooting suggestions and recieved no
     followup to explain them. 
     
     So, I don't get it. 
     
     You said you used their graphical tool to create two new accounts.
     One was named "guest" and the other was some sort of user name for
     yourself. 
     
   (?) Yes, since I use the PC as a workstation and do not care about
   having other users, using it as a web server etc, the second account
   was the shortest possible account I could think of, "me" 
   
     (!) You also said you set the passwords for these two accounts. 
     
   (?) Yes, I did (see below) 
   
     (!) Let's try this: edit your passwd file. I personally prefer to
     use vipw for that --- but Red Hat 5.0 had a broken 'vipw' command
     (immediate segfault) and my fresh installation of 5.2 also has a
     broken 'vipw' command (needed to add a symlink from /bin/vi to
     /usr/bin/vi --- GRRR!). So, just use your favorite editor and keep
     a rescue floppy handy in case you reboot the system with a corrupt
     /etc/passwd file. 
     
   (?) Wait, do I need a rescue disk? My hard disk are IDE, not SCSI and
   I am supposed to only need to RH boot diskette. right? If I do need a
   resue disk, can I create it without reinstalling? At any rate, I try
   to be very careful when I edit root stuff, but it's better to be
   safe.. 
   
   Here is my /etc/passwd file 
> root:hASh-OMitTed:0:0:root:/root:/bin/bash
> bin:*:1:1:bin:/bin:
> daemon:*:2:2:daemon:/sbin:
> postgres:!!:100:101:PostreSQL Server:/var/lib/pgsql:/bin/bash
> me:notencrypted:500:500:Red Hat Linux User,,,,:/home/me:/bin/bash
> guest:sanitized:501:501:Red Hat Linux User,,,,:/home/guest:/bin/bash

     (!) Incredible. It's amazing to think that this tool is that bad!
     
   (?) You will notice that the root password is encrypted , while the me
   and guest passwords are not. Actually the root and me have the same
   password But I do not recall any warnings about that in the RH graphic
   user creation. BTW, for the record, I did at one point reinstall and
   created the same guest and me accounts I had created originally, but I
   was unable to login as anything but root even with the original
   installation Also, for the record, I do have some problems with my
   XF86Config, but unless you believe this to be important( should not,
   as the graphic tool showed no problems), I may bother you another time
   :) Finally the UID and GID were assigned by the graphic tool, I just
   acepted what was there. Let me also add, that when I looked at the
   corresponding /etc/passwd file in a large AIX machine (I was just a
   user, not administrator) all I could see of course were ! for password
   field, but other than that the password file looks ok to me. 
   
     (!) Try setting the account passwords to something simple like just
     "x" --- and use the /bin/passwd command, not any sort of curses or
     GUI front end. Consider removing 'linuxconf' (for troubleshooting).
     
   (?) Haven't done ths yet. I am not sure what troubleshooting I would
   do to remove linuxconf. 
   
     (!) If you're using shadow passwords try running pwunconv and if
     you're not, try running pwconv (to convert your passwd file to or
     from shadow format). 
     
   (?) Will try that. Just please let me know, if you also think that the
   problem is that the guest and me passwords are not encrypted. 
   
   Please, let me know if you figure out what's doing it. 
   
     (!) Umm! I don't know what sort of GUI user admin tool this is ---
     but don't use it to set initial passwords! Just go to a root shell
     prompt and issue the command:
     
     passwd me
     
     ... and set the initial password for that account using the
     traditional old terminal command for the purpose. Then do the same
     for your personal account. Then report the bug to whoever maintains
     the tool you were using.
            ____________________________________________________
   
(!) A Reader Answers: What is the TCP/IP SACK feature?

   From Tom Kludy on Thu, 04 Feb 1999 
   
   (?) What is the TCP/IP SACK feature? What does it do? 
   
     (!) SACK = Selective ACKnowledgement. It is an extension to TCP/IP
     which allows you to acknowledge reception of specific packets.
     (read on) 
     
   (?) Why do we need/want it? 
   
     (!) When sending a group of packets across a network, you need the
     receiver to acknowledge those packets that are received. TCP
     without SACK simply acknowledges the last packet that was received.
     (Actually, the ACK has the number of the next packet requested, but
     that's neither here nor there). However, with TCP there are usually
     several packets in transit between the source and destination at
     any one time. That means that the source will not recognize that
     the destination has dropped a packet until it sees the same ACK
     several times (4, I think) or until a timeout has passed. It then
     resends the packet that has been dropped. 
     
     Let's say that there is are 10 packets in route between the source
     and destination. Along the line, packets 1,2,3, and 4 are received,
     and ACKed. Packet 5 is dropped, but all other packets are delivered
     successfully (6,7,8,etc). The receiver will ACK 5 upon receiving 4,
     6, 7, 8, etc. But since there are 10 packets in transit between
     source and destination, the receiver won't see the repeating ACKs
     until it has sent all packets up to about packet 25 (since, at the
     same time the receiver should be receiving packet 5, the sender is
     sending packet 15 (5+10), plus the 10 packet delay until the sender
     gets the ACK). 
     
     At this point, the sender finally knows that packet 5 has been
     dropped, and resends it. But it doesn't know that the receiver has
     successfully received packets 6 through 25. So, it must wait until
     the receiver gets the new packet 5, and returns "ACK 26", before it
     knows where to restart. It will take 20 packet-transmission times
     to get this ACK (or, one whole round-trip-time). As you can guess,
     this slows things down considerably. SACK allows the receiver to
     say "I've missed packet 5, but I've received packets 6-25". This
     allows a much quicker transmission restart, since the source knows
     within a 1/2 round-trip-time where to resume transmission (instead
     of a whole round-trip-time). 
     
   (?) It the Linux implementation any better or worse than others? (Or
   is it some feature where you pretty much either have it or you don't
   and there is no "better" or "worse")? 
   
     (!) I think it falls under "there is no better or worse", except
     that if the underlying TCP implementation is more efficient, then
     SACK might help even more.. 
     
     Hope I have answered the answer guy :) Please note that this is all
     from memory, as I haven't dealt with this in quite a while. 
     
     -Tom Kludy 
     
     (!) Yes. Your answer was perfect. I'm forwarding it to my editors
     as is.
            ____________________________________________________
   
(?) Unable to Open Console: After "Custom" Install

   From Bob Miller on Thu, 04 Feb 1999 
   
   (?) This sounds more like the kernel is being told to use the wrong
   partition for root than a package problem. 
   
     (!) That would be in the category of "There's no /dev/ directory
     with the proper tty* nodes available."
     
     Either of these would cause the problem. As I recall I recommended
     booting from floppy, checking the filesystem that he was trying to
     mount as root. If that is inconsistent with his kernel's 'rdev' or
     his /etc/lilo.conf parameters --- it would explain the problem
     
     Another, more convoluted possibility is that he has a problem with
     his 'initrd' image (if he's using an initial RAMDisk to store and
     load some of his critical device drivers).
     
     Hopefully he's worked it out. I realize my response might not have
     been all that clear. Sometimes I have to beat it back and forth
     with a correspondent a couple of times before I "get it" ---
     sometimes that has more to do with sleep deprivation than with
     technical background or communications failures.
            ____________________________________________________
   
(?) "Integrating" Linux/sendmail with MS Exchange

   From Kevin Harrison on Fri, 05 Feb 1999 
   
   (?) jim; 
   
   Kia Ora from Auckland , New Zealand 
   
   I have inherited a box with Linux installed on it and we wish to
   integrate the linux email (using sendmail) with the dreaded
   ms-exchange which runs on NT....the main reason is so that LAN clients
   can receive email notifications from jobs that will run on the linux
   box. 
   
   Are there any quick guides out there on this procedure..
   thanks mate
   Kevin Harrison, Downunder 
   
     (!) There should be no special work in this regard.
     
     Let's assume that your domain was "downunder.nz" and that you MS
     Exchange server is configured as the primary "MX" host for that
     domain (meaning that all outside mail to "foo@downunder.nz" gets
     directed to it). Let's say your Linux system is named penguin. So
     you can create an MX record for penguin.downunder.nz and mail to
     foo@penguin.downunder.nz will go to the Linux system rather than
     the MS Exchange server (which we'll call "msnail" --- <g>for "MS Nt
     mAIL"</g> ;) .
     
     Now mail coming from penguin, to foo@downunder.nz will go
     automatically to msnail.downunder.nz where MS Exchange will mangle
     it.
     
     A better approach is to point your primary MX record to penguin.
     Penguin can then have a large aliases file for all of the users and
     accounts that exist in your domain --- directing the mail to the
     more specific hosts on which those users get their mail. Thus all
     the MS Outlook and MS Mail users could get their mail from msnail,
     while your Linux users can get theirs directly from penguin (either
     via POP/IMAP or by logging in to their shell account and reading
     mail with 'elm', 'pine', 'mutt', or any mailer they like. You heavy
     volume mail users who are using MS Outlook can still get their mail
     directly from penguin (via POP).
     
     The main advantages to this approach:
     
     Your Linux system probably has a much higher stability and capacity
     than NT on comparable hardware. So your high volume mail users
     won't be bringing down the system for everyone else. (It's very
     hard to flood a modern Linux system with just e-mail).
     
     You have simple remote configuration and management of your mail
     routing (telnet in and edit your /etc/aliases file, then run
     'newaliases').
     
     You can easily create "magic accounts" like "info@downunder.nz"
     which feed into autoresponder scripts (presumably in the simple
     procmail scripting language).
     
     You have no licensing constraints, costs or restrictions. If you
     want to add a hundred new e-mail users, or a thousand --- you just
     create the accounts on penguin and have your account holders point
     their favorite mail readers (Netscape Communicator, Pegasus,
     Eudora, even MS Outlook) at it.
     
     You have relatively easy and free access to a number of evolving
     anti-spam systems (such as the RBL (real-time blackhole list). I
     haven't heard of any patches or modules for MS Exchange to enable
     RBL support --- and I suspect that MS would only provide such
     services on a fee-driven subscription basis (rather than as a
     community service, like Paul Vixie is doing with the RBL).
     
     The difference between these two approaches:
     
     In the first case we set up a different MX record for penguin.
     Anyone who needed to send mail to an account on that system needed
     to use the full name: foo@penguin.downunder.nz. Mail to
     foo@downunder.nz would go to the msnail host. You might have some
     options for autoforwarding from the MS box --- but you'd have to
     talk to your MS wizards on how to do it. It probably involves
     filling in some GUI dialog somewhere (requiring you to work at its
     console) and its probably subject to MS pricing and licensing ---
     i.e. you're paying extra for each account.
     
     In the second case we reverse that: Mail defaults to landing on
     penguin. The further routing from there is trivial (since sendmail,
     aliases and .forward files have been used by the majority of the
     Internet for over 20 years).
     
     In summary: MS Exchange can recieve SMTP (Internet mail) so there
     is no trick to "integrating" them with 'sendmail' 'qmail' or other
     Internet MTAs (mail transport agents). I've heard some people
     complain about MS Exchange's behavior (generating mail with "ugly"
     WINMAIL.DAT attachments that the rest of the net doesn't care for),
     compliance (subtle ways that it doesn't conform to the RFCs and
     implementation conventions of other systems --- but these might be
     argued as a "failure to be bug compatible" --- so those are moot),
     performance (more than 100 "normal" e-mail accounts, or 50 "heavy
     users" will probably require considerable hardware under NT ---
     while an old 386 or 486 can handle those loads under Linux), and
     robustness (my household POP server has been up for over a 125
     days; I have no idea why I rebooted it 4 months ago but I know it
     wasn't for any real problem --- maybe it was when I was rewiring
     and cleaning out the server closet).
     
     So, what have you tried so far? What sorts of problems are you
     encountering?
            ____________________________________________________
   
(?) Shell Scripting: Getting Host and User Names

   From Darby Gilbert on Sat, 06 Feb 1999 
   
   (?) I am trying to write a batch file that will pick up the computer
   name for the naming convention. On NT 4.0 computers, it is no problem.
   Is there a way to write a batch file that will pick up the computer
   name and/or user name from the computer so that it will use it to name
   a file that is produced from the batch file? I have been trying all
   sorts of different things and also searching the web trying to find
   answers when I came accross your page. Any help would be greatly
   appreciated. Thank you. 
   
   Darby Gilbert 
   
     (!) Under Linux these (simple interpreted text programs) are called
     shell scripts (they are technically not "batch files" though the
     concept is the same).
     
     To get the current "computer name" use the 'hostname' command. To
     assign that to a shell or environment variable use a command like:
     
     THISHOST=$(hostname)
     
     ... for the short version (in foo.example.org this command returns
     just "foo"). You can use:
     
     THISHOST=$(hostname -f)
     
     or:
     
     THISHOST=$(hostname --long)
     
     ... to get the "full" or "long" name (the host.domain string).
     
     To get information about the current user (the one running the
     script) we use the 'id' command. Now, if we just use the command
     with no options it gives us output like:
     
        uid=500(jimd) gid=100(users)
        groups=100(users),10(wheel),11(test),17(staff),
        60(web),40(game)

     (except that it's all on one line). This is informative for
     interactive use --- but far too ugly for elegant script parsing. So
     we use options to get just what we want:
     
     USERNAME=$(id -un) UID=$(id -u) PRIMARYGROUP=$(id -gn)
     PRIMARYGID=$(id -g) GROUPLIST=$(id -Gn) GIDLIST=$(id -G)
     
     In other words '/usr/bin/id' takes options -u (user) -g (primary
     group), -G (list of groups) and -n (names, not numeric IDs).
     
     So you could construct a crude e-mail address for your user by
     using:
     
     MYEMAIL="`id -un`@`hostname -f`"
     
     ... here I've used "backticks" (accent characters) which are the
     more common form of the "command substitution operator." Normally I
     use the $() form which is easier to read and nestable. I use it
     here only to demonstrate that they are the same (under bash and
     recent Korn shells at any rate).
     
     Here's a simple shell script that takes your list of groups and
     walks through them one at a time:
     
     #!/bin/bash
     GLIST=$(/usr/bin/id -Gn)
     set -- $GLIST
     while [ "$1" ]; do
     echo $1
     shift
     done
     
     In this case I use a special form of the 'set' built-in command:
     which resets my list of command line arguments to the value
     specified. I could do that with just:
     
     set $GLIST
     
     ... which sets $1 to the first string in $GLIST and $2 to the next
     one, etc. That would be pretty safe in this case (since I've never
     seen anyone create a group name starting with a dash). However it
     is better shell scripting practice to use the set's -- ("dash,
     dash") option which signifies the end of all options to the 'set'
     command forcing it to consider the rest of the command line items
     to be "arguments" (rather than options).
     
     This is probably a bit confusing if you don't know about the 'set'
     command. Under bash and Korn shell (at least) you can use command
     like set -o noclobber (or set -C) to prevent the overwriting of
     existing files with shell redirection operators and set -o noglob
     (set -f) to disable filename expansion (the conversion by the shell
     of *.txt into a list of files that match that pattern). There are
     many other features supported by the typical Unix shell (Bourne
     family).
     
     This discussion has focused entirely on Bourne shells. I don't use
     csh/tcsh much and don't recommend it for scripting (in which I'm in
     good company; see:
     
   Csh Programming Considered Harmful
          http://www.faqs.org/faqs/unix-faq/shell/csh-whynot/index.html
            ____________________________________________________
   
(?) More on: Bad Sectors

   From Fadel on Sat, 06 Feb 1999 
   
   (?) Dear sir, 
   
   I have bad sectors in my HDD about 35 sectors, so I can't use it, how
   can I use it agine? Note: My HDD is 3.2 GB and I use windows 98 
   
   yours,
   Fadel 
   
     (!) Too Bad. If Windows '98 can't work around the bad sectors
     you'll just after to repace the drive or replace your OS. If the
     first sector on your track zero is one of the bad ones then the
     drive is useless.
     
     Why are you sending this to me, anyway. Call your drive's
     manufacturer or your retailer!
            ____________________________________________________
   
(?) The Presumption!

   (Claiming to be) From Microsoft Internet Explorer Support on Sat, 06
   Feb 1999 
   
   (?) Microsoft Corporation 1 Microsoft Way Redmond, WA 98052 USA 
   
   Dear Sir/Madam 
   
   As an user of the Microsoft Internet 
   
     (!) ^^^^
     
     --- some MS Word spell-checker or "Wizard"
     
     suggested this? In the literate world we use "a user --- since the
     term "user" is pronounced with a leading consonant sound "y" as in
     "yoozer"
     
     I'm not a "yoozer" of Microsoft Internet Explorer or any other MS
     product.
     
   (?) Explorer, Microsoft Corporation provides you with this upgrade for
   your web browser. 
   
     (!) You're providing me with SPAM. My web browsers are Lynx and
     Netscape Navigator (for Linux).
     
   (?) It will fix some bugs found in your Internet Explorer. To install
   the upgrade, please save the attached file (ie0199.exe) in some folder
   and run it. 
   
     (!) It might fix some bugs in YOUR Internet Explorer. My methods of
     exploring the Internet go way beyond web browsing and use a variety
     of tools and protcols. The Web is not the Internet and MS Internet
     Explorer isn't even a blip on my radar.
     
   (?) For more information, please visit our web site at
   www.microsoft.com/ie/ 
   
     (!) To comply with California State Law please don't send any more
     unsolicited e-mail to this address.
     
     (There was a law recently enacted in my state of residence which
     requires advertising to display the "ADV:" tag on the subject line.
     I'm collecting violations of this law to forward to my state
     attorney general's office. I don't consider it to be an effective
     deterrent to SPAM --- but they should enforce it if they're going
     to pass it).
                        ____________________________
   
   Interestingly enough, this message (and another reply to it from our
   site) bounced. It can be reasonably suspected that the true originator
   of the message was not Microsoft, but someone trying to convince users
   of their products, to "upgrade" to an infected or malicious copy. 
   
   As such, it's really much worse than "SPAM" although it ia similar, in
   that it preys on people who know less about their internet
   environment, and are willing to take unwise risks with their assets.
   These folks are also least likely to be able to take effective action
   to correct the problems that result. 
   
   Don't get snookered -- nobody should be mailing you a binary without
   some sort of authentication so you can determine where it came from,
   and hat it has survived its ride through the mail. FTP is really
   better for anything of reasonable size anyway.
            ____________________________________________________
   
(?) Mysterious Message: Subject: Linux

   From THerbic on Sat, 06 Feb 1999 
   
   (?) integrated e-mail, messaging, voice mail, faxing capabilities 
   
     (!) Yep. Linux has integrated mail, messaging, voice mail and
     faxing capabilities. They all work and you integrate them with
     shell, Perl, TCL/Tk and/or CGI scripts.
            ____________________________________________________
   
(?) Reader Comments: Diamond WinModems:

   From Joseph on Sat, 06 Feb 1999 
   
   (?) Greetings, O Guy of Many Answers! 
   
   After buying a modem and not having any luck with it under Linux 
   
   (a dual-boot Win98 and Debian 2.0 system), I checked around on the
   Diamond Multimedia Website. After searching for "linux," I was
   eventually referred to a nice FAQ on Traditional, Controllerless
   (WinModem), and Software Modems by Diamond. 
   
   This brought to my attention that I had bought a WinModem by mistake.
   I was able to push my now-useless modem off on relatives who were
   buying a computer, and I instead followed the guide and bought a
   Diamond SupraExpress ISA (non-voice) modem. I set it up manually with
   the jumpers on the card as com3 and put it in. Windows kind of gawked
   at it at first, but using the CD to install it instead of Windows
   default drivers (as I can recall; this was a while ago), it was OK in
   Windows. 
   
   I installed the new modem just before leaving the country (and my
   computer) behind for a semester, so I can't say exactly how well it
   worked, as I was unable to try it out. However, upon booting into
   Linux, I was greeted with a new detection: ttySx (where x is some
   number I've now long forgotten). By this, I believe that it is
   functioning and happy, however, as I said, I was unable to test it
   before leaving. 
   
   As I have been scanning around, I have found people with problems with
   Diamond modems who were wondering if they are WinModems. As I found
   the Diamond guide rather helpful, I thought I'd pass it along to you,
   for review and further distribution. 
   
     (!) For the curious, that's
     http://www.diamondmm.com/products/white-papers/communications/c-les
     s_paper.html
     
   (?) You can alternately find it under the "Support"->"FAQ" selection
   at the top of the main page. A word of warning, however. After reading
   the last issue of Linux Gazette, I have found that the PCI version of
   the Diamond SupraExpress modem does not work with Linux. I cannot
   verify this, but the quote was quoting Red Hat. (2-Cent Tips) Hope
   this clearifies things somewhat. 
   
   -Joseph 
   
     (!) I still say: GET EXTERNAL MODEMS!
     
     (That was always safe until recently since nobody and really messed
     up RS232C so bad that you couldn't get your modem to work with
     Linux. With the recent advent of USB and the impending release of
     USB modems this will not be true for much longer. However, Linux
     may support USB before there are any significant number of USB
     modems on the market --- so we might squeak in).
     
     Other than that, thanks for the pointer. I hope some of our readers
     find it and learn from it.
     
     WinModems: "JUST SAY NO!" (or "RMA" --- return merchandise
     authorization)
            ____________________________________________________
   
(?) OPL-3 Sound Drivers

   From Jeferson Oliveira Andeluz on Sat, 06 Feb 1999 
   
   (?) My name is Jeferson, I live in Sao Paulo, the biggest city of
   Brazil... 
   
   I seek for all web sites for this driver and I can't find one to make
   a download for this driver... 
   
   Please, if you know how can I give this driver, tell me, because my pc
   doesn't have any sound and it's very boring.... 
   
     (!) Some OPL-3 sound drivers are included in the mainstream Linux
     kernel sources. You just select them at compile time (cd
     /usr/src/linux; make menuconfig)
     
     You can test your sound drives by finding a .wav, .mod, .au or
     other sound files and issuing the 'play' command on them. (The
     'play' command is part of the 'sox' (sound exchange) package). This
     ships with most general distributions --- though you might not have
     installed it.
     
     Here's a command to find all of these sound files on a typical
     Linux system:
     
     locate / | egrep "\.(au|mod|wav)$"
     
     ... you can do a sanity check on those with a similar command:
     
     locate / | egrep "\.(au|mod|wav)$" | xargs file
     
     ... the 'file' command will identify them as some form of audio
     file if there contents match their filename extensions.
     
     Here's a sneaky little script I call 'ftype' that filters a list of
     filenames based on the type reported by the 'file' command:
     
#!/bin/sh
## This uses the 'file' command to filter out filenames whose
## contents don't match our spec
##
while read i ; do
    file "$i" | grep -q "$*" && echo "$i"
done

     You'd call this with a command like:
     
     locate / | egrep "\.(au|mod|wav)$" | ftype audio
     
     ... so you could play every sound on your system with a command
     like:
     
     locate / | egrep "\.(au|mod|wav)$" | ftype audio | xargs -l play
     
     (scary!)
     
     I've talked about sound card support before:
     
   The Answer Guy 34: Finding Soundcard Support
          http://www.ssc.com/lg/issue34/tag/sound.html
          
     So, check those links and see if that helps.
     
   (?) Thanks for your hear me... 
   
   I'll wait for your reply.... Jeferson 
            ____________________________________________________
   
(?) Question from an old friend.

   From Gregg Q Reynante on Fri, 05 Feb 1999 
   
   Hi Jim, 
   
   It's me, Regina's husband. Haven't had the opportunity to write 'til
   now. Here's my question? 
   
   I'm trying to install RH 5.2 on a Pentium 133. Here's the catch. I
   have a WD SCSI 2.1 Gig HD using an Adaptec 1542CF (ISA) card. Because
   of the other hardware and/or motherboard of the system, I need to set
   the SCSI card to non-default settings. During the Linux install, it's
   fine until it asks for SCSI devices. When I send it to autoprobe the
   1542, it tells me it's not there. In the past I've used the SCSI card
   & drive in default mode and successfully installed RH 5.1 This is an
   upgrade from my 486 machine, so I don't want to go back. 
   
   Any suggestions? 
   
     (!) First disable any BIOS/Setup "PnP" (plug and pray) features
     that your system is trying to foist on you.
     
     If autoprobing doesn't work try passing the kernel a hint. In the
     bootparam(7) man pages you'll find details on many supported
     parameters. Look for something like:
     
     aha1542=iobase[,buson,busoff[,dmaspeed]]
     
     and fill in the parameters. I might use:
     
     aha1542=0x320
     
     ... for example.
     
     You might have to start your Red Hat installation in "expert" mode
     so that it will prompt you for these parameters.
     
     Another possibility is that you have to cut a custom kernel and put
     that on your RH installation/boot floppy. This isn't too tough and
     it is documented in their manual. The boot floppies used by Red Hat
     are just MS-DOS formatted floppies with an MS-DOS filesystem and a
     copy of the SYSLINUX boot loader. There is a SYSLINUX.CFG file
     which is a bit like a lilo.conf file on an installed system. You
     should have to touch that (if you just replace the VMLINUZ file
     with one of the same name).
     
     A Red Hat boot.img file that I have here as 24K available on it.
     That's not much room --- but it might be enough for a kernel with
     an extra SCSI driver built straight into it.
     
   (?) And yes, I've lowered the transfer rate to 5.0, enabled sync &
   parity checking on the card. I've even installed DOS, so I know it
   works (or at least runs). I'm ready to turn it into an MS machine if I
   can't get this up & running soon. 
   
   TIA, Gregg 
   
     (!) My first guess would be that there is some PCI/PnP sort of
     thing that's inteferring with your auto-detection. So we bypass
     that with "expert" mode and tell it precisely where our card is. We
     also disable PnP since that often doesn't play well with ISA cards
     (like the 1542CF).
            ____________________________________________________
   
(?) [Q]: Winmodem under Linux

   From urryk on Sun, 07 Feb 1999 
   
   Hi, James! 
   
   Whether there is any possibility to use the US Robotics Winmodem in
   Linux? 
   
   I know that this incompatible device, but it is possible to somebody
   it was possible it to win. Thank you for advice. 
   
   Yury with best wishes. 
   
     (!) You know that this device in incompatible with Linux but you're
     asking me if there is any possibility of using it with Linux.
     
     Yes, it is currently incompatible. This is largely because the
     manufacturer (of the chipset used by this modem) will not release
     the programming specifications to the public.
     
     So, yes there is a possibility of getting use out of it under
     Linux. First, convince Rockwell Peripherals International (or
     whatever their real corporate name is) to release the specs. Then
     find someone who is willing to write a driver to those specs. (You
     might even convince Rockwell of the value in writing their own
     Linux driver and releasing the sources to that).
     
     I'll admit that this is only a slim possibility. I'm sure that
     other Linux enthusiasts (and Mac users, and others) have requested
     similar support for other non-MS-Windows systems. My advice is
     threefold:
     
     DON'T BUY WINMODEMS, WINPRINTERS OR ANY OTHER OS-Specific Devices!
     (I wouldn't buy a piece of hardware that was supported exclusively
     under Linux either).
     
     DON'T BUY INTERNAL MODEMS!
     
     Get rid of the piece of junk you've already got. Get an RMA. Get on
     a phone and scorch the ears of everyone in the organizations that
     sold, manufactured and distributed this defective useless slag to
     you. Make it so expensive to deal with your complaints that they'll
     clearly understand the false economy in selling these things. (And
     be polite through the whole process).
            ____________________________________________________
   
(?) More Bad Clusters

   From Rik on Fri, 05 Feb 1999 
   
   (?) Hi, 
   
   Do you know how to fix a bad cluster on my hard disk cause I have one
   and now I can't convert it to FAT32. I've got a Fujitsu U-DMA 1,7 GB
   HD I hope you can help me. 
   
   Thanks in advance Greetingz 
   
     (!) Is this some kind of joke? I keep getting questions about
     fixing bad clusters, marking them as bad, unmarking them from being
     bad and the like. Worse, these questions seem to come from MS
     Windows users who seem to have no interest in LINUX whatsoever.
     
     No! I don't know how to force your machine to let you install a
     FAT32 filesystem on it. I don't care how that's done --- I use ext2
     filesystems and they can tolerate and manage bad sectors (or ignore
     them at your peril) with no problem (just remember to use the -c
     parameters to mke2fs and e2fsck).
     
     Please, go find a Windows Answer Guy. If you just sent me blind
     e-mail and don't understand why I'm babbling about this non-MS
     stuff go read some back issues of the Linux Gazette:
     http://www.linuxgazette.com
     
     (as you should see in my .sig)
                        ____________________________
   
(?) how to fix a bad cluster on hd

   From Rik on Sun, 07 Feb 1999 
   
   Hi, 
   
   I'm sorry but I looked at altavista for bad clusters on how to fix
   them and there was this message board with your e-mail adress. so
   that's why I sended my message to you. sorry it would not happen
   again. 
   
   Greetingz 
   
     (!) I don't object to getting question (on the topics that are
     relevant to Linux Gazette). However, it is irritating when those
     people who find my messages in Alta Vista don't read what I said.
     
     I've never said that I could "fix bad clusters" --- so anything you
     read that was by me didn't say that. Indeed it almost certainly
     said almost exactly the same thing I told you.
     
     Noting that this Alta Vista record made reference to
     linuxgazette.com you have to follow up and look at the "Linux
     Gazette's" web pages (where you'll find it's own search feature ---
     which should should have made it obvious who I am and what I do).
     
     I use Yahoo! and Alta Vista (and Deja News and Google and others)
     extensively. I occasionally even send messages to people who I find
     therein. However, I do that as a last resort.
     
     Also when contacting someone for the first time, courtesy demands
     that you introduce yourself. Nothing elaborate but something like:
     
     Answer Guy,
     
     I was searching Alta Vista looking for ways to solve the problems
     I'm having with bad blocks and Windows '98 on my new/old/whatever
     hard drive.
     
     I found the following message from you:
     
     ...[SHORT quote/excerpt]...
     
     ... and then you can go on to ask your question.
     
     That's only common courtesy --- which is unfortunately all too
     uncommon these days.
     
     So, if you ever have questions about Linux --- including questions
     about how to make it work with NT, '9x, MacOS, or other systems,
     feel free to send them to me. Please search through the appropriate
     newsgroups, mailing lists HOWTOs, FAQs, and try the search feature
     on http://www.linuxgazette.com to see if I've answered this
     question before (or especially if any of our other contributors
     have written feature articles or 2-cent tips or other material on
     the subject).
     
     For problems with a piece of equipment --- talk to your retailer or
     its manufacturer first. For problems which don't relate to Linux
     --- look for forums that focus on the one at hand. When dealing
     with Microsoft products remember the level of support you've been
     getting before purchasing any more of them.
            ____________________________________________________
   
(?) Proxying over PPP

   From prashant on Thu, 11 Feb 1999 
   
   (?) Hi Answerguy, 
   
   I am using Red Hat Linux.And I want to install a proxy server. I have
   a modem can configure ppp over that. 
   
   But i want that proxy to do the following functions: 
   
    1. It should optimize my ppp connection. (webproxy-1.3 does provides
       this)
    2. As this webproxy doesn't handle cache.A cache manager 'Squid' must
       be installed.
    3. Also it doesn't supports many protocols. So I want a router linked
       it
       
   I dont know how i am going to do this please help me. 
   
   yours
   Prashant Deshpande. 
   
     (!) Your list mixes needs with conclusions. I don't recommend that
     when doing "requirements analysis" as you'll probably end up with
     some inappropriate constraints.
     
     If I understand it correctly you want to "optimize" your PPP
     connection in the sense that you want to minimize the traffic
     flowing over it, and the latency between requests and responses.
     
     I'm not familiar with a package named "webproxy-1.3" --- but any
     caching/proxy will tend to lessen the traffic depending on your
     usage patterns and the co-operation of the sites that you access
     over these protocols. Squid is probably the most advanced caching
     proxying available --- and it's designed to peer with other ICP
     (Internet Caching Protocol) servers, (potentially minimizing
     traffic over other links, further out on the Internet, beyond your
     PPP link while also minimizing latency).
     
     I don't understand item three at all. What doesn't support many
     protcocols? Squid supports a number of protocols (all those that
     are amenable to caching, that I can think of). Also the conclusion:
     "So I want a router linked it" is completely bogus. A router does
     routing, a proxy does proxying and caching. These functions operate
     at different (though sometimes blurred) levels in the OSI reference
     model.
     
     If you use your Linux system as a "gateway" to the Internet for any
     systems other than itself (if it has an ethernet and a PPP link or
     any other combination of two or more non-loopback interfaces) than
     it probably is acting as a router.
     
     So, let's step back from the constraints implied by these
     extraneous comments and focus on what you want.
     
     You could do some protocol analysis on your PPP link to determine
     what protocols are consuming which percentages of the bandwidth;
     and to determine the average latency among various protocols. This
     would help you focus on which protocols are likely to benefit the
     most from caching. It's also possible you might find other ways to
     help improve your utilization.
     
     Without going into gory details of using 'tcpdump' and performing
     data analysis on that we can suggest that you start with the
     basics.
     
     Run a caching nameserver on your PPP/router. This should
     immediately improve response time and reduce bandwidth utilization
     by obviating the need to forward/route DNS queries across the link.
     Make sure to configure the /etc/resolv.conf (or its equivalent on
     your non-Unix systems) to actually use your caching nameserver.
     That includes the resolv.conf on the router/gateway itself!
     
     Install Squid and configure your web browsers and any gopher, WAIS,
     or other supported clients to use it. That should help with those
     web sites that don't egregiously prevent caching. Note that some
     sites use HTTP headers (Pragmas) to eliminate or minimize caching
     of their pages. This is often done by "advertising" supported sites
     as part of their "imprint" accounting and to support their high
     traffic claims (to their customers). That is BAD for the Internet
     as a whole (since it forces every link between those sites and all
     of their clients to carry redundant traffic). Oh well! There goes
     the neighborhood!
     
     After you've taken these two steps (and provided your caching
     proxy/router with LOTS of disk space and memory) you should monitor
     the line performance (informally) to see if that meets your needs.
     You've probably gained 80-90% of the potential efficiency gains
     already --- so additional work will have diminishing returns.
     
     You can install DeleGate for FTP proxying (I don't know how to make
     "normal" FTP clients talk to Squid's FTP proxying --- but they can
     be configured to use DeleGate as you'd use any SOCKS proxy, and you
     can "manually" traverse a DeleGate FTP or telnet proxy in a way
     that's conceptually similar to the old TIS FWTK (though completely
     different, and much cleaner, in syntax).
     
     That's probably about as far as you can go with simple proxying.
     From there you'll have to change the mixture of protocols you run,
     and/or optimize the way you work. For example if you have e-mail
     flowing over that PPP link you might reconfigure that to "Hold" (as
     "expensive") and queue it for delivery during off peak hours.
     
     You might even reconfigure your e-mail and any netnews traffic
     (both outgoing and incoming) to go through UUCP. UUCP allows you to
     "grade" your traffic, and to schedule the delivery and receipt.
     This can include file transfers as well as mail and news. Naturally
     you'd have to arrange for some ISP to provide your UUCP batching
     for you. There are still some ISPs that specialize in this, and
     there are still some co-operative arrangements available in some
     localities.
     
     These techniques have a very steep learning curve. No one has been
     providing WYSI new front ends to make the configuration of UUCP
     links as easy as common PPP scenarios are today. Also there are
     very few ISPs with the expertise and interest to provide these
     services. In addition the entire discussion is moot if you aren't
     carrying netnews, email, or file-transfer traffic over your link
     (if you don't read netnews, you've arranged ISP POP accounts on the
     other side of your link and your file transfers can't be scheduled
     and automated with UUCP).
     
     Another option is to look at your work and access patterns. If you
     know that you're going to want to read "Linux Weekly News" every
     Thursday morning when you come in, create a cron job to 'wget' or
     do a 'lynx -traversal' of http://www.lwn.net every Thursday morning
     at 3:00am (before you come in, but still in the "dead of the
     night). The LWN crew seems to consistently have that up by about
     midnight (U.S. Mountain time). You could have similar daily jobs
     for your "Dilbert" fix (http://www.unitedmedia.com/dilbert) etc.
     
     There are some tricks you can do to minimize the amount of your
     bandwidth you devote to downloading advertising and graphics. One
     method is to use Lynx (which doesn't download any graphics by
     default, and therefore filters out most banner ads). Another is to
     create your own "localhost" aliases for some sites like "click.net"
     --- sites which are used exclusively to serve banner ads that are
     embedded in the HTML of the sites you visit. Of course, the
     advertisers, web site maintainers (like Yahoo!) and click.net
     itself might complain that you are "depriving" them of revenue by
     viewing these advertiser supported pages while filtering out the
     advertsing.
     
     If a statistically significant number of users employ these
     strategies then we'll see a resulting "arms race" to force the
     advertisments down your throat. They'll increasingly "mix" the
     advertising and content as inextricably as possible --- meaning
     that text browsers and search engines will become useless.
     
     It's a pity that more of us don't consider the implications of
     advertiser supported media on our lives. Your broadcast news, TV,
     radio, newspapers and other periodical publications are all
     completely funded by advertising and therefore fundamentally
     suspect in regards to content and focus. Its not a "conspiracy"
     theory --- merely and economic fact. You get what was paid for.
     Since you didn't "pay for" the content that you're receiving
     through traditional media (and increasingly for Internet "content")
     --- you have little or no say in what's provided over them.
     
     You have obscure indirect effects by your selection of products and
     services and somewhat more by complaint (to government and
     regulatory bodies and to sponsors). It's all very "negative" (in a
     philosophical sense). It's a pity we haven't come up with a better
     way to do things --- though the Internet's netnews, mailing lists,
     and the personally and "activist" run and maintained web sites
     continue to be a "ray of hope."
     
     In any event: That's about all there is to caching and proxying for
     small sites over PPP and other low-bandwidth links. Larger
     internetwork sites might benefit from more elaborate ICP
     arrangments (peering among departmental Squid servers and creating
     a whole caching hierarchy).
     
     Remember that this is not a magic bullet.
     
     It's possible that your usage patterns actually won't benefit from
     caching or proxying. If everyone on your network is always visiting
     different sites, and they only visit sites that change frequently
     --- then the cache will be a waste of your systems memory and disk
     space.
     
     Best of luck!
            ____________________________________________________
   
(?) Installing on a Big Drive: More on the 1023 Cylinder Limit

   From ariel lh on Fri, 12 Feb 1999 
   
   (?) Hi!, i have a 6.4Gb Western Digital HDD partitioned with EZ-Drive
   (version 9.03w) into 4 partitions (3 of 1.95Gb and one 117Mb). The
   first one has MS-Windows and the other 3 partitions are empty. I've
   read lots of info about installing linux on large HDD, because it has
   to be installed below the 1024 cylinders.... i must tell you that i
   don't understand anything about this nor partitions. How would i know
   is i can install linux in any of the other partitions? 
   
   Thanks 
   
     (!) Linux doesn't have to be installed below the 1023 cylinder
     boundary. It doesn't have to be installed on the first or second
     hard drive. Linux can be installed in many different ways across
     all sorts of devices. (Indeed its possible to install Linux on a
     remote hard drive and to a boot over the network mounting the root
     filesystem via NFS).
     
     There are two rules regarding a Linux installation:
     
    1. The kernel must get loaded (by a supported system into a
       sufficient block of memory)
    2. The kernel must be able to access a root filesystem somewhere.
       
     The first requirement is generally thought to mean that you must
     install Linux where a typical PC BIOS can "find" it. Thus the
     commonly repeated "1024 cylinder" problem. Old BIOS' couldn't
     access beyond the 1024th cylinder (numbered 0 through 1023,
     naturally). This was a BIOS limitation and it applies to all
     operating systems. However, some of them (like NT and OS/2) get
     around that by using a "protected mode" (32-bit) boot loader. This
     generally requires that these systems create a small 1 or two Mb
     mini-partition. Linux doesn't require this.
     
     The most commonly used boot loader for Linux (LILO) is a small real
     mode program. It therefore must work with the BIOS to load a Linux
     kernel. Another common loader is Syslinux. This installs a suitable
     boot loader into an MS-DOS (FAT) formatted floppy. Yet another
     option is LOADLIN.EXE, a DOS program for loading Linux (from a
     common DOS batch file, or from the DOS CONFIG.SYS --- via a SHELL=
     or INSTALL= directive). LOADLIN.EXE is currently included with a
     newer package called Linux_Load95 --- which is a Win '9x loader.
     
     The easiest way to address the situation you've described is to use
     LOADLIN.EXE --- let it load your kernel.
     
     You can do your initial installation by booting off of a CD
     (assuming you get one of the distributions that's shipped on a
     bootable CD --- which would be approximately all of them within the
     last couple of years). After the installation is complete (most
     distributions don't offer direct LOADLIN.EXE support) --- you'd
     copy your Linux kernel to some directory under one of your
     DOS/Windows filesystems. Then you boot into MS-DOS (Win '9x "Safe
     Mode") and install LOADLIN.
     
     Please search back issues of Linux Gazette for more details on
     that.
            ____________________________________________________
   
(?) Finding LOADLIN.EXE ... and Linux Loader for Win '9x

   From Mstrmasn34 on Fri, 12 Feb 1999 
   
   (?) Hey Answer Guy! , alternatively, Dear Mr. Answer Guy: 
   
   I have recently installed RedHat Linux 5.2. I boot Win 98, to which I
   am new. I am not comfortable with relying on a Linux boot disk to get
   to Linux. I intend to emphase Linux in my computer experience.
   Currently I rely on DOS/WIN for familiarity. Loadlin.exe did not come
   with the McMillan version of 5.2 I purchased. 
   
   Where can I reliably download the latest version of Loadlin.exe (and
   related necessaries? Also, do I need LILO if I use Loadlin? 
   
     (!) The package should be on those CDs somewhere. However, you
     should also be able to find it in the the Linux Loader for Win '95:
     
   Linux_Load95
          http://metalab.unc.edu/pub/Linux/utils/dos/linux_load95.lsm
          
     ... The LSM (Linux software map) file for this package claims that
     it includes LOADLIN.EXE (version 1.6).
     
     That should work just fine.
            ____________________________________________________
   
(?) Partitioning Mini-HOWTO

   From ariel lh on Fri, 12 Feb 1999 
   
   (?) Sorry for bothering you again but it seems that the "boot failed"
   message was just a bad diskette. I accesed the setup main menu and it
   asked me to configure the keyboard and i did, then i goes to:
   "partition your HD", when i go to the partitioning menu i detects my
   HDD when i press enter i get the message: "fatal error: bad logical
   partition". What should i do?, in the installation howto it says the
   partitioning option is for when my disk is not partitioned and it also
   says that if i already created a linux native and one linux swap disk
   partition i can skip the partitioning process. 
   
   In case i don't have to run the partitioning menu, how do i configure
   my existing partitions into linux native an linux swap partitions? 
   
     (!) So, you're trying to install some distribution of Linux. You
     don't mention which distribution so I'll guess it might be Red Hat.
     You don't mention what source you're trying to install from so I'd
     guess CD-ROM. You don't specify which platform so I'll guess it's
     some sort of PC.
     
     Note: there are many distributions of Linux and many of them can be
     installed from any of many sources (from CD, floppy, MS-DOS hard
     drive partition, over FTP, NFS, or SMB/Samba -- from a copy stored
     on some Windows, OS/2 or other type of server). When posting
     questions to mailing lists and newsgroups you'll want to include a
     bit more detail. Remember that your readers don't know anything
     about your situation.
     
     Now, to your problem. The setup/installation program you're using
     is offering to launch a program to partition one of your hard
     drives --- to reserve one or more regions of the disk space for use
     by Linux and mark them as such.
     
     The exact dialogs and menus offered by this installation program
     depend completely on which distribution you're using.
     
     Normally they will launch a program called 'fdisk'. There are many
     programs called 'fdisk' --- including the FDISK.COM (or FDISK.EXE)
     from MS-DOS, and those from OS/2, NT, other versions of Unix, and
     just about any other operating system available for the platform).
     Under Linux there are several versions of 'fdisk' to choose from.
     Most distributions include the old "shell mode" 'fdisk' and some
     also give you options to run a "friendlier" full-screen (curses
     based) program called 'cfdisk'.
     
     Recent versions of Red Hat will offer to make many of the
     partitioning decisions for you --- using a program they call "Disk
     Druid." You supply it with the sizes and types of filesystems and
     swap spaces you want and it makes a corresponding set of
     partitions. It's a nice idea --- but I never use it personally
     (I've been working with micro-computers of one sort or another for
     almost 20 years).
     
     Given that I don't know anything about your system I really don't
     know what is giving this error message. I presume that there is
     some gibberish in your partition table (specifically it sounds like
     some bogus enty in one of the extents --- the "logical" partitions
     inside of one of the extended partition tables.
     
     Let's give a tiny bit of background here:
     
     The first first addressable sector on a PC hard drive is called the
     MBR. This is 512 bytes long and consists of two parts --- a boot
     loader (a small program) and the primary partition table.
     
     The primary partition table is 66 bytes long. This provides room
     for four partition table entries of 16 bytes each, and a two byte
     "signature" (magic number) that indicates that this MBR/partition
     table has been initialized.
     
     When any version of 'fdisk' first reads the MBR for a given drive
     it is supposed to look for the "signature" (0xAA55 hex, or is it
     0x55AA, I never remember that). If the last couple of bytes in the
     MBR don't match the signature then fdisk is supposed to assume that
     the drive has completely unitialized --- so that it won't attempt
     to interpret whatever random noise it finds therein (left there by
     the manufacturer's testing and/or production processes) as any sort
     of existing partition table.
     
     Notice that there are only FOUR entries available on this table.
     So, if we are to have more than four filesystems/partitions on a
     drive we need some way to represent them. Thus there is a
     convention/standard that allows us to use ONE of those entries to
     point to an "extended" partition table. This essentially daisy
     chains from the boot sector to another sector. In the extended
     partition tables (there can be more than one --- since you can have
     about a dozen total) we have a whole sector, but only the last 66
     bytes are used (the rest is normally "zero'd" out).
     
     Getting back to your error message. If you don't have anything else
     installed on that hard drive you can ignore the error message and
     use fdisk to create your new partitions. If it won't "let you in"
     there could be other problems. I'd just boot on a rescue floppy
     (there should be one included on whatever CD you have, some where
     --- or you can get Tom's RTBT from http://www.toms.net/rb), and
     "zero out" the MBR with a command like:
     
     dd if=/dev/hda of=/dev/zero count=1 bs=512
     
     ... assuming that you're using your first IDE hard drive.
     
     Note: DON'T DO THIS IF YOU HAVE ANYTHING ELSE ON THIS DRIVE!
     
     (You'll render any MS-DOS, Windows or other data on the drive
     inaccessible!).
     
     If that still doesn't work, or if you have existing data on the
     drive that you want to keep --- then we'll have to work harder.
     
     First: if 'fdisk' won't let you access the drive, even after you've
     "zero'd out" the MBR then you probably have some sort of
     unsupported drive/controller. It may be that you have a very large
     HD and a version of the kernel and 'fdisk' that doesn't support the
     huge newer drives.
     
     There are some amazing convolutions that we've gone through in the
     design of PC peripherals over the years. These 10Gb hard disks that
     you can pick up for a couple hundred dollars are unimaginably
     expansive compared to the first 10Mb hard drive that I ever owned
     (about 12 years ago).
     
     In the early days MSDOS had a 32Mb limit on it's hard drive
     filesystems. The BIOS under which MSDOS ran had a rather odd set of
     limits relating to the largest hard drive that was possible --- it
     addressed drives in CHS (cylinder, head, sector) format. Early
     ST-506 (MFM and RLL) hard drives typically had 17 to 23 sectors per
     track, maybe 5 or so heads and a few hundred cylinders.
     
     The BIOS packed the cylinder/track and sector addresses into two
     bytes --- leaving 10 bits for the "cylinder" and only 6 bits for
     the sector. So you you could have up to 64 sectors (zero through
     63) and 1024 cylinders. They did provide a full byte for the head.
     (This seems silly since a hard drive with 256 heads --- 128
     platters would be about as tall as your desk, but I presume that it
     was "convenient" for the programmer due to how these parameters
     would be used with the controller.
     
     Back then the CPU was involved in relatively low level details of
     head positioning --- so we used to tune the "interleave" on hard
     drives based on the relative speed of our components, so that
     logically "adjacent" sectors were actually physically separated,
     allowing the processing of one sector to account for the constant
     rotation velocity of the disk platter under the head --- meaning
     that the "next" sector was usually under the head after the last
     one was processed.
     
     I'm going into these gory details for a point. Modern equipment is
     far more sophisticated. A modern hard drive has its own processor
     and cache. The micro controller processes going on in a typical
     cheap IDE or any SCSI drive that you'd use today take about the
     same computing power as the first PC that I ever used. They also
     typically have more memory than early PCs where capable of
     addressing.
     
     Despite all these differences the fundamental interfaces and BIOS
     code (particularly the limitation on CHS addressing) still apply
     today. To get around this we've going through IDE, EIDE, and the
     newer Ultra-DMA (or ATA, ATA-2, and ATA-3) interface
     specifications. At each stage these drives use "tricks" to allow us
     to access more data. Usually these "tricks" provide some level of
     "backward compatability" --- but they often require some software
     upgrades nonetheless.
     
     Instead of CHS addressing we now normally use LBA (linear block
     addressing). This basically takes the C, H, and S values, multiples
     them together and calculates a new disk block address based on the
     total. That's a "linear block address." However a bit of arithmetic
     should reveal that 256 (max. heads) * 64 (max sectors per track) *
     1024 (max cylinders) * 512 (bytes per track) and then devided by
     about a billion bytes per Gigabyte gives a limit of 8Gb. So we see
     that LBA doesn't get us past about 8.4Gb (you'll get inconsistent
     numbers based on whether a given manufacture counts megabytes as
     1000 kilobytes or 1024K, and whether they count a gigabyte as
     1000Mb or 1024Mb).
     
     The point is that older versions of Linux (and DOS, Windows, NT,
     and everything else) won't be able to access the full extent of
     some drives. It's also possible for your CMOS/BIOS settings to
     interfere with the proper detection of your drive's capacity. So,
     sometimes you have to use various sorts of "expert mode" or sfdisk
     options to bypass these sorts of problems. More likely you need to
     have a kernel which is updated for your situation.
     
     I must admit that I have yet to install any of these HUGE disk
     drives. I just picked up a 10.x Gb IDE drive for less than $200
     (US) and plan to install it in my wife's computer (freeing up a
     couple of 4Gb SCSI drives for my web server and mail hosts). I
     haven't had to do anything special on any of the other systems I've
     worked with --- so I don't know what sort of problem you're having.
     
     You can try 'cfdisk' or 'sfdisk' (prepare a rescue floppy and
     either copy one of these unto it or unto another diskette). If any
     of these work --- you can THEN bypass the portion of the
     setup/installation program where it asks is you have already
     partitioned your disk.
     
     Note that you must have at least one ext2 filesystem and one "swap"
     partition for Red Hat --- and most other Linux distributions. This
     is not a constraint of Linux --- it's possible to install Linux on
     MSDOS/FAT, minix, xiafs or other filesystems it you work at it. You
     can even install Linux to boot across a network. However, these are
     exotic options and most distributions don't have setup programs
     that can cope with them.
     
     Clearly you don't want to "fight" with your first installation by
     trying to be exotic.
     
   (?) Thanks again 
   
     (!) If none of this works then I suggest reading more of the FAQs,
     Mini-HOWTOs etc. Also you can look for a local users group and ask
     around.
     
     Some (like both the Silicon Valley LUG, and the Bay Area LUG (*)
     that I belong to) have regular "installfests" where you can bring
     your system into some cafeteria or auditorium and work with
     volunteers (like me) to get things installed and configured. There
     are "swap meets" (public vendor shows) which invite the CABAL
     (coalition of Bay Area Linux) user groups to set up tables and hang
     out. (Yes, we do this for free --- all we get is free admission to
     the show and the occasional free CDs, T-shirts or whatnot from some
     vendors).
     
   Silicon Valley Linux Users Group
          http://www.svlug.org
          
   Bay Area Linux Users Group
          http://www.balug.org
          
     The FreeBSD users also have these events (and join us at some of
     the "swap meets" --- though they call them "installoramas" or
     something like that).
     
     If you don't have any "installfests" or "installoramas" in your
     area, you might still find some LUG member or local Linux
     enthusiast to help. If all else fails you can hire a consultant to
     come in, help you install this and show you how things work.
     (That's the sort of consulting I specialize in --- one-on-one
     tutorial work; usually in person).
     
     It used to be possible to call a 900 number (run by Yggdrasil,
     makers of the first CD Linux distribution). You can look at
     http://www.yggdrasil.com for details. (Yggdrasil is the "tree of
     life" in Norse mythology. I have no idea how that relates to
     Finnish folklore or if it is intended as a reference to Linus'
     ethnic background at all. But it is a cool name --- particularly
     for fans fo the old Marvel superhero "Thor"). I don't know if Adam
     Richter, founder of Yggdrasil is still in the Linux superhero
     business --- but someone, somewhere will probably be providing "per
     incident" phone support eventually.
     
     (If I gathered a group of reliable and interested Linuxers I'd
     consider doing it myself. I don't because I'd hate to be "on call"
     all the time and I'd hate even more to have paying customers get a
     recording saying "Jim is off on a date with his wife, Heather ...
     call back later!").
                        ____________________________
   
   Funny he should mention this, since as of publication time he has just
   joined a new startup, LinuxCare, specializing in corporate support for
   Linux. More details about this new company can be found at their home
   page, http://www.linuxcare.com. 
            ____________________________________________________
   
(!) True modems

   From Mark F. Johnson on Fri, 15 Jan 1999 
   
     Quick note: Staples (a local office supply store) sells the Zoom
     56k external (without serial cable) for just under $90.
            ____________________________________________________
   
(?) Low Memory Installation

   From Martin Skjldebrand on Sun, 17 Jan 1999 
   
   HI again, 
   
   Many thanks for you fast reply. And apologies if you got two messages
   - I forgot to remove your e-mail adress in the second one. 
   
   Hi, 
   
   I'm trying to install Debian from floppies on my spare lap-top. 
   
   It's an old machine, an Compaq Contura 486/ 25 with 4 MB RAM and 80 MB
   HDD. 
   
   The installation goes well (mostly - it complains that the swap space
   cannot be initialized but it still is used, swapon during startup
   later on goes well). But after rebooting I get various memory errors. 
   
   The latest being 'bash fork: Cannot allocate memory' when trying to do
   anything on the machine. 
   
     (!) This sounds more like there is a disk error (bad block or some
     such) that's somewhere in the area where you're trying to create
     your swap partition. 
     
     That would explain both the initialization failure (which I presume
     is an error message from the installation script's 'mkswap'
     routine) and the bash errors. 
     
   (?) I've read and re-read the floppy install on low-memory systems.
   I've expanded the swap space to about 20 MB (should be enough) but it
   still complains about the memory problem. 
   
     (!) If the error is near the beginning of the swap file/partition
     --- then you'll keep getting it now matter how much disk space you
     add to the partition. 
     
   (?) Adding swap space sorted out a few error messages I got in the
   first attempts. But you suggestion solves the problem of it not going
   away. I partitioned the drive with the option of checking for bad
   blocks (I think I did this the last time. I've rerun the install one
   time too many. Is there a difference between this and mkswap -c?). 
   
     (!) Try invoking the mkswap command (which should be somewhere in
     your startup files) with the -c option (to check for bad blocks). 
     
   (?) I'll boot off of a start disk and run it as root, then. I suppose
   you meant that. (As I can't get in on the system to do anything
   meaningful at all as the only reaction I get is the error message). 
   
   Any ideas? Is it possible to run Debian on a 4 MB RAM machine? 
   
     (!) I don't know. That's cutting it pretty thin. I certainly
     wouldn't use 'bash' on a 4Mb system --- 'bash' is hardly a
     lightweight shell. Try 'ash' --- which is a simpler and smaller
     shell that's designed for use on rescue floppies, etc. 
     
     You'll certainly want to compile a custom trimmed kernel (on
     another system) for use in such a constrained setting. I wouldn't
     think that the Contura's were so old that you can't find additional
     memory for them. Bumping that up to 8 or 16 Mb will make a huge
     difference in what you can do with that laptop. 
     
   (?) Yeah, I've had the thought myself - but Compaq memory usually is
   extremely overpriced. Especially for older machines. At least IMHO. 
   
   Again, thanks for your suggestions and your fast reply. I'll look into
   it. 
   
   Cheers, 
   
   Martin Skjldebrand
   Sys admin, archaeologist, web designer 
            ____________________________________________________
   
(?) Drop-in Replacement for "WinGate"

   From Paul A Pick on Mon, 22 Feb 1999 
   
   (?) Hiya, 
   
   I have a win95/redhat5.2 dual boot system, which I use as a proxy
   server for one win95 client machine (as my system has the net
   connection). 
   
   Under win95, I use wingate for my proxy software... so my client's
   system is setup expecting things to be wingate-like on my system. The
   problem comes with the recent addition of redhat5.2. I want my linux
   box to be a transparent plug-in replacement for the win95/wingate
   config but I haven't really found the proxy software to do this. 
   
   So... my question is: are you aware of proxy software for linux which
   can behave like wingate? So far, I've seen squid (monstrous overkill)
   for ftp/http and then I have to add 'portfwd' (?) to map dns/pop and
   then there was another app for socks (req'd for telnet). All of this
   makes me want to run wingate via wine (which I will try soon,
   actually). [ Of course, I could just buy another system to do
   ipmasq/ipchains... :-) ] Anyway... have I missed an obvious solution?
   :-) Thanks, - Paul 
   
     (!) I don't know what sort of proxying WinGate does. So I can't
     address the issue of a transparent, drop-in replacement for it.
     
     Squid may be "monstrous overkill" for your situation. However, it
     will probably provide the key features you need and it doesn't take
     appreciably more memory, CPU, or (non-cache) disk space than any
     other proxying system. Apache can also be configured to act as a
     caching proxy web server.
     
     You could get the SOCKS RPMs from any Red Hat "contrib"
     site/mirror. WinGate probably implements the SOCKS protocols (which
     govern how client software traverses a proxy; how it relays it's
     service requests through the proxy). There are also a couple of
     other SOCKS compatible proxy server packages for Linux including
     DeleGate, and Dante (find them both on Freshmeat at
     http://www.freshmeat.net).
     
     You don't have to add ipportfw or autofw (or tcprelay or udprelay,
     or any of its cousins). These are all small utilities that can
     listen on a given TCP/UDP port and relay traffic to another system.
     They are more useful to virtual host servers on a private net.
     
     Consider the following scenario:
     
  /^^^^^^^^^^^\     ______
 |  Internet   | ---| fw |------   (Internet LAN)
  \___________/     ~~+~~~           192.168.1.*
                      |
                      +--- (servers)
                           192.168.2.*

     In this simple diagram we show a gateway/router/firewall (running
     Linux). It has three interfaces. One leads to the Internet. Let's
     think of that as ppp0 though it doesn't matter what sort of IP
     interface we use. Another leads to our internal LAN (let's call it
     eth0) and the other leads to a small segment with one or more
     different types of servers.
     
     We use 192.168.1.* addresses (one of the RFC1918 "reserved net"
     address blocks) on the internal LAN. We use another RFC1918 on the
     other (we can use any of the 192.168.x.* addresses and we can
     subnet them in whatever fashion we like).
     
     But wait! We can't run an Internet server on an RFC1918 address! No
     router on the Internet will have valid routes to any of those
     addresses. True enough.
     
     However, we do have one valid, real Internet address (direct
     routable IP address or DRIP). We might not want to run a web
     server, DNS server, mail relay or other service on our router (due
     to security, administrative, or capacity considerations). So we put
     ipportfw to relay connections to our router's web, DNS, or SMTP
     ports to one or more machines on the bastion segment. This makes
     'fw' (our firewall/router) "appear" to be a multi-service host ---
     though it is only running a simple set of port forwarders.
     (Actually you really wouldn't need to have a third segment --- you
     could port forward or relay into hosts on your internal LAN.
     However, I wouldn't recommend that --- since any attacker that
     subverts one of those servers through the relayed connection can
     then attack all of your other systems --- rather than being
     isolated to one segment).
     
     Note: I've never actually done this. However, that's what the IP,
     TCP, and UDP port forwarding utilities seem to be for.
     
     However, this doesn't seem to meet your needs. You want to support
     the clients on your LAN in their access to public services out on
     the net. You don't seem to have any need to provide services
     ("virtual" or "relayed" or whatever) to the 'net.
     
     So, you can use proxying. You can run a caching web server proxy
     (like Squid and/or Apache or even the old CERN web server). You can
     also run a caching name server on your gateway system. This is
     handy since your gateway (fw) has routes to your internal LAN and
     to the net. So it can reply to DNS request by your internal clients
     and make them of the outside world.
     
     You can also use IP masquerading (using the ipfwadm command for
     your 2.0.x kernels and the newer, snazzier, ipchains command for
     2.2). This is basically an alternative to proxying. You can think
     if IP masquerading (a particular form of "Network Address
     Translation" or NAT) as a "transparent, transport layer proxying"
     method. If you have a proxy server in place, and all of your client
     software supports the proxy (through the SOCKS protocol) then you
     don't need NAT/IP masquerading.
     
     It's possible to use them together (so your SOCKSified clients talk
     to the proxying servers on your system, and anything else still
     goes through the NAT system. It's possible to do this with just one
     router --- and it's even useful for some cases. For example, using
     some services is difficult and someone unreliable through a
     masquerading router.
     
     Protocols like FTP pass IP addresses in band (as part of the
     data/payload of the control connection --- to be used to establish
     a series of data connection from the server back to the client).
     This is trivial for programs to support at an applications layer
     and very difficult to do at the transport layer (from "under the
     hood"). It's like cartography --- making a map by walking around in
     the forest takes a lot of work --- doing it from a higher level is
     much handier.
     
     So, try one of the SOCKS compatible server packages. If that gives
     you any trouble try a command like:
     
     ipfwadm -F -a acc -m -S 192.168.0.0/16
     
     ... one your fw system. This will add (-a) a rule to the forwarding
     (-F) table in the kernel to accept (acc) for masquerading (-m) any
     packages with a source address (-S) from any of the 192.168.x.*
     ranges (to anywhere).
     
     The reason we don't have to be explicit about destinations and
     interfaces is because the determination of which packets are
     presented to the which packet filtering tables is done by the
     kernel's routing table. Teh filtering tables decide which ones to
     drop, accept, reject and "re-write" (masquerade). So that's all
     given.
     
     If we add the following two rules:
     
     ipfwadm -F -a acc -m -S 172.16.0.0/12
     ipfwadm -F -a acc -m -S 10.0.0.0/8
     
     we've configured our system to gleefully masquerade IP packets from
     ANY RFC1918 address --- so you can use any of them for any of your
     intenal LANs, segments, etc.
     
     I personally doubt that WinGate will work properly under WINE ---
     and it seems very unlikely that it would give decent performance or
     stability.
                        ____________________________
   
(?) Drop-in Replacement for "WinGate"

   From Paul A Pick on Tue, 23 Feb 1999 
   
   >[M]y question is: are you aware of proxy software for linux
   >which can behave like wingate? 
   
   There are also a couple of other SOCKS compatible proxy server
   packages for Linux including DeleGate, and Dante (find them both on
   Freshmeat at http://www.freshmeat.net). 
   
   There ya go. I had never heard of freshmeat... (sorry guys) 
   
   I just downloaded delegate and it looks to be exactly what I was
   looking for... it seems to be available only as source (for linux) but
   compiled no problem at all. I'll try configuring it in the next coupla
   days. 
   
   Interestingly, delegate (according to the documentation, at least)
   runs under windows as well. This means that I could chuck wingate (if
   I wanted to) and have a very consistent interface to my client. 
   
   [ illustration of ipportfw snipped ] 
   
   Note: I've never actually done this. However, that's what the IP, TCP,
   and UDP port forwarding utilities seem to be for. 
   
   Yes, but I was trying to twist them to my own ends anyway. 
   
   You can also use IP masquerading (using the ipfwadm command for your
   2.0.x kernels and the newer, snazzier, ipchains command for 2.2). 
   
   Alas, my win95 interface and my linux interface must be consistent. 
   
   I don't want to think about the client system's net access should I
   decide to play half-life, for instance. 
   
     (!) In both cases the clients can point to your server/gateway as
     their default route. It just shouldn't be a problem.
     
   (?) I personally doubt that WinGate will work properly under WINE ---
   and it seems very unlikely that it would give decent performance or
   stability. 
   
   I gave it a shot and it didn't fire up at all. It encountered a fatal
   error in 'kernel32' or some such. I wasn't too interested in
   performance (my load average is generally 0.00) but stability would be
   an issue. A 'moot' issue, as it turns out. :) 
   
     (!) Presumably WinGate is Win32s (or such). WINE only has very
     limited and preliminary support for Win32s.
     
     I expect that the moment that WINE has reverse engineered
     reasonable support for the Win32s APIs we'll see a new Win32X out
     of Redmond and a suite of compilers that generate the new code by
     default --- to minimize the compatibility and interoperation.
     
   (?) Thanks for the info. Would you like to know how the delegate
   configurations go? 
   
     (!) Sure. You could submit an article or review to the Linux
     Gazette.
            ____________________________________________________
   
(?) Jim Dennis: Re: Gimp on RH5.1

   From Rene Travera on Mon, 22 Feb 1999 
   
   Hello, 
   
   I have a problem trying to run The Gimp on RH5.1, I get the next
   messages: 
   
   gimp: error in loading shared libraries
   : undefined symbol: __register_frame_info 
   
   Can anybody tell me how to solve this? 
   
   Thanks a lot. Rene Tavera 
   
     (!) It sounds like you don't have the proper library installed (or
     that your ld.so.cache hasn't been updated to find it).
     
     Try running the 'ldconfig' command (just 'ldconfig' and [Enter] ---
     no arguments). If that doesn't help then my guess would be that you
     need to install the Gtk libraries.
     
     Did you install this with an RPM, from a tarball, or from sources?
     Did you just try to copy the GIMP binary from another system?
            ____________________________________________________
   
(?) How 'ntpdate' finds IP addresses?

   From Pete O'Donnell on Tue, 23 Feb 1999 
   
   (?) In an article on setting system clocks to atomic clock time, you
   referred to the following line: 
/usr/sbin/ntpdate -s ntp.ucsd.edu ns.scruz.net ntp1.cs.wisc.edu

   Do these 3 servers have entries in the /etc/ntp.conf file or is there
   some sort of host file set up on your machine? How does the xntpd
   daemon find the corresponding IPs. Let me know. Thanks answer guy. 
   
   -Pete O'Donnell
   LiveNetworking 
   
     (!) The /etc/ntp.conf file is used by xntpd --- not be by the
     ntpdate command. The 'ntpdate' command finds IP addresses that
     correspond to these host names in the same way that any other Unix
     utility or application does. Almost all Unix utilities that do any
     sort of network operation are linked against a set of "resolver"
     libraries. The "resolver" libraries differ a bit among systems ---
     but most of them look in the /etc/hosts file, for a hostname match
     (grabbing an IP address from there if they find one) and then read
     the /etc/resolv.conf file for a list of nameservers (DNS). In other
     cases your resolver libraries might make requests (RPCs?) of one or
     more NIS (YP) servers in your NIS domain, and newer configurations
     --- using glibc's modular NSS (name services switching) as
     controlled by /etc/nsswitch.conf might query LDAP, NDS (Novell) or
     other backend directory/name services systems for their mapping.
     
     (Under libc5 there was a /etc/hosts.conf that gave more limited and
     less extensible control over which name services were/are queried
     and in which order).
     
     Read the man pages for those files (/etc/hosts, /etc/nsswitch.conf,
     /etc/hosts.conf and /etc/resolv.conf) for some details. You can
     also look at http://www.openldap.org for some cool info about
     future use/deployment of LDAP.
            ____________________________________________________
   
(?) Sportys

   From CC on Tue, 16 Feb 1999 
   
   Hi 
   
   My 4 year old 28.8 sporty has performed perfectly, it was a little
   cheaper but I don't know why you "diss" em. Still keeps up with the so
   called 56.6s, I dunno' I scored man.
   CC 
   
     (!) The Sportster is simply not rated for the duty cycles that
     would be imposed by use on a BBS or ISP terminal server. I've
     managed a couple of large BBS systems over the years (the 100 line
     Symantec BBS a few years ago, and the 40 line McAfee BBS ---
     expanded to about 60 by the time I left).
     
     Sportsters are a consumer/commodity product. They're suitable for a
     few hours use per day --- but they get unreliable when receiving
     calls and staying "live" for weeks on end (which is what happens at
     busy BBS' and ISPs).
     
     Another problem I personally have with them is the physical shape.
     They are not "stackable" and the case design doesn't lend itself to
     good cooling.
     
     I've found (for high density applications) that placing the
     couriers on their sides (not stacked "up" but arrayed like books)
     and placing some additional fans on the racks helps keep them cool
     and makes them MUCH more reliable.
     
     I like "baker's" wire racks for these installations, about as
     sturdy as 19" racks and much cheaper --- they just don't look as
     "cool". One nice thing about baker's racks; you can pack them in
     pretty close to the walls and to one another (side to side) --- and
     (since they are on large locking wheels) still maintain fairly easy
     access to the back panels (to get at the wiring nest).
     
     I realize these factors exhibit a "big installation" (glass house)
     bias. For my own home modems I have a couple of 28.8 Practical
     Peripherals (the "flat pack" model, not the hideous "brick") and a
     Zyxel. I just bought the Zyxel for some time when I get around to
     playing with vgetty's DTMF and voice modem support features
     (eventually).
     
     I don't remember the context in which I "dis'd" the Sportsters ---
     but I'm not surprised I did. I've never been impressed with them.
     It's a personal bias. BBS Sysops often are extremely biased about
     their modems; I'm only moderately so.
            ____________________________________________________
   
(?) souncards

   From Oxy Amigo on Mon, 15 Feb 1999 
   
   I have a Mediavision PAS16, a ALS100+ and a SoundBlaster Live!, can i
   put, at the same time the tree on Linux Red Hat 5.2? I just want 6
   analog audio inputs. 
   
   Thanks. 
   
     (!) I doubt that it's possible. Many sound cards take up two IRQs
     and one or two DMA channels. You probably don't have six available
     IRQs and 3 to six available DMA channels.
     
     If you can configure all of the hardware to co-exist (setting all
     of the various I/O port, IRQ, DMA channel addresses uniquely for
     all of them) then you can probably get Linux to concurrently access
     them. (You might have to do some kernel patches or play some games
     with obscure kernel boot parameters, module command line options,
     and module load order and/or driver autoprobing order. I don't know
     --- I'm not a C programmer).
     
     If you looked around a bit you might find a professional sound
     mixing subsystem that you can interface to your PC to give you six
     or more high fidelity audio inputs. I'm not an audiophile, nor a
     sound engineer either.
     
     One of the guys at SVLUG has set up a portable MBone multimedia
     broadcast system which seems to be capable of three video/audio
     feeds (I'm not sure if that's switched or concurrent, though I'm
     now curious enough to ask).
     
     Have you tried to do this? What sorts of problems did you bump
     into? What is it that you're actually trying to do? (What intended
     application leads to your your requirements)?
            ____________________________________________________
   
(?) Linux as a Loghost (Syslog Server)

   From Ravi Shah on Thu, 25 Feb 1999 
   
   Thanks a lot. It works. Do you have any book you are writing
   specifally for Linux and does include most of the questions that you
   have been answering for quite a while ? I would be very much
   interested in your book if you have one out or writing one. 
   
     (!) As a matter of fact I am writing a book for Linux system
     administrators. My co-author is taking over quite a bit of the load
     (smoothing out the sectional organization and the transitions
     between core content elements).
     
     I hope to have it done RSN ("real soon now"(TM)). (It should be
     "Linux Systems Administration" from Macmillan Computer Publishing).
     
     I'm glad that helped. Incidentally, if you try to use the -m option
     on some of your Linux clients --- to force them to periodically
     generate "heartbeat" or "timestamp" messages, you should be aware
     that this feature was broken until fairly recently. (It used to
     work, years ago, then stopped working in later releases and the
     author/maintainer assured me that it should be working if you get
     the latest copy --- I don't have the details handy --- but it
     shouldn't be too hard to dig up).
     
   (?) Thanks again for your great help. Ravi 
   
     (!) [In response to]:
     
   (?)
   >Dear Answerguy : 
   
     >This has been one of the best support for Linux is out there that
     >I know of by searching for my question about syslog. This is one
     >of the better site I have seen in a long time.
     
   I hope to provide even better support through my new employer:
   LinuxCare (commercial Linux support). 
   
   However, I'll be continuing to volunteer time through LG as well. 
   
   >Here is my quesion and your help will be greatly appreciated !! 
   
   >I am running Redhat 5.0 distribution of Linux on Dell Pentium 166,
   >and it works fine with dual boot of NT. 
   
   >I would like to use this machine to be a syslog server for Cisco
   >routers since we are major ISP. I have setup local7 facility to
   >logged the debug messages, but Linux is not logging any debug
   >messages from Cisco router. I have issued service timestamp
   >commands from cisco router, and it does not work !! Similar
   >setting works fine in Solaris, but not in Linux !! Help.. Thanks. 
NAME
sysklogd - Linux system logging utilities.

SYNOPSIS
syslogd [ -d ] [ -f config file ] [ -h ] [ -l hostlist ]
        [ -m interval ] [ -n ] [ -p socket ] [ -r ]
        [ -s  domainlist ] [ -v ]

-r     This  option  will  enable  the facility to receive
       message from the network using an  internet  domain
       socket  with  the syslog service (see services(5)).
       The default is to not receive any messages from the
       network.

       This  option  is  introduced  in version 1.3 of the

   Basically the older version of the syslog daemon would accept syslog
   messages by default --- from any machine that could get the right
   packets routed to them. 
   
   However there was a buffer overflow (bug) a few years ago which
   brought attention to the fact that very few systems need to act as
   remote loghosts (and that there is no sense in leaving the rest
   vulnerable to remote attacks through this service. 
   
   So the default was changed and now (which any recent version of
   syslogd (klogd) you have to add this parameter to your start script
   (or inittab entry) to force it to allow reception and logging from
   other systems. 
   
   I still recommend that you put the log host behind a set of packet
   filters (Cisco IOS "access control lists") to ensure that spurious and
   hostile log messages can't reach your loghost. 
            ____________________________________________________
   
(?) Telnetd and pausing

   From Clive Flint on Thu, 25 Feb 1999 
   
   Hi, 
   
   I have made a Linux server using a Tulip dt5/100 machine with 40Mb
   Memory, a 16Mb swap file and a 1Gb hard disk. 
   
   I have a problem that when I try to telnet into the machine it doesn't
   respond for about 30-40 seconds. Once it has responded then it will
   talk quite normally. 
   
   If I then start another telnet session on my pc it again pauses for
   the 30-40 seconds. Is there any reason and is there anything that can
   be done. 
   
     (!) This is a classic problem. TCP Wrappers (/sbin/tcpd) is
     attempting to check the consistency of your name and IP address
     using its "double reverse DNS lookup."
     
     I've described this before but the short form is: tcpd does a
     reverse lookup to associate a name with your IP address. It then
     does a forward lookup on that purported name and scans the
     responses for your IP address. A properly maintained domain will
     have consistent forward and reverse mappings.
     
     The reason Wietse Venema (author of TCP Wrappers) does this is to
     allow you to use host and domain names in your /etc/hosts.allow and
     /etc/hosts.deny files while reducing the risks inherent in that.
     
     Consider the case of someone who controls any reverse DNS domain
     (that is anyone who "owns" or has subverted any nameserver to which
     a range of IP address PTR records as been delegated). It is trivial
     for them to return any name they like in response to reverse DNS
     requests. However, it would be non-trivial for an outsider to
     modify your forward DNS zones (and, if they could they could use
     "man-in-the-middle" attacks against most common prototols to
     disrupt your system in many creative ways).
     
     So, tcpd uses a "double reverse" method.
     
     The easy solution for real IP addresses which have been properly
     delegated to you by your ISP or through the IANA (or your national
     address registry) is to simply update your reverse zone maps to
     match the forward ones.
     
     The reason this only affect the initial connections, and that it
     only affects a limited set of services is because tcpd is only
     active for those services which are listed in the /etc/inetd.conf
     as being launched by tcpd with lines like:
     
ftp     stream  tcp     nowait  root    /usr/sbin/tcpd  in.ftpd

     (You'd see similar affects from programs that are linked with
     "libwrap" --- a compiler library which implements the same set of
     host access checks as TCP Wrappers).
     
     The reason your web services aren't affected is because they aren't
     launched through inetd and they aren't compiled with libwrap. (And
     they don't do these double reverse lookups).
     
 (?) ip numbers
192.9.200.1 clive.clara.net (linux server)
192.9.200.100 cef1 (winnt machine)
192.9.200.101 clivemob (win98 machine)

     (!) I believe you should be using RFC1918 addresses for these
     systems since the real address for clive.net seem to cluster in the
     195.8.69.* range and a reverse lookup of 192.9.200.0 suggests that
     those are not assigned at this time.
     
     I'm assuming that you've just "picked these out of a hat" --- that
     they haven't been delegated to you. This also suggests that you're
     using masquerading or a set of applications proxies (such as SOCKS,
     DeleGate, Danta, etc) to access the 'net.
     
     You could configure your nameserver for "split" DNS or you could
     configure an internal nameserver (used by all your internal
     systems). Another technique is to simply put the appropriate
     entries in your /etc/hosts file. This will bypass DNS (and reverse
     DNS) queries for most services. The 'gethostbyaddr()' library
     function will find the IP address and name in the /etc/hosts file
     first (under most common configurations).
     
     (That might fail if you've changed your /etc/hosts.conf (libc5) or
     /etc/nsswitch.conf (glibc). However, it's incredibly unlikely that
     you've touched either of those files).
     
   (?) The server is running dhcp service and that works fine. If I web
   to it it responds immediately with no delay. 
   
     (!) Like I said --- this only affects TCP wrapped services (and
     others that would do similar consistency checks.
     
   (?) Any help would be gratefully received. 
   
     (!) Try adding the appropriate IP addresses to the /etc/hosts files
     on the involved servers.
     
    "Linux Gazette...making Linux just a little more fun!"
     _________________________________________________________________
   
                               More 2 Tips!
                                      
               Send Linux Tips and Tricks to gazette@ssc.com 
     _________________________________________________________________
   
  New Tips:
  
     * Multiple booting. 
     * Spell checking an single word 
     * Keyboard Macros in Emacs 
       
  Answers to Previous Questions:
  
     * Re: A question please: two modems 
     * Re: Boot SCSI with IDE Disk Too 
     * Supra SupraSonic Int Modem with Linux 
     * Supra SupraSonic Int Modem with Linux 
     * From .02 Tips issue 36: SupraExpress Modem 
     * MIDI question 
     _________________________________________________________________
   
  Multiple booting.
  
   Date: Mon, 01 Feb 1999 07:04:20 -0500
   From: "Richard E. Veldwijk", veldwijk@UU.NET
   
   As I've got kids and kids tend to play games, I have to have Micro$oft
   products on my machine. As I use OS/2 and Linux myself, here's a nice
   tip: Install OS/2's boot manager. If you have OS/2 installation
   floppies, you can run an OS/2 FDISK and install the boot manager, even
   without installing OS/2 itself.
   
   On my machine, I have two primary C-partitions. The 1st is DOS 6.2,
   the 2nd is WIN98. I created these with Partition Magic and the OS/2
   boot manager will take care of hiding and unhiding of these
   partitions. The 3rd option is Linux, where LILO is loaded from the
   Linux partition, instead of the MBR, so it doesn't interfere with M$
   crap. Last option is, needless to say, OS/2 itself. This works really
   good! One drawback: Only the last booted C-partition is visible. If
   you need to access the other, you'll have to hide one and unhide the
   other.
   
   --
   Richard E. Veldwijk
     _________________________________________________________________
   
  Spell checking an single word
  
   Date: Mon, 8 Feb 1999 01:01:43 -0500 (EST)
   From: "Ben 'The Con Man' Kahn", xkahn@cybersites.com
   
   Many times I want to spell check a single word while I'm using an
   application which doesn't support ispell. I created a small tcsh alias
   which can check a single word from the command line. Here is the
   alias:
alias spell 'set j=`mktemp /tmp/spell.XXXXXX`; rm -f ${j}*; echo \!:1 >
${j}; ispell ${j}; cat ${j}; rm -f ${j}*; unset j'

   Please note that the inner quotes are back quotes. This makes the
   command run and assigns the output to a variable. I have no idea how
   to do this in bash. :^/
   
   --
   Benjamin Kahn
     _________________________________________________________________
   
  Keyboard Macros in Emacs
  
   Date: Mon, 01 Feb 1999 19:09:16 +0500
   From: Vishwas Narendra, vishen@md2.vsnl.net.in
   
   This is my $0.02 tip on how to use Emacs for programming with a bit of
   lesser work for your fingers. Emacs has something known as keyboard
   macros. To create a keyboard macro type `C-x (' when you're editing
   any file(let's say a C source file). Now when the minibuffer says
   `Defining kbd macro' type in whatever you want to automate. Take for
   example you want to automate the line :
   
   int main(int argc, char **argv)
   {
   
   Once you've finished typing this type `C-x )', emacs should say
   `Keyboard macro defined'. Now you must name your macro, so that you
   can call it later. Just type `M-x name-last-kbd-macro'. It then
   prompts for the name. In our example, let's call this as `main-type'
   or something like that. Now open your .emacs file. When the .emacs
   file is open, come to the end of the file and type `M-x
   insert-kbd-macro'. When it asks for the name of the macro to insert
   type in the macro name you had given last time. And emacs
   automatically inserts the Lisp code for your macro.
   
   Now in order to call the macro you must use `M-x <macro-name>'. But
   this doesn't do much good because the whole idea of macros is to
   decrease your typing and this makes it worse. This problem is overcome
   by using keyboard mapping. The next step is to map the macro to one of
   the function keys.
   
   Depending on whether you need the macro in all modes or not you can
   use the functions global-set-key or define-key.
   
   1. Here is an example for the global-set-key which you can add to the
   end of the .emacs file:
   
   (global-set-key "\C-cm" 'main-type)
   
   Now the next time you reload emacs, when you type C-c m the whole code
   (not really, just this one line) gets typed for you. Please note here
   that it is a bad idea to use keys that have already been mapped. The
   most preferable combination is Control C + <yourkey>.
   
   2. If you want the keys to be mapped only in the cc-mode, then place
   the following code in your c-mode-common-hook:
   
   (define-key c-mode-base-map "\C-cm" 'main-type)
   
   The only problem with the first method is that since you have only
   limited keys on the keyboard, they get used up very quickly. Moreover,
   when you're editing something like a html file, you wouldn't wan't
   emacs to spew out characters like `int main' etc.
   
   PS to gurus: Please note that I myself am a beginner in emacs. I've
   used it for only six months now. If there is any mistake in what I've
   written, please don't hesitate to write to me.
   
   --
   Vishwas
     _________________________________________________________________
   
    Tips in the following section are answers to questions printed in the Mail
    Bag column of previous issues.
     _________________________________________________________________
   
  ANSWER: Re: A question please: two modems
  
   Date: Wed, 24 Feb 1999 17:56:21 +0100
   From: Christophe Fonteyne, christophe.fonteyne@lu.gmeds.com
   
   It is impossible to connect two modems over a telephone line at a
   speed of 56 Kbps. The reason for that is that the maximum traffic over
   a telephone line is 64 Kbps. In order to obtain that speed, both
   parties need to have a didgital connection. When you dial up to your
   provider at 56 Kbps, you're not dialling to an analogue modem, like
   you have yourself, but insteed, you're dialling an ISDN modem...ie
   digital. Therefore you cannot have the full 64 Kbps, but only 56 Kbps
   (loosing 8 KBPS). Now if you set up a connection between 2 anaolgue
   modems, you will loose twice the 8 Kbps, leaving you with a maximum
   transfer rate of 48 Kbps. This is only when the lines are in optimal
   condition, which is rarely the case. Also, make sure the transfer rate
   of your serial ports is set high enough (eg stty 57600 ).
   
   --
   Christophe
     _________________________________________________________________
   
  ANSWER: Re: Boot SCSI with IDE Disk Too
  
   Date: Tue, 2 Feb 1999 21:54:40 +0100
   From: "Bszrmnyi Zoltn", zboszor@mol.hu
   
   A local ISP tried to install LILO in a machine that has both IDE
   (three disks) and SCSI, and for him the only variation that worked was
   when there was no primary master IDE disk, one of the IDE disks was
   the slave on the primary controller.
   
   The BIOS of course allowed to boot from SCSI but LILO complained all
   the time that /dev/sda in not the first disk until the above setting.
   
   After installing LILO the primary slave could be jumpered as master
   but not recommended.
   
   --
   Zoltan Boszormenyi
     _________________________________________________________________
   
  ANSWER: Question in lg-37
  
   Date: Tue, 9 Feb 1999 10:52:04 +0100
   From: Ian Carr-de Avelon, ian@emit.pl>
   
   A reaction to:
   
     I have two 3com modems v90's one is internal "3com v90 voice" and
     the other is External 3com v90 .... I am using each one with a
     Linux System and have them connected to each others by a telephone
     line .... my problem is that I don't get the 56 speed that v90
     should have. I get 33 or some thing like that... is there a way to
     tune up the modems in Linux operating systems? Thanks a lot.
     
   Unfortunately this is nothing to do with Linux, so normal folks can't
   meddle with it, as they could if it were something in Linux. The "56K"
   speed is possible only in one direction, and relies on there being a
   digital connection to the phone system at the faster sending end. To
   get 56K in one direction you will need to change one end to ISDN and
   purchase suitable equipment for that end Eg. USR Courier-I. Depending
   on the cost of ISDN where you are, you may be better looking at ISDN
   at both ends as equipment for straight digital ISDN is much cheaper.
   
   --
   Ian
     _________________________________________________________________
   
  ANSWER: Supra SupraSonic Int Modem with Linux
  
   Date: Mon, 08 Feb 1999 09:58:51 PST
   From: "tom poplawski", tom_poplawski@hotmail.com
   
   I have seen the Red Hat page and this about Supra Modems and Linux. I
   am writing this from my Linux box connected to the Internet with my
   diamond SupraSonic II modem. I am using Red Hat 5.2 and made no
   changes at all to get this modem working. I haven't tried using both
   modems at once - yet! At first glance it appears Linux has recognized
   the other modem as well. I haven't been able to tell why Red Hat says
   it won't work but it may need some configuration as a Plug and Play
   board that Linux can't provide. I did use it first in another plug and
   play operating system before Linux.
   
   --
   Tom
     _________________________________________________________________
   
  ANSWER: From .02 Tips issue 36: SupraExpress Modem
  
   Date: Tue, 1 Dec 1998 09:48:10 -0500
   From: "Brower, William", wbrower@indiana.edu 
   
   Richard wrote:
   
     I have a PII (350MHz) running with an AGP ATI 3DRage graphics card
     (which works fine) and a Sound Blaster 16 PnP (which also works
     fine). But, I can't get my internal SupraExpress 56k modem to work.
     
   Your modem sounded familiar from a past search I had done, so I went
   to Red Hat's www site (http://www.redhat.com/) and followed the
   support | hardware link. You will find this reference in the modem
   category:
   
   Modems that require software drivers for compression, error
   correction, high-speed operation, etc. PCI Memory Mapped Modems (these
   do not act like serial ports) Internal SupraExpress 56k & also the
   Internal SupraSonic 56k
   
   It appears that your modem is inherently not compatible with Linux. I
   use an inexpensive clone modem called the E-Tech Bullet, pc336rvp
   model - paid $28 for it and it operates with no problems at all. Good
   luck in finding a compatible modem!
   
   --
   Bill
     _________________________________________________________________
   
  ANSWER: MIDI question
  
   Date: Tue, 23 Feb 1999 18:47:56 -0500
   From: Paul Winkler, zarmzarm@erols.com
   
   Subject: Idea for an article
   
     How about a primer on how to set up one's sound card to do true
     MIDI?
     
   Good idea, big topic.
   
     I have an Ensoniq AudioPCI card and have been successful in getting
     it to play WAV files via the audio out port and also simulated MIDI
     using TIMIDITY.
     
   That is all the card is capable of. The AudioPCI _does_not_have_ a
   hardware midi synth of any kind!
   
     But I can't figure out how to get TRUE MIDI rendering like I get
     with the same card in Windows 95.
     
   You've been fooled, I'm afraid. Under Win95, the AudioPCI uses a
   software synth (which is what TiMidity is!). Check your system
   resources while playing MIDI... CPU usage should go up.
   
   If you really want / need a card that really has built-in wavetable
   synthesis, make sure you get one that stores the samples in ROM, not
   RAM. If the samples go in RAM, you need software to load them at boot
   time. This software is provided by the manufacturer and guess what...
   it won't run on Linux.
   
   I have a Turtle Beach Malibu which has a 2MB ROM sample set which
   sounds OK. The other snag is I've hardly found any Linux apps which
   work with it! (Jazz++ sequencer works.).
   
   --
   Paul
     _________________________________________________________________
   
              Published in Linux Gazette Issue 38, March 1999
     _________________________________________________________________
   
   [ TABLE OF CONTENTS ] [ FRONT PAGE ] Back Next 
     _________________________________________________________________
   
      This page maintained by the Editor of Linux Gazette, gazette@ssc.com
      Copyright  1999 Specialized Systems Consultants, Inc.
      
    "Linux Gazette...making Linux just a little more fun!"
     _________________________________________________________________
   
               Adding a Second IDE Hard Drive to Your System
                                      
                            By Mendel Leo Cooper
     _________________________________________________________________
   
   Consider the advantages of adding a second drive to your system. True,
   replacing your present drive with a new, low cost, high capacity one
   would seem a better alternative, but... If you can pick up a used 1.3
   gig drive for a coupla bucks at a flea market or you local computer
   dealer (he might have accepted it as a trade-in), then this is indeed
   the cheapest way to upgrade your storage capacity. If you are planning
   to update the kernel on a production system, but are afraid of
   breaking some of your apps, then it is a simple matter to copy your
   entire ~/, /etc, and /usr directories to the second drive, where they
   would remain pristine and untouched by the upgrade. If a few hundred
   megs would tide you over for a few months, until you finish paying off
   your new patio or gambling debts, then save those bucks until next
   year, when 20 gig IDE drives will be a loss leader at your local "Five
   'n Dime".
   
    1. The physical mount.
     Copy down the specs from the label on the drive.
     Make sure it's jumpered as "slave".
     Mount the drive in a spare drive bay, securing it with several screws.
     Attach an IDE cable from the IDE port on the motherboard.
    2. Update the BIOS with the info for the new drive.
     It may autodetect, but don't count on it. Check the BIOS settings to make
     certain. Setting the 'LBA' option not necessary.
    3. Partitioning.
     Boot up Linux and partition the new drive:
     As root, fdisk /dev/hdb.
     [primary partition, Linux native]
    4. Format the new drive.
     mke2fs -cv /dev/hdb1
     [verbose output and check for bad blocks]
    5. Create a mount point.
     Decide where you will be mounting it and create a mount point.
     For example, if you will mount it as /mnt/drive2, as root,
         cd /mnt
         mkdir drive2
         chmod 777 drive 2
         [makes the new drive accessible to ordinary users.]
    6. Testing.
     As root, mount -t ext2 /dev/hdb1 /mnt/drive2.
     If no error messages, cd /mnt/drive2, and try creating a directory and
     writing a couple of files.
     If it works, hurray!
     Continue to the final steps.
    7. Modify /etc/fstab.
     Add the following line to /etc/fstab:
     /dev/hdb1         /mnt/drive2          ext2    defaults     1 1
    8. Reboot and see if the new drive automounts.
       
   The Hard-Disk-Upgrade miniHOWTO, by Yves Bellefeuille contains some of
   the above info, but in a somewhat different context. In any case, the
   author of this article figured out how to do it mostly by trial and
   error and read the miniHOWTO after the fact.
     _________________________________________________________________
   
                    Copyright  1999, Mendel Leo Cooper
             Published in Issue 38 of Linux Gazette, March 1999
     _________________________________________________________________
   
   [ TABLE OF CONTENTS ] [ FRONT PAGE ] Back Next 
     _________________________________________________________________
   
    "Linux Gazette...making Linux just a little more fun!"
     _________________________________________________________________
   
                        Compiling Programs on Linux
                                      
                               By JC Pollman
     _________________________________________________________________
   
   So you are a linux newbie and want to get your hands dirty. Most of
   you, myself included, are not programmers, but that does not mean we
   can not enjoy the benefits of open source, and even contribute to the
   cause. It also means that we are at a distinct disadvantage when
   compiling goes wrong. Compiling is usually very simple: nothing to get
   worried about and certainly nothing as hard as programming, but it is
   not a 100% guaranteed event. What follows is a beginner's guide to
   compiling. It is meant to be a 90% solution for people starting out
   with linux.
   
   Sooner, or later, everyone will download a program in source code and
   try to compile it. Even if you are avid follower of Red Hat or Debian,
   you will eventually find a program that is either too old, or too new,
   to find a precompiled binary. The bad news is that the code will not
   always compile no matter what you do - remember, most linux programs
   are beta at best. The good news is that the percentage of programs
   that compile without problems has increased significantly over the
   past five years, and that there are things you can do to "fix" code
   that will not compile without being a programmer.
   
   After you download: you now have some sort of tarball on your disk.
   First you must uncompress it and untar it to a directory. By
   convention, most people untar programs to the directory: /usr/src.
   This keeps everything in one place so you can clean it after time, as
   well as keep track of which version of the program you have compiled.
   You will need to be root to use this directory. The linux tar program
   can uncompress and untar a file at the same time if the file was
   compressed using gzip. If you have a file named: filename.tar.gz, you
   can cd to the /usr/src directory and type:
   
       tar -xzvf /{path to file}/{filename.tar.gz} [Enter]
   
   and it will uncompress and untar. Here is a quick explanation of the
   flags:
   
       x - untar the file
       z - uncompress the file
       v - verbose - so you can see what is happening
       f - what follows is the file you want to untar
   
   If you used Netscape to download the file, you might get an error.
   Sometimes Netscape will uncompress the file for you. So if you try to
   untar it as listed above you might see:
   
       gzip: stdin: not in gzip format
   
       tar: Child returned status 1
   
       tar: Error exit delayed from previous errors
   
   Try the same command, but leave out the z. So it looks like this:
   
       tar -xvf /{path to file}/{filename.tar.gz} [Enter]
   
   Instead of gzip, many files are using bzip2 for the compression, so
   your file will look like: the-program.tar.bz2. The z flag for tar will
   not work. The easiest way to untar the file is to type: bunzip2
   the-program.tar.bz2. This will give you the file: the-program.tar,
   which you can untar using:
   
       tar -xvf /{path to file}/{filename.tar.gz} [Enter]
   
   After untaring: cd to the directory that was created when you untared
   the program. Look at the files in the directory: ls. You have to read
   the README and INSTALL files. Do not think you will get the slightest
   bit of help from anyone if you do not read these files. There is a
   reason why RTFM is one of the most common expressions on the net. The
   README and INSTALL files should tell you how to compile and install
   the program.
   
   To compile, you issue the "make" command. In order for "make" to start
   compiling, it must have a file named: Makefile (you could issue "make"
   options on the command line, but that is beyond the scope of this
   article.) There are three common ways to start the compile: simple,
   Imake, and configure.
   
   Simple compile: If you see is a file called Makefile - no Imake or
   configure files, you are going to use this method to compile. This
   method of compiling has the most problems because nothing is
   configured to your computer. Often times the README and INSTALL files
   will tell you to edit some files so it will compile. Usually you can
   then type:
   
       make [Enter]
   
       make install [Enter]
   
   and if all goes well, you can now run the program.
   
   Imake: If you ls the directory and there is an Imake file and no
   Makefile, you use this method. This is an older way to setup the
   compiling. Basically, you type:
   
       xmkmf [Enter]
   
       make [Enter]
   
       make install [Enter]
   
   Configure: Use this method of compiling if there is a file named
   configure in the directory. This is the easiest way to compile and
   probably has the highest chance of compiling correctly. Essentially it
   checks your entire system for every possible library and support file
   to ensure you can compile the program, and then creates the Makefiles
   with the correct information. To compile, type:
   
       ./configure [Enter]
   
       make [Enter]
   
       make install [Enter]
   
   Notice the ./ in front of the first command. When you type a command,
   you shell looks for the files in your path. It does not start looking
   in your current directory, so if ./ (which means: current directory)
   is not in your path, even though ls can see the file, your shell can
   not it. The shell can execute make because it is usually in /usr/bin
   which is in your path. To see your path, type:
   
       echo $PATH [Enter]
   
   If things go wrong:
   
   The most common cause of not compiling is missing files. Almost all
   programs rely on support programs/files/libraries. If they are
   missing, the program can not compile. The README/INSTALL files should
   have told you which files, and which version of the files, you need to
   compile the program. Note: the wrong version will kill you just as
   much as not having it at all. Usually you will know if this is the
   problem because the error statement at the end of the compile will
   tell you it can not find a certain file. Note: sometimes you have the
   file, but it is not where the Makefile says it is. Use your linux
   distribution install program, e.g. rpm, and check to see if you have
   the missing file. If not, go get it. If you do have it, and it is the
   correct version, check the Makefile to see where it thinks the file
   is. Example: say the file moc is in /usr/local/bin, but the Makefile
   says: moc=/opt/bin/moc. Then just edit the Makefile (with vi or
   whatever you use for text editing) and change where moc is located.
   
   The next most common problem is missing include files. Most of the
   files in the program source directory have lines near the top that
   look something like this:
   
       #include <gtk/gtk.h>
   
       #include <netinet/in.h>
   
       #include <arpa/inet.h>
   
       #include <stdlib.h
   
   These "h" files (or headder files) must exist on your computer. As a
   minimum, check that you have the kernel headder files by: ls
   /usr/include/linux. If you have installed libraries, like gtk, make
   sure you have also installed the devel files for them as well.
   Sometimes having multiple versions of the same library can cause
   problems as each version could put its header files in different
   places and you will not know which files the compile will use.
   
   If you have made all the necessary changes to the Makefiles and have
   all the libraries and include files and it still will not compile do
   the following IN ORDER:
   
   1. If you downloaded the program from a site other than the home site
   for this program, go to the home site and see if there is a newer
   version available.
   
   2. Go to www.dejanews.com and search for your program. It is very
   likely that others have had the same problem and posted solutions.
   
   3. If all else fails, email the author. Most program authors are very
   interested in improving their program and bug reports/suggested
   improvements are usually well received (remember: this is linux, not
   commercial software.) Note: your bug report had better say something
   more than "it did not compile"! I usually email the last 10, or so,
   lines from the xterm compile window so the author can see exactly
   where it died. If I really like the program, I will email the author
   after every new version and give him/her as much useable feedback as I
   can. Please note: programmers are humans too - they go on two week
   vacations, change jobs and locations, and some even have to go to
   class once in a while, so do not expect an immediate reply.
   
   Lastly, there are some programs that have unique compile setups: qt
   and the kernel come immediately to mind. To compile them, I will beat
   the horse one last time: read the README and INSTALL files!
     _________________________________________________________________
   
                        Copyright  1999, JC Pollman
             Published in Issue 38 of Linux Gazette, March 1999
     _________________________________________________________________
   
   [ TABLE OF CONTENTS ] [ FRONT PAGE ] Back Next 
     _________________________________________________________________
   
    "Linux Gazette...making Linux just a little more fun!"
     _________________________________________________________________
   
   [INLINE]
   muse:
    1. v; to become absorbed in thought 
    2. n; [ fr. Any of the nine sister goddesses of learning and the arts
       in Greek Mythology ]: a source of inspiration
       
                                1999 by mjh
   ______________________________________________________________________
   
   Button Bar
   W elcome to the Graphics Muse! Why a "muse"? Well, except for the
   sisters aspect, the above definitions are pretty much the way I'd
   describe my own interest in computer graphics: it keeps me deep in
   thought and it is a daily source of inspiration.
   
             [Graphics Mews][WebWonderings][Musings][Resources]
                                      
   T his column is dedicated to the use, creation, distribution, and
   discussion of computer graphics tools for Linux systems.
   
   You'll notice a few minor changes to this months column.  First, I've
   got a sponsor:  SoftPro Books is providing books for me to do book
   reviews.  In exchange, I'll be linking the book covers to their site
   so you can order them.  Their sponsorship allows me to do more book
   reviews than normal since otherwise I'd have to purchase the books.
   And that gets expensive.  So if you think the book being reviewed is
   for you, please consider purchasing it from SoftPro Books.
   
   Second, I've signed up for Associate/Affiliate programs with
   Amazon.com and fatbrain.com, respectively.  If you're considering
   buying some other books online, I'd appreciate it if you visited their
   site via these links.  If you buy books via these links I get a small
   stipend, which over the long term I can use to buy equipement.  Right
   now I'm trying to get some cash together to get a TV card so I can do
   an article on software for those beasts.
   
   In this months column you'll find:
     * A review of Jennifer Niederst's book Web Design In A Nutshell
     * Information on accessing non-keyboard characters in X
       
   [LINK] [LINK] 
   Associate
   
   [INLINE]
   The Artists' Guide to the Gimp
   Available online from fatbrain.com, SoftPro Books and Borders
   Books.
   
   In Denver, try the Tattered Cover bookstore.
   
   Also, check out the associated web site, TheGimp.com, sponsored by
   SSC, Inc. and edited by The Graphics Muse - Michael J. Hammel.
   ______________________________________________________________________
   
   [INLINE]
   
   Other Announcements:
   Metro Link support for Rendition / Nvidia cards
   Release 0.3 of a clickable imagemap plug-in for the Gimp
   Giram 0.0.6
   tgif 4.0.13
   Sketch 0.5.3
   KuickShow 0.6.3
   wmtune for bttv 1.0
   FREEdraft 0.3.6
   GRASS 5.0 beta
   W3C aims to streamline vector graphics
   Netscape Flash Plugin 0.4.3
   Video Server 0.5.4
   Poor Man's Cam 1.1
   GILT 0.1.0
   Zope 1.10pr1
   gView 0.1.0
   < More Mews >
   Disclaimer: Before I get too far into this I should note that any of
   the news items I post in this section are just that - news. Either I
   happened to run across them via some mailing list I was on, via some
   Usenet newsgroup, or via email from someone. I'm not necessarily
   endorsing these products (some of which may be commercial), I'm just
   letting you know I'd heard about them in the past month.
   ______________________________________________________________________
   
   XawTV 2.34
   Gerd Knorr
   
   XawTV is a simple Xaw-based TV program which uses the bttv driver or
   video4linux. It contains various command-line utilities for grabbing
   images and avi movies, for tuning in TV stations, etc. A grabber
   driver for vic and a radio application (needs KDE) for the boards with
   radio support are included as well.  Changes: 15 bpp problems fixed,
   NTSC-HRC support added, driver updates (sync up with bttv 0.6.1,
   msp3400 nicam changes).
   
   http://www.in-berlin.de/User/kraxel/xawtv.html
   ______________________________________________________________________
   
   Random Quotes:
   
   Seen on the SANE web site (in the legend explaining the supported
   scanner list):
   
     "stable" means someone is pulling your leg.
               _____________________________________________
   
   "When I read a book about computers, they're written by Martians, for
   Martians.  They don't know how to spell out a word.  Everything has to
   be three letters.  This drives me batty.  In fact, when I rule the
   world, there will be a glossary at the bottom of every page and every
   photograph in every computer publication that says exactly what these
   abbreviations are."
   
     Harold Feinstein, as quoted from the February 1999 issue of PEI
     Magazine.
   ______________________________________________________________________
   
   Tech Soft America Announces support for Linux Operating System in
   HOOPS 3D Graphics System v4.41
   
   Tech Soft America (TSA), developer of the popular HOOPS 3D Graphics
   System today announced support for the Linux Operating System in their
   4.41 release.  This announcement further expands HOOPS' already
   extensive platform coverage and will enable high-end 3D applications
   to be built for Linux using HOOPS - a robust graphics development
   component with a proven track record in the CAD/CAM/CAE GIS and
   Geophysical application markets.
   
   Complete announcement.
   Hoops3D Web site.
   ______________________________________________________________________
   
   FreeWRL 0.1.8
   John A. Stewart (CRC Canada)
   
   FreeWRL is a free VRML browser for Linux. It aims to be fully VRML97
   compliant, complete with scripting in Perl, Java and Javascript, and
   EAI. It is written mostly in Perl, with some C for library interfaces
   & rendering and uses OpenGL (Mesa) for graphics.  The current versions
   are still alpha-stage and there are several pieces missing (especially
   certain field types in EAI etc) but it is quite usable in various
   types of worlds.  Changes: Some bugs fixed. New maintainer - John
   Stewart - CRC Canada
   
   http://debra.dgbt.crc.ca/~luigi/FreeWRL/
   ______________________________________________________________________
   
   ttmkfdir current
   jpo
   
   ttmkfdir is a tool to create valid and complete fonts.dir files from
   TrueType fonts. It is very useful when you plan to use a TrueType
   enabled font server that is based on the X11R6 sample implementation
   (xfsft for instance). Great care has been taken to correctly identify
   the encodings that a given TrueType font supports.
   Changes: First freshmeat announcement.
   
   http://www.darmstadt.gmd.de/~pommnitz/ttmkfdir.tar.gz
   ______________________________________________________________________
   
   xfsft 1.0.3
   jpo
   
   The Xfsft patches to X11R6 enable X11 servers (including XFree86) to
   use TrueType fonts and improves on the way X11 handles international
   scalable fonts.
   
   Changes: New in version 1.0.3 is support for international Type 1 and
   Speedo
   fonts.
   
   Download: ftp://metalab.unc.edu/pub/Linux/X11/fonts/xfsft-1.0.3.tar.gz
   Red Hat Packages:
   http://www.darmstadt.gmd.de/~pommnitz/XF86-xfsft/index.html
   Homepage: http://www.dcs.ed.ac.uk/home/jec/programs/xfsft/
   ______________________________________________________________________
   
   Retardotracer 1.0.0
   Michael Leibowitz
   
   Retardotracer is a raytracer written in C++ that raytraces both
   reverse and forwards for each polygon. This allows it to accurately
   model some (and only some) things.  It works in parallel, which is
   kinda neat. Foo, Bar, and Baz are included.
   
   Changes: This is the first release.
   http://www.ece.utexas.edu/~leibowit/retardotracer/ (only provides
   access to tarball)
   ______________________________________________________________________
   
   Dave Gnukem 0.4
   David Joffe
   
   Dave Gnukem is a GPL'ed 2D Scrolling platform game, similar to Duke
   Nukem 1. It includes a sprite and level editor. The game and editor
   use GGI, and thus runs on the console as well as in a window under X.
   
   Changes: Added teleporters, bananas, title screen image; Some cosmetic
   additions, bugfixes, structural game-flow improvements, menu
   improvements, new sprite editor features, full-screen mode in X.
   http://www.geocities.com/SoHo/Lofts/2018/djgame.html
   ______________________________________________________________________
   
   TexturePaint 1.1
   Uwe Maurer
   
   TexturePaint is a Gimp plugin which displays a Quake I/II model in an
   openGL window and shows a texture image mapped on the model. You can
   modify the texture image with GIMP and view the result in the 3d
   window. You can also paint in the 3d view and TexturePaint calculates
   the texture for you.
   Changes: Autoconf , Support for Quake I models
   http://home.t-online.de/home/uwe_maurer/texpaint.htm
   ______________________________________________________________________
   
   SGI announces the Open Source release of GLX
   
     "GLX provides the glue connecting OpenGL and the X Window SystemTM
     and is required by any OpenGL implementation using X."
     
   For the complete announcement, go to
   http://www.sgi.com/software/opensource/glx/.
   ______________________________________________________________________
   
   Linux and 3D Graphics BoF @ LinuxWorld
   
   John Leech is  organizing a BOF (Birds-of-a-Feather) session on Linux
   and 3D graphics at Linux World Expo in March. The details:
   
     Linux/3D BOF
     Wednesday, March 3, 1999
     San Jose Convention Center
     Room A4  5:30-7 PM
     
   If you have a topic to discuss, please contact me about it in advance
   (email to lwbof@oddhack.engr.sgi.com). Items already on the list:
     * Current status of OpenGL, and GLX source code release (Jon Leech,
       Silicon Graphics)
     * Direct rendering architecture status (Frank LaMonica, Precision
       Insight)
     * Darryll Strauss will be giving a conference talk with an overview
       of the various OpenGL and Mesa projects touching Linux at 2:30,
       and he will join us at the BOF to follow up.
       
   Jon Leech
   OpenGL Group
   Silicon Graphics
   ______________________________________________________________________
   
Did You Know?

     ...the Gimp was mentioned in an article discussing alternatives to
     Photoshop in the February 1999 issue of PEI (Photo Electronic
     Imaging) magazine?
     
     ...holding the Control [CTRL] key down while rotating [Gimp images
     and layers] locks it to 15 degree increments.
     Seth Burgess <sjburges@gimp.org>
     
     ...the relatively new Wacom Intuos drawing tablets are reported to
     work with the Gimp now.  Take a look at
     http://www.gtk.org/~otaylor/xinput/ for help on setting up X Input
     (required for using tablets under the X Window System) and
     http://levien.com/free/linux_intuos.html for information on the
     Intuos driver status.  Seth Burgess says "Support for tablets is
     improved in Gimp 1.1.x with a new "Ink" tool that is just too much
     fun to play with.  Of course 1.1.x is development, and crashes
     semi-regularly, so use at your own risk."
     
     ...there is a TrueType for XFree86 Mini-Howto at
     http://www.sfu.ca/~yzhang/linux/truetype/.
     
     ...there is an interesting article by Cecil Adams on the history of
     the ratios for TV and movie screens at
     http://www.straightdope.com/columns/981120.html.
     
Q and A

   Q:  Can I restore the default values on a [Gimp plug-in] easily?  If I
   experiment with various bump map settings, for example, and I want to
   get back to defaults, how do I do that without shutting GIMP down?
   
   A:  Some plug-ins have Reset or Defaults buttons but many do not.
   There is no standard for how plug-ins should behave for resetting to
   default values.
   
   Q:  Can I have more than 1 layers dialog open simultaneously, rather
   than switching from image to image.  This is annoying when I'm working
   on several multi-layer images together.
   
   A:  No, its not possible. But when you press Ctrl-L in an image the
   layers dialog shows the layers of this image. So you can switch faster
   to other images than to use the mouse.
   Jens Finke <pearl@darkride.net>
   
   Q:  Someone mentioned this recently, saying what map projection is
   required to get a map of Earth correctly image mapped on to a sphere
   in POV-Ray, and even mentioning a web site where such a map can be
   found.
   
   A1:  There is a collection of bitmapped planet surfaces at the IMP
   website:
   
     http://www.imp.org/members/scene/test_a/scripta.html
     
   There are also links to sources and methods of projection.  The maps
   here are not necessarily 'correct', but I would be interested in
   knowing how to do the correction.
   Nigel Stewart (nigels@eisa.net.au)
   
   A2:  The maps at that site [listed in A1 above] are certainly much
   nicer than the others I have found, and they also appear to be the
   correct projection for POV's map_type 1.
   Robert Sorenson
   zephyr@nerc.com
   
   A3:  For the most part (+95% of maps) you should map them cyllindricly
   onto a sphere, and they look great.
   Simon de Vet
   http://home.istar.ca/~sdevet
   
   A4:  http://maps.jpl.nasa.gov/  (yes, Nasa, the space agency)
   Scott McDonald
   scott@urbandragons.com
   
   Q: I am an "end user" of my own Linux-based system, having recently
   graduated from that "other" OS.  I miss having the font selection I
   have on the other side of my hard drive (my computer has a split
   personality).  I have the new WordPerfect 8 for Linux and the fonts
   are boring!  I would like at least one good blackletter, script, or
   classic type face (Goudy, Caslon,etc.) but I don't know where to look
   or even if they are available for Linux.  Any ideas?  Kinene Barzin
   <KBarzin@compuserve.com>
   
   A:  Linux, actually the X Window System, uses Adobe Type 1 fonts by
   default.  You're probably used to True Type fonts.  You can use both
   on your system, but there are a few tricks to getting things to work.
   
   The easiest method is to find Type 1 versions of the fonts you already
   have.  I have found that many of the font collections on CDs available
   from the local software stores come with both True Type and Type 1
   fonts.  I just copy the Type 1 fonts to a local directory and then
   tell the X server to include this new directory.  Take a look at the
   xset command, in particular the "fp" option.  You'll also want to take
   a look at the Type1Inst script, which will configure the new directory
   so WordPerfect, the Gimp and other tools can use the common Font name
   instead of the longer XLFD, X Logical Font Description (that long name
   with all the dashes in it).
   
   Alternatively, you can use the True Type fonts through the use of a
   Font Server.  A Font server is a separate program that talks to the X
   server and manages fonts for the server.  There are two fonts servers
   available that handle True Type fonts:  xfstt and xfsft (similar
   names, but different programs).  Look on freshmeat for where these can
   be downloaded. Font servers should be able to handle both True Type
   and Type 1 fonts, but I've not tried to do mix them.  Using xset it
   should also be possible to mix local Type 1 fonts with those managed
   using a font server.
   ______________________________________________________________________
   
Reader Mail

   Cecile Hebert-Souche <souche@atp6000.tuwien.ac.at> wrote to the
   Gimp-User mailing list:
   
     I see a lot of posts regarding problems with font installation, I
     had a tip for those who have bought applix : it comes with a
     wonderful fontmanager (applix/axdatas/fontmetrics/gallium/fontfm)
     just start it as root and you can manage your fonts in a very easy
     way, create subdirectories and activate them only on need, test
     fonts before installing etc...
     
   'Muse:  I tried this with my installation of Applix and sure enough,
   its a fine font previewer.  Certainly better than most of the other
   tools I have for previewing fonts.  I didn't try it for managing font
   directories but it does appear to permit this.
   
   whitenoise@fishnet.com wrote:
   
     A Linux freak of mine sent me your URL. Cool graphics (esp. like
     Angel).  I do some designing/putzing as well - mostly Photoshop -
     and I was curious where you get the initial images of the women?
     The graphics I do are ok but I always seem to get stuck finding
     GOOD images of women that I can reproduce without spending money or
     getting sued for infringement. By GOOD pictures of women, I mean
     head shots, eyes, lips, necklines, that type of thing. Stock
     photography is one out (like Digital Stock) but I'd  be curious to
     hear your response.
     
   'Muse:  Angel (and some of the others) were taken from one of Corel's
   Super Ten Packs.  I did a short review of these in my November 1998
   issue of my Graphics Muse colum.  These are royalty free images in
   fairly high resolutions.  Maybe not quite good enough for print media,
   but pretty close.  And certainly less expensive (about $40) than other
   stock image collections.
   
   However, I have the same problem as you - its hard to find good photos
   of faces.  The only thing I can think of other than the stock photo
   collections is to hook up with a decent photographer, perhaps a
   friend, acquaintance or maybe a student at a local university who is
   looking for some way to showcase their work.
   
     Also, where did you get the design pattern for a subject like Angel
     - you know, all those brick like things? It almost looks like you
     selected a range and did a lighting effect to get one side "sunny"
     and the other hidden in shadow. Anyway, what you'd care to share
     I'd appreciate.
     
   'Muse:  Its actually a combination of effects.  I can't remember how I
   started it but I think it was with a brick pattern that I fiddled with
   in the Gimp plug-in called Gimpressionist.  I think I used it as both
   a layer and a layer mask, and I used it multiple times.  This much I
   do remember:  it took quite some time to get that image just right.
   
     If you find time, I'd appreciate your feedback. There aren't too
     many people who's work I go ga-ga over but you stuff rocks pretty
     well.
     
   'Muse:  Thanks.
   
     You ever heard of Peter Lessing? He's a designer/photographer who's
     big on the female form - not like www.gogogirls.com but more
     subdued and flattering. I think you'd like his work.
     
   'Muse:  Send me a URL if you have one.  I do like looking at art work
   online.  It helps motivate me to do more work.  I don't know if you
   like the style, but you might take a look at
   http://www.sirius.com/~fenster/.  I don't know what this style is
   called - maybe Modern Gothic? - but I like it.  She's also done a
   fairly nice job in displaying the gallery.
   
   Another guy I like is Tim Umney.  He was featured in Issue #37 of
   Design Graphics (an Australian graphics design magazine focused on the
   use of computers to do the artwork).  He's a HR Giger fan and his work
   shows it.  Sort of has an X Files feel to it, too.  It took some
   searching, but I found his website at
   http://homepages.tig.com.au/~umney/.
   
     I don't ask much, do I? If what I've requested above isn't enough,
     could  you toss in a million dollars? Just throw that in as an
     attachment.
     
   'Muse:  I use text based mail readers on Linux.  So I don't do
   attachments.  :-)
   
     Corel's a huge outfit but they're not really the market leader in
     anything, maybe that's why I never considered their photos/images
     before. Didn't even know they offered them.
     
   'Muse:  Corel is actually quite well known for their stock photo
   collection.  I learned about them by reading Design Graphics.  You can
   get it at most Barnes and Nobles or Borders bookstores.
   
     I'm surprised some vendor (such as corel) hasn't come out with a
     "women only" photo collection, or something similar. I would think
     there would be a market for such an animal.
     
   'Muse:  There is at least one SuperTen collection from Corel called
   "Women".  You can also order individual shots from their web site of
   stock photos.  There are a lot of photos of womens faces there.  Check
   that issue of the Graphics Muse column that I did the Corel SuperTen
   write up on - I think it was somewhere between August and November of
   last year (but I'm too lazy to go look for it right now).
   
     Anything worth doing always seems to take a long time. Have you
     looked into doing prints or otherwise reselling them?
     
   'Muse:  In the future, perhaps.  I was thinking of making a series of
   images for a calendar, but there are business problems with
   calendars:  low margins, high production costs, etc.  None of the
   images (well, except for the Linux Journal covers I did) are large
   enough to transfer to print media very well.  You need to make very
   large images if you plan on printing them out in high quality gloss
   prints.
   
   Jason Thomas Murray <lather@electrografix.com>
   
     Erm, I have been wanting to make some basic CD jackets.
     
     +----+----+
     |    |    |
     |    |    |
     +----+----+
     
          ^-- the fold.
     
     I was able to convert the size into points fer LaTeX, but I wanna
     use the GIMP. Does anyone know what dimensions I need to use for
     the image? It looks like the new GIMP is going to have inches as an
     option for new image sizes, but not sure I want to wait that long
     for the next stable.
     
   'Muse:  Short answer:  Measure the jacket you want to print on.
   Multiply by the DPI your printer will be printing at and that gives
   you the dimensions for the image you want to make.
   
   Long answer:  Go to my Muse back issues and look for the discussion on
   DPI/LPI.  Its not hard to do the conversion from paper inches to
   pixels if you have the right information, you just have to know what
   information to gather to do the conversion.
   
   http://www.graphics-muse.org/linux.html - click on the "muse" button.
   
   Nancy Mazur wrote to the Gimp-User list:
   
     I've got a drawing with a bit of text here and there, yet I'm not
     glad about the font I've chosen initially, and now I'd like to set
     all of my text into another font.  How can I do this without having
     to delete my previous text, create new text in new font, and
     reposition that new text as the old one used to be?
     
   'Muse:  Well, it actually can be done, but its not easy.
   
     Is there an easy solution to this?  Perhaps I keep on understanding
     Gimp's philosophy in a wrong way.
     
   Christopher Curtis replied:
   
     The GIMP is a bitmap tool.  Once something is "done", it cannot be
     "undone" or "modified" (Undo/Redo excepting).  The text will have
     to be recreated.
     
   'Muse:  This is true if the text has already been merged with other
   layers in the image.  If the image is one you just scanned in, then
   the text is already part of the single layer you scanned in.  In any
   case, the text is a bitmap image, not a vector image.  That means you
   just can't edit the text.  In a bitmapped image, its not really text -
   its just a bunch of pixels that happened to be shaped like letters.
   
     Some things you may want to consider in the future is to put text
     on its own layer so that it does not corrupt existing image data.
     This makes things slower because it uses more memory, but is
     generally a good idea, especially for things like text where lines
     are important.  It is always possible to have layers smaller than
     the image as well, and this may help speed-wise.
     
   'Muse:  This is correct, and part of the solution to saving the old
   text.  What you can do to save the old text is to make a selection of
   that text, float the selection and make that floating layer a new
   layer.  Then add two new layers:  one "patch" layer that fills in the
   background where the old text used to be and another that is the new
   text.  Position the layers so the original is at the bottom, the patch
   is right above it and the new text above that.  The old text layer can
   be anywhere - just make sure its visibility has been turned off (click
   on the eye icon in the layers dialog).
   
   The most difficult part of this technique is creating the patch.  This
   is due to the fact that the original image probably was not a solid
   color so creating the patch requires multiple steps:
    1. create a solid patch that is very near the original image
       background colors.
    2. select a region of background off the original image
    3. paste into the patch
    4. use the clone tool to copy from the pasted region to the edges of
       the patch.
       
   Its tricky, but you can do it if the background was not too complex of
   a design.  The more solid the original background the better.
   
   All of this simply replaces the old text with new text, but both
   "texts" end up as new layers in the Gimp image.  You need to save the
   file as an .xcf format file in order to preserve the layers.  Once you
   "flatten" the layers or "merge visible layers" then the layer
   information is gone and you have a single bitmap image (and if the old
   text layers visibility is turned off then the old text goes away in
   the flattened image).
   
     Another thing to look at is the gDynText plugin.  I don't know the
     URL offhand, but you can find references to it from news.gimp.org
     and from registry.gimp.org.  Simply download and untar the file,
     then type "gimptool --install gdyntext.c" (if that's the source
     file name).  You may want to read the README that comes with it.
     
   'Muse:  You can also, as a short cut, create a text file using vi (or
   some other editor) and then copy/paste from that window into the stock
   Text Tool window.  Pasting this way will get you multi-line text,
   which you can't get if you simply try to type newlines in the Text
   Tool's text input window.  Thats just an additional trick for getting
   multiline text into your image.
   ______________________________________________________________________
   
   [INLINE]
   
Book Review:  Web Design In a Nutshell

   Author:  Jennifer Niederst
   Publisher:  O'Reilly
   Price: $24.95 from SoftPro Books
   
   [LINK] 
   Although I do a fair amount of web design, it has been quite some time
   since I've picked up any references on HTML , JavaScript or general
   web page layout.  When it came time for this months Muse column I
   find, as usual, I couldn't find something new to write up.  It then
   hit me that its been quite some time since I'd done any book reviews.
   
   So off I went to visit SoftPro Books, my favorite local haunt here in
   Denver for technical-oriented texts.  I browsed the shelves for a
   solid hour (it had, after all, been over a year since I'd last visited
   them - I'd been Dallas all that time) for something new on graphics
   but applicable to Linux.  A few items looked promising but nothing
   stood out as particularly motivating.  I then moved over to the
   Web-based texts.  Web Design In A Nutshell by Jennifer Niederst caught
   my eye, partly because of its familiar O'Reilly cover.  Since I had
   never done a review for Web Wonderings I thought this would be a good
   choice.
   
   The first problem I have when doing book reviews is to find one that
   is applicable to Linux users.  Keep in mind that although there are
   plenty of administrative texts for Linux, there are relatively few
   that are specific to Linux in other areas of computing.  I scanned the
   table of contents of Jennifer's text looking to see if there were any
   glaring OS issues.  There is mention of Shockwave and Flash under one
   chapter heading, but other than that the five part, 27 chapter text
   looked fairly platform inspecific.  Thats a good sign for a text on a
   subject that isn't supposed to care much about which platform its
   running on.  A quick chat with the SoftPro crew and I headed home with
   the text.
   
   Once home I did a little deeper research.  First, the 27 chapters are
   broken into 5 parts (not including the appendices):  The Web
   Environment, HTML, Graphics, Mutlimedia and Interactivity, and
   Emerging Technologies.  Each chapter within these parts is fairly
   short and to the point - exactly what you'd expect and need from a
   Nutshell reference.  The opening chapter, Designing for a Variety of
   Web Browsers, is a good lead in.  It talks about the various browsers
   out there, some less well known than others, and includes a very
   helpful table showing feature support for many of the different
   versions of Netscape, IE, and other browers.  This is followed in the
   next chapter with information on designing for various display issues
   and includes graphical descriptions of the maximum and minimum screen
   space available to both Netscape and IE users.  A brief list on making
   sites accessible (such as to speech synthesis software) rounds out
   this chapter.
   
   The next chapter unveiled hidden platform specifics that I'd missed on
   first glance - throughout the text there sprinkled pointers to tools
   that can be used to deal with the current chapters topics.
   Unfortunately, these pointers are decidedly MS and Mac oriented.  The
   third chapter goes beyond this by offering an introduction to
   accessing Unix systems (as if they were so foriegn!).  Despite these
   hidden annoyances, most of the text is still platform inspecific.  So
   you can just skip those short tools sections.
   
   Through out the text there are tables and graphical descriptions mixed
   in with the text.  The tables are especially good.  For example,
   chapter 5 has a table showing relationships between common color names
   (as defined by the X Window System), their RGB and Hex equivalents AND
   the nearest Web safe color.  This last bit is a new twist on other
   tables like this that I've seen and is a nice bonus.  Later in the
   same chapter is a table showing the character codes used for
   displaying various uncommon characters in HTML.
   
   Jennifer uses a nice guide when defining specific HTML tags - she
   shows which of 5 browsers (with their various releases included)
   support that tag.  For example, the horizontal rule tag definition
   opens like this:
   [INLINE]
   In this case all the browsers support the <hr> tag.  If any of them
   didn't, they would be grayed out.  This makes it easy to find which
   tags are browser specific and, therefore, which tags to avoid.
   
   Along with the tables, the graphical descriptions used in many parts
   of the text are very useful.  In one table in chapter 12, the
   appearance of form elements is shown for 4 different browsers (2
   versions each from Netscape and IE).  This visual explanation of the
   differences in implementations is very helpful to anyone who has
   muddled through trying to create forms that are usable to users of any
   browser.
   
   The section on graphics is disappointingly biased to MS and Mac
   platforms.  Although much of the information can be applied to the
   Gimp and other Linux graphics tools, its an excersize for the reader
   to make the translation from the tools Jennifer describes to their
   Linux counterparts.
   
   Unlike the graphics section, the audio and video chapters are less
   biased in the fact that Jennifer talks more about file formats than
   specific applications that use them.  For the most part, Linux has
   tools that support most of the common audio and video formats.  At
   least for playing these files, if not for creating them.  And even
   then, the creation tools are slowly coming to public availability.
   
   Two areas that are covered that I find quite useful are DHTML and
   XML.  I've looked at DHTML a little but have not yet begun to read up
   on XML.  The two short chapters on these subjects are good
   introductions for someone who is familiar with HTML in general.
   
   This nice thing about O'Reilly's Nutshell series is that the are more
   than a straight reference guide but not so boring as a full blown
   collegiate text on the subject.  Jennifer Niederst's text Web Design
   In A Nutshell is a fine example of this series and, despite some of
   the biases toward MS and Mac applications, is well worth the price.
   ______________________________________________________________________
   
   [INLINE]
   
Accessing non-keyboard characters in X

   A question came up recently on the Gimp-User mailing list that I found
   interesting, mostly since I didn't know the answer:  How do you access
   characters that are available in a certain font but do not have a key
   stroke assigned to them?  For example, how do you get to the Copyright
   character if there is no Copyright key?
   
   It turns out you can configure your X server to understand new
   keystrokes for these unattached characters.  The key, if you'll parden
   the pun , is to learn about xmodmap, the program that maps of keys to
   characters for the X server.  This program, which should be available
   on every Linux distribution under /usr/X11R6/bin, allows you to
   specify the keystroke to use to access extended characters in a font.
   
   Let's say you want to map the copyright character to the 2 key with
   the Shift key held down.  Currently, this is mapped to the familiar
   "at" (@) character.  If you make a short text file with the following
   line in it(1):
   
     keysym 2 = 2 copyright
     
   and save the file, say named temp.map, and then run
   
     % xmodmap temp.map
     
   this will map the copyright character to the shifted 2-key. Now fire
   up the GIMP and you will be able to generate the copyright character
   when using a font which supports it.  To get your keyboard back to
   normal, edit the temp.map file:
   
     keysym 2 = 2 at
     
   and again run xmodmap.
   
   Alternatively, you can use a graphical interface to map lots of keys
   all at once.  The xkeycaps tool, written by Jamie Zawinski of
   Mozilla/Netscape fame, gives you a graphical display of your keyboard
   and allows you to map multiple characters to single keys when those
   keys are used with various modifiers (such as CTRL or ALT).
   
                                  [LINK] 
              xkeycaps - click on image for full size version
                                      
   If you make one of your keys be a Mode_switch key, you can add two
   more characters to pretty much every key that produces a character.
   For people that use international characters, but want to use the US
   keyboard layout, you can make a key a Multi_key and do sequences like
   Multi_key-`-e to get an e with a grave accent on it(2).
   
   Xkeycaps has to know about your keyboards physical configuration, but
   fortunately its been around for so long (since about 1991) and so many
   people have provided configurations for so many keyboards that there
   is a good chance your keyboard will be available.  Even if its not,
   you can edit a configuration file in order to add your keyboard to the
   list of keyboards.
   
   I didn't have time to explore this very useful application any further
   than this but plan when time permits.  For the most part I don't have
   a need to access any keys outside of those available from my Dell
   keyboard.  Still, occassionaly it would be nice to have access to
   accent marks, copyright symbols and other symbols for use in both my
   word processor as well as in the Gimp.
   
     This information comes from Alan on the Gimp-User mailing list.
   
     This information comes from Lyle on the Gimp-User mailing list.
   ______________________________________________________________________
   
   [INLINE]
   The following links are just starting points for finding more
   information about computer graphics and multimedia in general for
   Linux systems. If you have some application specific information for
   me, I'll add them to my other pages or you can contact the maintainer
   of some other web site. I'll consider adding other general references
   here, but application or site specific information needs to go into
   one of the following general references and not listed here.
   
   
   Online Magazines and News sources
   C|Net Tech News
   Linux Weekly News
   Slashdot.org
   
   General Web Sites
   Linux Graphics
   Linux Sound/Midi Page
   
   Some of the Mailing Lists and Newsgroups I keep an eye on and where I
   get much of the information in this column
   The Gimp User and Gimp Developer Mailing Lists.
   The IRTC-L discussion list
   comp.graphics.rendering.raytracing
   comp.graphics.rendering.renderman
   comp.graphics.api.opengl
   comp.os.linux.announce
   [INLINE]
   
Future Directions

   Next month:  No Muse since I'll be out of contact for a while.  But
   the Muse will be back in May with, I hope, the first of a two parter
   on the X Windows System and Themes.  Maybe.
   
   Let me know what you'd like to hear about!
   ______________________________________________________________________
   
                                                  1999 Michael J. Hammel
     _________________________________________________________________
   
                     Previous ``Graphics Muse'' Columns
                                      
   Graphics Muse #1, November 1996
   Graphics Muse #2, December 1996
   Graphics Muse #3, January 1997
   Graphics Muse #4, February 1997
   Graphics Muse #5, March 1997
   Graphics Muse #6, April 1997
   Graphics Muse #7, May 1997
   Graphics Muse #8, June 1997
   Graphics Muse #9, July 1997
   Graphics Muse #10, August 1997
   Graphics Muse #11, October 1997
   Graphics Muse #12, December 1997
   Graphics Muse #13, February 1998
   Graphics Muse #14, March 1998
   Graphics Muse #15, April 1998
   Graphics Muse #16, August 1998
   Graphics Muse #17, September 1998
   Graphics Muse #18, October 1998
   Graphics Muse #19, November 1998
   Graphics Muse #20, February 1999
     _________________________________________________________________
   
                    Copyright  1999, Michael J. Hammel
             Published in Issue 38 of Linux Gazette, March 1999
     _________________________________________________________________
   
   [ TABLE OF CONTENTS ] [ FRONT PAGE ] Back Next 
     _________________________________________________________________
   
   [INLINE]
   
    1999 Michael J. Hammel
   indent
   
   Metro Link support for Rendition / Nvidia cards
   Release 0.3 of a clickable imagemap plug-in for the Gimp
   Giram 0.0.6
   tgif 4.0.13
   Sketch 0.5.3
   KuickShow 0.6.3
   wmtune for bttv 1.0
   FREEdraft 0.3.6
   GRASS 5.0 beta
   W3C aims to streamline vector graphics
   Netscape Flash Plugin 0.4.3
   Video Server 0.5.4
   Poor Man's Cam 1.1
   GILT 0.1.0
   Zope 1.10pr1
   gView 0.1.0
   Disclaimer: Before I get too far into this I should note that any of
   the news items I post in this section are just that - news. Either I
   happened to run across them via some mailing list I was on, via some
   Usenet newsgroup, or via email from someone. I'm not necessarily
   endorsing these products (some of which may be commercial), I'm just
   letting you know I'd heard about them in the past month.
   ______________________________________________________________________
   
   Metro Link support for Rendition / Nvidia cards
   Colin Scott McDonald
   
   Metro-X for Linux/x86 has been updated to include new support for
   Nvidia Riva TNT & Riva 128 Chipsets, Rendition V2x00 chipsets, as well
   as improved support for Permedia 2 based cards and Matrox G100/G200
   chipsets. Current owners of Metro-X version 4.3 can download the
   newest patch for free, new customers can purchase Metro-X for $39.99.
   
   For more information on Metro-X and our other products for Linux,
   please visit our website at http://www.metrolink.com
   ______________________________________________________________________
   
   Release 0.3 of the Gimp plug-in for the creation of clickable
   imagemaps
   
   Available from: http://home-2.consunet.nl/~cb007736
   Some highlights from this release:
   
   You can now load a CSIM file that was saved by this plug-in. Files
   saved by other programs may cause problems. I haven't tested this yet.
     * Accelerators in menus
     * Selection operations (move up/down, delete, edit).
     * Warning/error dialog for file operations
     * Map-name in title in main dialog
     * 'target frame name' in area settings.
     * JavaScript (onMouseover, onMouseout) in area settings.
     * Doubleclick on shape pops up area settings dialog.
     * Browse button in URL field in area settings dialog.
     * Fixed size of statusbar fields.
     * Move to front/send to back
     * Write image size in HTML file
     * Deselect all if clicked in area with no object.
     * Implemented statusbar dimension field
     * Added 4 extra handles to rectangular selection.
       
   The program was tested with GTK 1.0.6 and Gimp 1.0.2.  Compatibility
   with other versions is unknown.
   
   Maurits Rijk
   lpeek.mrijk@consunet.nl
   ______________________________________________________________________
   
   Giram 0.0.6
   David Odin
   
   Giram Is Really A Modeller (or at least will be). It is written in
   GTK+ v1.1.x (x>=7) and in an early stage of development. So far it can
   load and save simple Persistance of Vision Scenes and some basic
   modelling tools are already there. For now you can only use plane,
   sphere, box and csg objects, with simple enough textures.
   
   Download: ftp://ftp.minet.net/pub/giram/
   ______________________________________________________________________
   
   tgif 4.0.13
   Bill Cheng
   
   tgif is a vector-based draw tool, with the additional benefit of being
   sort of a web-browser. That is, you can fetch drawings from a web
   server with it, and you can make objects in your picture into hotlinks
   to other parts of the drawing, or to other drawings accessible via
   http.
   
   Changes: Various bugfixes, better scrolling and zooming, new
   visible-grid function in slideshow.
   http://bourbon.cs.umd.edu:8001/tgif/
   ______________________________________________________________________
   
   Sketch 0.5.3
   Bernhard Herzog
   
   Sketch is a drawing program similar to CorelDraw or Adobe Illustrator.
   It is written almost completely in python with some modules written in
   C, thus combining the flexibility and power of Python with the speed
   of C. Advanced features include gradient fills, clip masks, text along
   a path, blend groups, convert text to curves, and more.
   
   Changes: Rectangles may have rounded corners now, an Illustrator
   export filter has been added and bezier curves can be used as guides
   now.
   Download: http://www.online.de/home/sketch/download.html
   Homepage: http://www.online.de/home/sketch/
   ______________________________________________________________________
   
   KuickShow 0.6.3
   
   KuickShow is a fast, comfortable and easy-to-use imagebrowser /-viewer
   for KDE. It is based on Imlib and loads many imageformats pretty fast.
   KuickShow has a nice interface, that allows you to browse large
   amounts of images in a short time. It can zoom, mirror, rotate images,
   adjust brightness, contrast and gamma, auto-resize-to-fit and can do a
   slideshow, of course.
   
   Changes: Bugfixes, KDE 1.1 updates, stability improvements, and a few
   more filebrowser features.
   Download:  http://www.millenniumx.de/packages/kuickshow-0.6.3.tar.gz
   Homepage: http://www.millenniumx.de
   ______________________________________________________________________
   
   wmtune for bttv 1.0
   
   wmtune-bttv is a radio tuner window maker applet for all TV/radio
   cards supported by the Linux bttv kernel driver. It includes presets,
   a timer for automatic switch on/off and mixer support. Supports wmtune
   and kradio config files
   
   Changes: This is the initial version.
   Download: http://home.pages.de/~fionn/archive/wmtune-1.0_bttv.tar.bz2
   ______________________________________________________________________
   
   FREEdraft 0.3.6
   
   FREEdraft is a 2D mechanical cad project. It is being developed using
   Linux FREEdraft is likely to work on most any other Unix/X system.
   
   Changes: Updated for compatibility with current library versions, bug
   fixes, and creeping featureism.
   Homepage: http://pw2.netcom.com/~iamcliff/FREEdraft.html
   ______________________________________________________________________
   
   GRASS 5.0 beta
   
   GRASS (Geographic Resources Analysis Support System) is a
   public-domain raster-based GIS, vector GIS, image processing system,
   graphics production system, and spatial modeling system.
   
   Changes: GRASS 5.0beta represents the first major change in GRASS
   functionality in several years, with the most notable change being
   support for floating point and null values. GRASS also now has a new
   and much easier to use windows interface based on Tcl/Tk.
   Homepage: http://www.baylor.edu/~grass/
   ______________________________________________________________________
   
   W3C aims to streamline vector graphics
   By Paul Festa
   Staff Writer, CNET News.com
   
   C|Net report on work being done at the World Wide Web Consortium (W3C)
   related to vector graphic format proposals currently under
   consideration by that group.
   
   http://news.com/News/Item/0,4,32346,00.html
   ______________________________________________________________________
   
   Netscape Flash Plugin 0.4.3
   Olivier Debon
   
   The Flash Plugin is a Netscape plugin that allows to view Flash files.
   Many commercial sites use this format to make their site up. The Flash
   object also allows to navigate through a site, therefore, without the
   right plugin it was impossible to go further the "Get Shockwave" logo
   while running Netscape under Linux.
   Homepage:
   http://www.geocities.com/TimesSquare/Labyrinth/5084/flash.html
   ______________________________________________________________________
   
   Video Server 0.5.4
   Andrew Shuvalov
   
   Stony Brook Video Server is the distributed video server application
   that provides indexing, searching and video streaming in a convenient
   way to clients over the network. The client may browse the complete
   list of movies, search closed captions and play selected video from
   the beginning or from the point matching search query.
   Homepage:
   http://www.ecsl.cs.sunysb.edu/~andrew/VideoServer/videoserver/index/bo
   ok1.html
   ______________________________________________________________________
   
   Poor Man's Cam 1.1
   
   PMCam is a program that allows you to set up a webcam on a remote site
   through FTP and perl. It uses qcam to grab the image, mogrify to do
   the conversion to JPEG, and Net::FTP in perl to FTP the files to the
   server. The program's RC file should be configurable, though to allow
   any camera or converison programs.
   Homepage:  http://ic.net/~craig/pmcam/
   ______________________________________________________________________
   
   GILT 0.1.0
   
   GILT is a vector drawing program. It merges GIMP and openGL to be both
   usable and dependable. It is currently in a pre alpha state, this
   means we are looking for programmers. Current features multiple views
   and documents in one session layers and guides-layers script and
   plugin-mechanisms planned and partially implemented transparent object
   possible (due to openGL) Planed features loading of postscript object
   database
   Homepage:  http://www.vicksburg.com/~phoenix/main.html
   ______________________________________________________________________
   
   Zope 1.10pr1
   
   Zope is a free, Open Source web application platform used for building
   high-performance, dynamic web sites. It contains a powerful and simple
   scripting object model and high-performance, integrated object
   database.
   Homepage:  http://www.zope.org
   ______________________________________________________________________
   
   gView 0.1.0
   Bruce Smith
   
   gView is a GTK/ImLib image viewer with an interface similar to ACDSee.
   Initial release.
   http://www.geocities.com/ResearchTriangle/Facilty/1468/sg/
   
   indent
   
    1999 by Michael J. Hammel
   
    "Linux Gazette...making Linux just a little more fun!"
     _________________________________________________________________
   
                      Linux Dialin Server Setup Guide
                                      
                               By Josh Gentry
     _________________________________________________________________
   
   Abstract
   v 1.3, 13 February 1999
   This document is a step-by-step guide to setting up a Linux dialin
   server which allows SLIP and PPP connections over a phone line.
   
   Copyright 1999 Josh Gentry
   I encourage redistribution of this document, non-commercial and
   commercial.  I would like to be notified of redistribution.  You are
   NOT permitted to alter the contents of this document, though I do not
   care about changes in presentation.
   
   Acknowledgments
   Much of the information in this document was originally gleaned from
   the following LDP HOWTOs: Linux Serial HOWTO
   Linux Modem HOWTO
   Linux Kernel HOWTO
   Linux PPP HOWTO
   
   A great deal of information was found in Gert Doering's online
   documentation for mgetty+sendfax. Additionally, the following online
   documents were valuable in the configuration of AutoPPP in mgetty:
   http://members.bellatlantic.net/~mrdennis/mgetty.html, Mick Dennis
   http://oh3tr.ele.tut.fi/~oh3fg/ppp/ppps.html, Kalevi Hautaniemi
   
   Much information on PAP was learned from Olaf Kirch's Linux Network
   Administrators' Guide and the S.u.S.E. Support Data Base
   (http://wi-pc44.fh-konstanz.de/support-db/sdb_e/kfr_17.html).
   
   The majority of the information in this document was originally
   gathered for, or derived from the process of setting up a Linux RedHat
   5.1 dialin server for Mr. James Hart. He teaches at the
   Technical/Vocational Institute in Albuquerque, NM. Tony Lucero was my
   partner on that project. Their help and guidance were invaluable.
   
   Finally, a big thank you to all those who have aided in the
   development of the Linux kernel and Linux applications. This document
   is my small contribution to their effort.
   
   Disclaimer
   This document carries no explicit or implied warranty. Nor is there
   any guarantee that the information contained in this document is
   accurate. It is offered in the hopes of helping others, but you use it
   at your own risk. The author will not be liable for any damages that
   occur as a result of using this document.
   
   1 Introduction
   
   A dialin server is a host equipped with a modem and phone line, that
   allows other hosts with modems and phone lines to call and connect to
   it. There are several reasons a person might want to do this; to use
   the resources on the dialin server, or, if the dialin server is on a
   network, to use the dialin server to access the network. Further, if
   this LAN is connected to the Internet, the client may be able to
   access the Internet via the dialin server.
   
   1.1 Raison d'tre
   
   The majority of information needed to setup a Linux dialin server is
   available in LDP HOWTOs. When I used these documents to setup such a
   server, however, the fragmentary nature of the information was a major
   obstacle. This document consolidates much of the needed information
   and presents it as a step-by-step guide.
   
   1.2 This Document as Guide
   
   Setting up a dialin server is a common project, but not a simple one.
   This document attempts to rigorously set forth a step-by-step guide to
   the process. It is likely, however, that you will need to reference
   additional documents. The LDP HOWTOs listed above should be considered
   invaluable companions to this document, and should be consulted in the
   order listed above. Furthermore, do not neglect the documentation
   included with your getty and PPP packages.
   
   1.3 Clients and Servers
   
   The protocols used to connect two hosts via a phone line are
   technically peer-to-peer protocols; there is no real difference
   between the machine that dials and the machine that is dialed into.
   Conceptually, however, it is easier to think in client/server terms.
   "When you dial into a site to establish a PPP connection, you are a
   client. The machine to which you connect is the server." (Linux PPP
   HOWTO, Hart) I will use this convention throughout the document.
       Setting up a dialin server is the process of setting up a machine
   to answer the phone, participate in the setup of a connection with the
   client, and authenticate the client.
   
   1.4 Differences Between Linux Distributions
   
   My experience is with RedHat Linux 5.1. I believe most of the
   information in this document will apply to all distributions. Where I
   am aware of or suspect differences between distributions, I will note
   it in the text.
   
   1.5 Software Packages Covered
   
   Linux kernel v2.0.34--http://sunsite.unc.edu/LDP/HOWTO/INFO-SHEET.html
   mgetty+sendfax-http://www.leo.org/~doering/mgetty
   PPP-2.3.3-http://sunsite.unc.edu/pub/Linux/system/network/serial/ppp/!
   INDEX
   
   2 Modem Installation
   
   For a host to be a dialin server, it must be physically possible to
   dial into it. This requires that the host have at least one modem and
   phone line. Modems are serial devices, therefor it is highly
   recommended that you read the Linux Serial HOWTO, as well as the Linux
   Modem HOWTO.
   
   2.1 Modem Type
   
   Plug-and -Play modems are not well supported by Linux. This means that
   you want a jumperable modem, or an external modem. Start by asking
   your vendor what brand they recommend.
   
   2.2 Ports
   
   Serial ports, like all I/O ports, have an address.  By default, Linux
   initializes four serial devices.  Some may be familiar with these
   ports as Microsoft refers to them, COM 1-4.  In Linux these ports are
   referred to as ttyS0-ttyS3.  For example, the port known to Microsoft
   as COM 1, would be known to Linux as ttyS0.
       Note that if you use use a port address other than these four, you
   will have to initialize that port with "setserial."  See the
   "setserial" man page.
       External modems plug into external serial ports (RS-232 ports) on
   your PC.  These ports are automatically assigned an address by Linux.
       Internal modems plug into the internal PCI or ISA slots of your
   PC.  An internal modem is actually a modem and a serial port.  It
   carries its own, and it is the modem's serial port that you plug into
   the internal slot.  For these modems, you set the port address on the
   modem.  This is why you want a jumperable modem.  You use the jumpers
   to manually set address and IRQ.  The prepriatorial modem
   documentation should explain how to set the jumpers for port address
   and IRQ.
       Note, if your PC has two external serial (RS-232) ports, as most
   PC's do, the Linux Modem HOW-TO recommends setting your internal modem
   address to ttyS2 or higher.
   
   3 Kernel Support
   
   This is the part of the process most likely to scare those new to
   Linux. It scared me. Turns out not to be as difficult as you think,
   and if you do make a mistake, you can usually just recompile your
   kernel again. You should now read the Linux Kernel HOWTO.
          There is an alternative to compiling the PPP driver into the
   kernel.  You can install the driver as a loadable module.  The
   advantages of this are that your kernel is smaller, and it is not
   necessary to recompile.  The PPP driver is linked to the kernel and
   loaded into memory space only when it is needed.  I believe the
   argument for compiling the driver into the kernel is that PPP does
   execute faster if it is compiled into the kernel.
       You can link the loadable module to the kernel by recompiling the
   kernel as described below, but as Matt Kressel has pointed out to me,
   if you have the "insmod" command installed on your system, it is not
   neccessary to recompile.  Issue the command "insmod ppp" to install
   the PPP driver as a loadable module.  I found that I had to "insmod
   slhc" before I could successfully install PPP with "insmod ppp".  I am
   not sure why, but "insmod ppp" would not work without the slhc module.
       The command "lsmod" lists the loadable modules currently installed
   on the system.  There is also a command for removing modules.  If
   these commands are installed on your system, then you should also have
   the man pages.  Do a "man insmod" for more information.
   
   3.1 Kernel and Source Code
   
   The kernel is a binary, an executable program. Developers do not write
   the kernel as an executable, they write code that is fed into a
   compiler, and the compiler produces the executable from that source
   code.
       With Linux, you have the source code that is used to produce the
   kernel executable. This means that you can customize your kernel to
   include only the capabilities that you need, creating a leaner, meaner
   kernel. Because of this, you can not assume that a kernel includes
   support for specialized tasks, such as those required for networking.
   You will have to check and see, and if your kernel does not contain
   the necessary support, you will have to recompile your kernel.
   
   3.2 Recompiling the Kernel
   
   To compile the kernel, you create a configuration file. You can check
   your current configuration file to see if needed capabilities are
   already compiled into your kernel.
   Most dialin servers will be hosts on a LAN. This document assumes that
   the host is already configured as part of the LAN. If this is not the
   case, you should reference other documents at the LDP before
   continuing, such as the Linux Network Administrators' Guide.
       I prefer to use xconfig. It is a graphical tool for viewing and
   modifying the kernel configuration file. It requires that you have
   X-windows installed and running, and that you have Tk installed.
   In xconfig you will find the options for SLIP and PPP support in the
   category "Network devices." These have to be supported for a SLIP and
   PPP dialin server.  If the server will provide access to a network,
   the kernel must include support for IP forwarding. In xconfig this is
   found in the category "Network options."
       If you must recompile the kernel, it is highly recommended that
   you read the Linux Kernel HOWTO. These are the basic steps:
   
   1.  Make a copy of your present kernel in case of emergency
   2.  cd /usr/src/linux-(kernel version number)
   3.  Issue the command "make config". If you are running X-windows you
   can try "make xconfig" to use a point-and-click interface for this
   process.
   4.  Say "yes" to all the proper networking options: SLIP, PPP, IP
   forwarding, etc (your LAN network configuration should already be
   configured).
   5.  Save and exit
   6.  Issue the command "make dep"
   7.  Issue the command "make clean"
   8.  Issue the command "make zImage"
   9.  cd /usr/src/linux-(kernel version number)/arch/i386/boot
   10. cp zImage /vmlinuz (or wherever your kernel resides)
   11. Issue the command "lilo"
   
   That should do it.  The Linux Kernel HOWTO states that you should be
   able to issue the command "make zlilo" after you have made the zImage,
   and that making zlilo will copy and install the new kernel for you.
   This did not work on my system, however.
   
   4 gettys
   
   You will need a getty that can handle modem communications. Once
   started, usually from inittab, the getty runs as a background process.
   Your modem getty will be idle until the modem receives a call, at
   which point it will "answer" the phone and negotiate the specifics of
   modem-to-modem communication with the client. There are several gettys
   that can be used for this task.
   This document covers the usage of mgetty. You can acquire the
   mgetty+sendfax package and official documentation at Gert Doering's
   website, http://www.leo.org/~doering/mgetty. It was included with
   RedHat 5.1 and lived in /sbin/mgetty and /etc/mgetty+sendfax.
       Note that anytime you see something like "/sbin/mgetty" that it is
   simply the path to the file. Files may be located in different
   locations in the directory structure on different machines, and
   possibly with different distributions. Therefor, the path to the file
   would be different. You will need to verify the location of the
   necessary files on your system.
       There are many options for mgetty that you can edit to your
   desired configuration, most importantly in
   /etc/mgetty+sendfax/mgetty.config. Refer to the mgetty documentation
   if you need to make changes to the default settings. The default
   settings worked for us. If you wish to enable AutoPPP, you will need
   to edit /etc/mgetty+sendfax/login.config. Detailed instructions on
   that task appear later in this section.
       To start mgetty, edit /etc/inittab. Here is another point where
   the serial and modem HOWTOs are helpful. You must tell mgetty which
   serial port to monitor. In Linux these ports are numbered 0-3, and
   named ttyS* for dialin. For a modem we installed on the third internal
   port, we added this line to /etc/inittab:
   
   S2:2345:respawn:/sbin/mgetty ttyS2 -D /dev/ttyS2
   
   The option "-D" tells mgetty to expect data only, no faxes. After this
   use the command "kill -1 1" to force initd to re-read inittab. This
   will cause mgetty to be started.
       Note that if you use a multi-port serial board, those ports might
   be named differently than the four ports Linux initializes by default.
   In his excellent document on mgetty and AutoPPP, Mick Dennis reports
   naming the ports on his Cyclade Cyclom 16YeP as /dev/ttyC*.
       Using the default settings, mgetty negotiates a SLIP (Serial Line
   Internet Protocol) connection and allows authentication via
   /etc/passwd. This is a functional system that allows a user to login
   to a shell account. If desired, a mechanism can be provided to allow
   users to start pppd after logging in over there SLIP connection.
   First, make sure that all users have permission to execute pppd by
   issuing the command:
   
   chmod u+s /usr/sbin/pppd
   
   Next, add this line to /etc/bashrc:
   
   alias ppp="exec /usr/sbin/pppd -detach"
   
   This way, after the user has logged in over the SLIP connection, they
   can start pppd by typing "ppp." This procedure is taken from Robert
   Hart's Linux PPP HOWTO.
   Another option is to create a PPP account. The entry in /etc/passwd
   might look like this:
   
   ppp:x:351:230:pppclient:/home/ppp:/usr/sbin/pppd
   
   When a user connects they simply login as "ppp." Once they provide the
   password, pppd starts automatically.
       For Microsoft clients to work with this setup, the client must be
   configured to provide a terminal screen after connection. This is not
   a default setting. These are the steps to do it in Windows 95:
   
   1. Click on My Computer
   2. Click on Dial-Up Networking
   3. Right-click on the icon for the connection
   4. Click on Properties
   5. Click on Configure
   6. Click on Options
   7. Click box next to "Bring up terminal window after dialing"
   
   4.1 AutoPPP and mgetty
   
   Most Windows users will not like the requirement to use a login screen
   after connecting to the server. It is possible for the system
   administrator to remove this annoying extra step by using mgetty's
   ability to start pppd upon initiating a connection. To do this, you
   enable AutoPPP.
   
   4.2 Compiling mgetty
   
   Note:  I have been told by several people, that when they chose to
   install mgetty from their Redhat 5.2 distribution mgetty was
   automatically compiled to include AutoPPP.
       For AutoPPP to function, you must edit the makefile before
   compiling. On or near line 110 you will need this:
   
   CFLAGS=-02 -Wall -pipe -DAUTO_PPP
   
   After that edit, compile mgetty according to the mgetty documentation
   instructions.
   Next, you edit /etc/mgetty+sendfax/login.config to look like this
   around line 50:
   
   /AutoPPP/ - - /usr/sbin/pppd file /etc/ppp/options.server
   
   Once you have completed this configuration, mgetty will automatically
   start pppd when it receives the LCP configure request. (For more on
   LCP read the pppd man page.) The "file" option tells pppd to read the
   file /etc/ppp/options.server instead of the default /etc/ppp/options.
   Since pppd uses /etc/ppp/options for acting as a client or server by
   default (remember, it is technically peer-to-peer), using this option
   helps keep the desired options for acting as client or server
   separate.
       Assuming that you have edited /etc/mgetty+sendfax/mgetty.config to
   your preferences, you are done.  Note that in every instance that you
   change the options for a process, the process will have to be
   restarted before the new options can take affect.
       Note:  If you wish to be able to dial out with a modem that is
   being monitored by mgetty, you will need to pay attention to what
   device your communications program uses.  See
   http://www.leo.org/~doering/mgetty/mgetty_10.html#SEC10
   
   5 PPP (Point-to-Point Protocol)
   
   The Point-to-Point Protocol is the most popular protocol used for
   connecting hosts by phone line.
   
   5.1 Compiling pppd
   
   Adhere to the PPP package documentation. If you will be using shadow
   passwords, you will need to use the following command:
   
   make HAS_SHADOW=1
   
   To use the MS-DNS option for Windows compatibility, and shadow, use:
   
   make USE_MS_DNS=1 HAS_SHADOW=1
   
   For more on this, see http://oh3tr.ele.tut.fi/~oh3fg/ppp/ppps.html.
   
   5.2 Configuring pppd
   
   PPP is configured by editing the options files read by pppd in
   /etc/ppp. Remember that in this configuration pppd will read
   /etc/ppp/options.server when it is started by mgetty. The most
   complete list of pppd options I have found is in the pppd man page. If
   you do not use PAP or CHAP, your file /etc/ppp/options.server might
   look like this:
   
   -detach
   asyncmap 0
   modem
   crtscts
   lock
   proxyarp
   ms-dns aa.bb.cc.dd
   ms-dns ee.ff.gg.hh
   
   -detach-do not fork to become a background process
   asyncmap 0-to allow pppd to work over a rlogin/telnet connection
   modem-use the modem control lines
   crtscts-use hardware flow control
   lock-specifies that pppd use the UUCP-style lock on the serial device
   proxyarp-adds an entry into the ARP table with the IP address of the
   client and the IP address of the NIC
   ms-dns-specifies the address of the DNS server to be used by Microsoft
   clients (As far as I know, there is now equivelent option for
   non-Microsoft clients.  A Linux client must have the address of the
   DNS in /etc/hosts.)
   
   5.3 Configuring + PAP
   
   PAP (Password Authentication Protocol) is one of the two protocols
   that PPP uses to authenticate peers. The other is CHAP (Challenge
   Handshake Authentication Protocol). CHAP is a more secure protocol,
   but is not as widely supported as PAP. Thus, this document addresses
   the use of PAP, only. For more information on both PAP and CHAP, see
   Olaf Kirch's Linux Network Administrators' Guide.
       Since PPP is technically a peer-to-peer protocol, PAP allows
   two-way authentication. This means that not only the "server" can
   request the "client" to authenticate itself, but the reverse is also
   true. The "client" can require the "server" to authenticate itself. In
   practice, this in not often done. Most PPP servers are not configured
   to authenticate themselves to clients.
       It is not difficult to configure your PPP server to use PAP. To
   the /etc/ppp/options.server file above, simply add the following
   entry:
   
   require-pap
   refuse-chap
   
   With this configuration, pppd will check client login names and
   passwords against the file /etc/ppp/pap-secrets. The client will be
   granted access only if it matches an entry I /etc/ppp/pap-secrets.
   Example:
   
   #user     server      secret        addrs
   jdoe           *        password       *
   
   If the "server" and "addrs" fields are filled in, then the client will
   only be granted access if the login name and password are sent from
   the designated server and IP address/fully qualified domain name.
   
   5.4 PAP using /etc/password
   
   If you do not wish to create an entry in /etc/ppp/pap-secrets for each
   client allowed PPP access, you can instruct pppd to check login names
   and passwords against /etc/passwd instead of /etc/ppp/pap-secrets. Add
   the option "login" to /etc/ppp/options.server. For this configuration,
   your /etc/ppp/options.server file will look like this:
   
   -detach
   asyncmap 0
   modem
   crtscts
   lock
   require-pap
   refuse-chap
   login
   proxyarp
   ms-dns aa.bb.cc.dd
   ms-dns ee.ff.gg.hh
   
   If the "login" option is used, the file /etc/ppp/pap-secrets need not
   exist. In fact, it might interfere with the proper functioning of PAP.
   You can remove the file, or it can contain the following line:
   
   * * ""
   
   The advantage of maintaining /etc/ppp/pap-secrets with this line is
   that it leaves you the option of denying PPP access to individual
   accounts that have entries in /etc/passwd. To do so, below the above
   line, enter the following line:
   
   username * -
   
   where "username" is the username of the account you wish to deny PPP
   access. Example:
   
   #user      server       secret        addrs
      *            *              ""               *
   jdoe          *              -                *
   
   5.5 IP Address Allocation with PPP
   
   For PPP to work, the client must have an IP address. Most dialin
   clients will not have their own IP address, so it is necessary to
   assign an IP address to the serial port that the client connects
   through.
   Earlier, we created a PPP options file that specifies the
   configuration of PPP connections the server will provide,
   /etc/ppp/options.server. It is also possible to create an options file
   that is specific to connections made through a specified serial port.
   For example, to create a file for ttyS2, your create the file
   /etc/ppp/options.ttyS2.
       One of the options that can be defined in such a file is IP
   address assigned to the port for PPP connections. This is the format
   for this option:
   
   ii.jj.kk.ll:mm.nn.oo.pp
   
   The first IP address, from left to right, is the IP address of the
   server. The second IP address is the IP address assigned to the serial
   port for PPP connections.
       Note, it is extremely important that you verify that the IP
   address you assign to the serial port is a valid IP address on your
   subnet, and that it is not assigned to any other device on the
   network.
   
   6 Congratulations
   
   You are done.
   
   Feed back on this document is appreciated:  email  jgentry@swcp.com
     _________________________________________________________________
   
                       Copyright  1999, Josh Gentry
             Published in Issue 38 of Linux Gazette, March 1999
     _________________________________________________________________
   
   [ TABLE OF CONTENTS ] [ FRONT PAGE ] Back Next 
     _________________________________________________________________
   
    "Linux Gazette...making Linux just a little more fun!"
     _________________________________________________________________
   
          Linux Installation Primer, Part Seven Version 1999.02.14
                                      
                               By Ron Jenkins
     _________________________________________________________________
   
   Copyright  1998, 1999 by Ron Jenkins. This work is provided on an "as
   is" basis. The author provides no warranty whatsoever, either express
   or implied, regarding the work, including warranties with respect to
   its merchantability or fitness for any particular purpose.
   
   The author welcomes corrections and suggestions. He can be reached by
   electronic mail at rjenkins@qni.com, or at his personal homepage:
   http://www.qni.com/~rjenkins/.
   
   Corrections, as well as updated versions of all of the author's works
   may be found at the URL listed above.
   
   NOTE: As you can see, I am moving to a new ISP. Please bear with me as
   I get everything in working order. The e-mail address is functional;
   the web site is semi operational, I will add to it as I get the time.
   
   SPECIAL NOTE: Due to the quantity of correspondence I receive, if you
   are submitting a question or request for problem resolution, please
   see my homepage listed above for suggestions on information to
   provide.
   
   Operating Systems Covered/Supported:
   Slackware version 3.6
   RedHat version 5.1
   Windows NT Server version 4.0
   Windows NT Workstation version 4.0
   
   I only test my columns on the operating systems specified. I don?t
   have access to a MAC, I don?t use Windows 95, and have no plans to use
   Windows 98. If someone would care to provide equivalent instructions
   for any of the above operating systems, I will be happy to include
   them in my documents.
   
   Part Seven: Internet Gateway performance tuning and tips
   In a continuation of last month's column, we will look at some ideas,
   tips and tricks to improve the performance of our Internet Gateway, as
   well as some advanced configuration options.
   
   As with each installment of this series, there will be some operations
   required by each distribution that may or may not be different in
   another. I will diverge from the generalized information when
   necessary, as always.
   
   In this installment, I will cover the following topics:
     * Overview of Performance tuning and enhancement.
     * Techniques for performance enhancement.
     * WAN connection upgrades.
     * Hardware upgrades.
     * Software upgrades.
     * Caching options.
     * General tips and tricks.
     * References.
     * Resources for further information.
     * About the Author.
       
   Assumptions applicable to this column:
   It is assumed you have read my previous installments in this series,
   if not, I suggest you review them first if you find any of the terms
   or concepts here confusing.
   
   Also, throughout the article, I shall use the term WAN connection and
   PPP connection interchangeably.
   
   Overview of Performance tuning and enhancement:
   Performance enhancement, like any other project, requires an analysis
   of the cost of the enhancement versus the amount of improvement.
   
   What we will endeavor to accomplish here is to improve the performance
   of our gateway, using a variety of techniques, while keeping the
   additional cost as low as possible.
   
   For any method suggested here, there will be a trade off. Some of the
   following suggestions may or may not be applicable to your own unique
   situation.
   
   Some of these techniques will provide a real, measurable, and
   noticeable improvement, while others will only become apparent through
   long term analysis, or examination of various statistical reporting
   methods available to you. The ability to accurately measure the
   performance of your gateway machine is essential to effective tuning.
   
   As we go along and become familiar with each technique, I will also
   introduce appropriate methods of measuring these techniques, and
   therefore accurately measure the amount or percentage of improvement.
   
   Techniques for performance enhancement:
   Although some of the ideas and techniques discussed here will be
   applicable to other types of machines, such as file servers and
   workstations, the primary focus of this column will be geared toward
   the specific enhancement of gateway machines.
   
   In the context of this assumption, the following techniques, in
   descending order of importance will provide the most improvement in
   the operation and speed of the gateway machine:
    1. WAN connection upgrades.
    2. Hardware upgrades.
    3. Software upgrades.
    4. Caching options.
       
   Finally, I will discuss some general tips and tricks for measuring the
   performance of your gateway, as well as some ideas for areas of
   improvement.
   
   WAN connection upgrades:
   The single most effective method for increasing the performance of
   your Internet Gateway is to upgrade the speed of your connection to
   the Internet.
   
   This can take the form of a dedicated or dialup connection in most
   cases. Some of the options you may want to consider include:
     * Many ISP's offer "dual modem" service. This is a technique whereby
       the two individual modem connections are "bound" together using
       multi-link PPP. The performance enhancement is slightly less than
       the sum of the two individual connections.
     * 56K modems, provided they are not software modems, more commonly
       known as "WinModems," may be an option. I have been told by one of
       my readers that the external models work well, and if the internal
       model is NOT a soft modem as described above, it should work as
       well. (Thanks go to Gerald McGlew for setting me straight on this
       information.)
     * Presently, an Integrated Services Digital Network (ISDN) line,
       commonly known as a Basic Rate Interface, or BRI, is one of the
       best ways to remarkably improve the performance of your Gateway
       machine. In my area, an ISDN line, with unlimited usage, costs
       about $80.00 per month. The cost for a dial up ISDN connection in
       my area is about $50.00 total cost (line charge + ISP access)
       ~$130.00.
     * Another possibility would be a cable modem, although I know very
       little about these devices, as they are not available in my area,
       so I do not know how cost effective they are.
     * In some areas of the country, Digital Satellite Network systems
       are available. These work well, as long as you have a clear path
       to the satellite. However, the satellite connection is only
       unidirectional, meaning that it only moves FROM the remote station
       TO your PC. This is called the downlink. A separate method of
       access is required for the uplink, or your requests TO the remote
       network. This can be anything from a simple modem to a dedicated
       connection.
       
   Measuring the performance of your WAN connection -
   There are several programs and utilities that can help you here, one
   that I use quite a bit is a program called netwatch, which is handy
   for general monitoring of your network and the speed of your router
   (your Internet gateway.) This utility is not provided as part of the
   normal distribution of RedHat, but is included with Slackware 3.6.
   There is an RPM of an older version available at any of the RedHat
   mirror sites, in the /powertools/ directory.
   
   For checking the real time condition of your WAN connection, as well
   as the effectiveness of any compression options you may be using,
   pppstats is very helpful. This utility should be available on both
   Slackware and RedHat machines.
   
   Hardware upgrades:
   To improve the performance of your local network access, RAM and disk
   subsystems are king. Provided your motherboard has sufficient cache to
   handle it, put as much RAM as you can afford in your server and
   gateway machines.
   
   Another crucial area is the disk subsystem. Although there have been
   significant advances in ATA technology, such as EIDE, UDMA, and so on,
   the standard for heavy, continuous use and high performance is still
   the Small Computer Systems Interface, or SCSI device.
   
   It is important to note that IDE drives are SEQUENTIAL access devices,
   meaning each request for information must "stand in line" and wait for
   it's turn. SCSI drives are CONCURRENT access devices, meaning multiple
   requests can be serviced simultaneously.
   
   While the price differential between IDE devices and comparable SCSI
   devices was prohibitive in the past, at the preset time, the
   difference is negligible. Consider Ultra (20MBS) drives a minimum,
   Ultra Wide (40MBS) drives better.
   
   A SCSI subsystem is comprised of four basic parts
     * the host adapter, or card that is inserted in your PC and
       coordinates all communication between the SCSI devices and your
       computer.
     * The SCSI bus, upon which all the data interchange takes place.
       Usually a 40 or 50 pin cable, depending on the speed of the host.
     * The SCSI devices, which may include disks, scanners, tape drives,
       and many other devices. The number of devices allowed on a given
       bus depends on the speed of the host as well, but is not limited
       to four devices, like a comparable IDE bus.
     * The termination devices. Like the bus network we discussed in
       December, a SCSI bus requires termination at both ends, just like
       a 10BASE2 coaxial network. The termination can be active or
       passive, and may or may not require an additional device to be
       attached, especially on external SCSI devices.
       
   You may notice I do not mention U2W devices here. The support for
   these devices, as far as I know, is still in the development stage, so
   I would wait awhile on these devices. Besides, they are waaaaay
   expensive!
   
   NOTE: Unless you are planning on implementing some of the caching
   techniques described below, a disk subsystem upgrade will not provide
   a noticeable performance enhancement.
   
   Simple routing and masquerading are done in the kernel, on the fly,
   causing minimal interaction with the disk.
   
   However, if the machine also doubles as a file server, web server, or
   something other than just an Internet Gateway, then it is worth
   considering.
   
   Software upgrades:
   In the area of software enhancements, here are some options to
   consider:
   
   PPP Software - You may want to consider upgrading your PPP software if
   your distribution does not contain PPP version 2.3.0 or greater.  This
   version contains support for the demand dialing option, thus
   eliminating the need for diald or any such extra stuff.
   
   It also supports a more robust scripting method based on ppp-xx
   scripts, usually prepared at installation time and requiring only some
   editing to make them functional. These files are usually located in
   /etc/ppp and/or /usr/sbin.
   
   Data Compression - A comprehensive explanation of Data compression
   theory is beyond the scope of this article, so briefly, here is an
   overview of compression methods and how they can improve the apparent
   speed with which traffic flows through your WAN interface.
   
   Van Jacobson (VJ) Compression - This is enabled by default in most
   Linux distributions of the PPP daemon.
   
   BSD Compression (bsdcomp) - Another compression scheme, usually
   disabled by default. You will be required to load a module, or
   re-compile the kernel to include support for this.
   
   Deflate Compression - Yet another compression scheme, also disabled by
   default.
   
   Any one of, and/or combination of these compression schemes may or may
   not improve the apparent performance of your PPP connection. To
   enable, disable, or adjust the parameters for any or all of these
   compression schemes, see the pppd man pages. Experiment with them,
   using netwatch to measure any speed changes, and pppstats to measure
   the amount of compression.
   
   BIND - The Berkley Internet Name Daemon (BIND), commonly called named,
   is the service responsible for hostname to IP address translation on
   the Internet, most often referred to as Domain Name Service, or DNS**.
   
   While it is impractical to run your own full blown DNS server (unless
   of course you have your own domain, and a block of assigned IP's,) It
   can be helpful to run what is known as a "caching only" nameserver.
   
   Whenever you request an object on the Internet, whether it be a web
   page, ftp site, news server, or whatever, you usually issue the
   request in the form of a hostname/path_to_object/ format. When your
   request goes out, it is handed off to the DNS server specified in your
   resolv.conf file first.
   
   Since the DNS system is hierarchical, like an upside down pyramid,
   with the point on the bottom being the DNS machine in your resolv.conf
   file, your DNS machine only knows about machines local to it's own
   network*, in this case, your ISP's. This information is contained in
   what are known as "zone" files, which are simply ASCII text files that
   list information about a "zone" or domain in a standardized format.
   
   If the request cannot be resolved by this machine, it then consults
   the next higher machine in the pyramid, as so on until ultimately, if
   necessary, the query reaches the "root.servers" responsible for all
   the *.com, *.edu, *.net domains and so on.
   
   Finally, at some point, after much communication back and forth across
   the WAN connection, the hostname you requested will be converted into
   an IP address, and sent back to your computer.
   
   Clearly, there's a significant amount of communication going on in the
   background to let us meat based computing devices do the "dub dub dub"
   deal.
   
   What a caching nameserver does simply put, is to "remember" these name
   to IP resolutions for a period of time, so the next time a particular
   object is requested, the nameserver can service the request locally,
   without having to go outside the local network. This is way cool for
   two reasons. It makes name resolution appear much faster, and reduces
   traffic on the WAN.
   
   The downside to this is that each initial, or "new" request will take
   slightly longer to return to your computer. As I said before,
   everything is a trade off. Usually, the latency is nominal. This
   technique is almost always a good idea.
   
   * Well sort of. It is possible for your ISP to be aware of other
       networks beyond the ones contained in the root.servers file, but
       this is irrelevant in the scenario we are discussing here.
       ** Actually, BIND is comprised of a number of programs, each
       performing a specific function. The most important piece of the
       puzzle is the resolver.
       
   Apache - The Apache http server contains provisions for enabling some
   caching options, thus reducing WAN traffic. Check the Apache
   documentation for more information.
   
   Squid - This is a web proxy/caching software suite that is infinitely
   configurable, and supports many services. To find out more about
   Squid, and whether it is right for your particular installation, see
   the resources section at the end of this document.
   
   Leafnode - This is a replacement for the Network News Transport
   Protocol (NNTP) server usually used in most UNIX installations. It is
   small, easy to configure, and takes up a fraction of the disk space of
   the normal Internet News (INN) software. The trade off is that it does
   not scale well, and can really tie up your WAN connection when it
   initially downloads the articles available from the newsgroups you
   have selected (See the cron section of the General Tips and Tricks for
   some ways to minimize this congestion.) To find out more about
   Leafnode, and whether it is right for your particular installation,
   see the resources section at the end of this document.
   
   Caching options:
     * Advantages of cache options - Whenever you are able to store a
       document (such as a web page or news article,) or a data object
       (such as a name to IP resolution,) locally, this allows your
       gateway to service your request locally, thus reducing the amount
       of traffic across your WAN (PPP) connection. This is a good thing,
       because the apparent speed with which your request is serviced is
       greatly increased, while the WAN connection is left available for
       other requests and tasks. Additionally, if you have the disk space
       for it, spooling your own news is a great idea as well. This
       allows local network access to your Usenet spool, and keeps the
       download (usually called a fetch or suck because it sucks up all
       your bandwidth,) on the local net, and off the WAN.
     * Disadvantages of cache options - However, there is a tradeoff
       involved here. This type of caching works best for documents and
       data that are considered "static" or infrequently changed.
       Depending on the expiry parameter set for your caching service
       (the amount of time a document or object resides locally on your
       machine before it is considered "stale" and deleted,) you may find
       yourself looking at "yesterday's news." This is primarily a
       concern in the web caching area, less so in the news although your
       articles will not be refreshed in "real time", and negligible in
       the nameserver.
     * Configuration of a caching only name server - BIND may or may not
       be installed on your machine already, depending on your choices at
       installation time. If your distribution does not contain BIND
       version 8.1.x or greater, I strongly recommend you upgrade. The
       4.x.x version are no longer in development, and the added features
       included in the 8.x.x version, such as dynamic zone transfers, and
       simplified configuration, make it worth the upgrade. See the
       resources section for the URL of the Internet Software Consortium
       (ISC) which develops and maintains BIND.
       
   Slackware 3.6 - The Slackware distribution will require you to do a
   little work to enable the nameserver. This is really a good thing,
   because when you set it up yourself, you will be better equipped with
   more of an understanding of how the process works, and therefore, how
   to diagnose and correct problems when they develop.
   
   First, you will need a directory called /var/named. If it is not
   already there, create it.
   
   Next, you will need a file containing listings of all the root
   servers, and a file that serves as your local information, or "zone"
   file. These files should be named root.cache, and 127.0.0,
   respectively. Examples of these two files may be found in the
   DNS-HOWTO, or the Cricket book listed in the resources section.
   
   Finally, you will need a named.conf file, which passes the start up
   options to BIND. For a caching nameserver, it should look something
   like the following:
   
   // Config file for caching only name server
   options {
   directory "var/named";
   //Uncomment the line below if you are behind a
   //firewall, and you can?t get things to work:
   // query-source port 53;
   };
   zone "." {
   type hint;
   file "root.cache";
   };
   zone "0.0.127.in-addr.arpa" {
   type master;
   file "127.0.0";
   };
   // End Config file example
   
   Those of you who are familiar with the C/C++ programming language will
   notice the similarity of the syntax of the named.conf file.
   
   Briefly, the first section delineates the working directory, the
   second section tells the resolver where to look for the root servers
   file, and the last section is your "zone" file. This file should live
   in the /etc directory.
   
   Finally, edit your resolv.conf file on the gateway machine to point
   first to itself, then to your ISP for name resolution:
   
   search home.net
   nameserver 127.0.0.1
   nameserver <your ISP primary DNS>
   nameserver <your ISP secondary DNS>
   
   Then finish up by pointing all your home.net clients to the gateway
   for resolution:
   
   search home.net
   nameserver 192.168.1.1
   
   RedHat 5.x - when you install the RPM, it automagically should install
   as a caching server. If not, then see above for the required files and
   proper named.conf examples.
   
   General tips and tricks:
     * Late night cron tricks - Cron (short for chronometer,) is a more
       user friendly (supposedly ;-)) front end to the at daemon. This
       daemon allows the unattended execution of scripts and commands on
       precise days at specific times. This is very handy for automating
       many of the drudge tasks inherent on a UNIX box, such as log
       rotation, ftp jobs, or in our case, news and caching server
       functions. This information is contained in files called crontab
       files. There may or may not be more than one of these files
       present on your system, depending on how it was set up at
       installation, and how many users you may have. This file or files
       live in the /var/spool/cron/crontabs directory.
     * Automating function's with cron - To edit, or add an entry in the
       crontab file, use the command - crontab -e <return>. Once the file
       is open, entries are made in the format <minutes> <hours> <days>
       <weeks> <months> commands. Null entries are represented by an
       asterix (*). For an example, you will probably want to schedule
       your leafnode newsfeeds, as well as any extensive cache downloads
       in the early hours of the morning when you have the least amount
       of users on the system. To start the newsfeed (fetch) every
       morning at 4:00 a.m., the entry would be:
       
                                       0 4 * * * /usr/sbin/fetch
     * Calling scripts from cron - There will be times when you want to
       execute a series of commands, or pass many options to one or more
       commands, and entering them over and over at the command line
       becomes a bummer. Enter shell programming. This is nothing more
       than a file that contains a series of commands to be executed,
       then exited after the last command is done. This is handy for any
       number of things. Indeed, the unicom file from last month is a
       shell script. As an example, say you wanted to remove your wtmp
       file, and create a new one every hour. The script for this might
       look something like:
       
   #!/bin/sh #all scripts should start with your preferred shell
   rm -f /var/log/wtmp #this removes the old file
   touch /var/log/wtmp #this creates the new file
   echo "wtmp cleaned" > /var/log/wtmp.log #this just lets me know the
   script ran
   
   Shell scripts can be created using any of the many text editors
   available on your Linux system. Let?s say we named this file
   wtmpclean. To make it executable by the system, simply issue the chmod
   command:
   
   chmod +x wtmpclean
   
   To call this script from cron, and have it run every hour, your
   crontab entry would be something like:
   
   0 * * * * /usr/sbin/wtmpclean
     * Browser cache settings - Netscape has a feature that allows you to
       adjust the size and behavior of your browser?s disk and memory
       cache. These are areas set aside on your disk and in RAM to "keep"
       your most recently requested browser objects, like an html page, a
       .gif or .jpg file, etc. To adjust these settings, from the
       Netscape menu bar choose Edit/Preferences/Advanced/Cache, Subject
       to RAM and disk space limitations, you can increase/decrease the
       size of your Disk and Memory cache, and choose how frequently your
       browser will go out across the WAN to compare the document in the
       cache to the document at it?s original location. Keep in mind the
       limitations mentioned previously. This is probably best set to
       "Once per session" unless you are trading stocks or something that
       requires frequent updates.
     * Tweaking your modem - Most modems have extra features available
       that may or may not improve the performance and behavior of your
       modem. Check the manufacturer?s documentation and experiment.
     * Data line conditioning - For a small additional monthly charge,
       you can have the phone company "condition" your line, or optimize
       it for data versus voice communications. This may or may not be
       useful to you, it is usually most helpful if you are in a rural
       area, or some other area that experiences excessive static or
       degradation of line quality.
       
   References:
   Previous Columns:
   Parts 4,5, and 6.
   
   Other:
   Pppd man pages
   Cron man pages
   Leafnode man pages
   PPP HOW-TO
   SERIAL HOW-TO
   DNS-HOWTO
   
   Resources for further information:
   Web Resources:
   http://www.redhat.com/
   http://www.slackware.com/
   http://metalab.unc.edu/LDP/
   http://www.linuxresources.com/
   http://metalab.unc.edu/
   http://www.isc.org/
   http://www.apache.org/
   Squid Software:
   http://squid.nlanr.net
   Leafnode Software:
   http://wpxx02.toxi.uni-wuerzburg.de/~krasel/leafnode.html
   Netwatch software:
   ftp://ftp.slctech.org/pub/
   
   Newsgroups:
   alt.unix.wizards
   comp.security.unix
   comp.unix.admin
   alt.os.linux.slackware
   comp.os.linux.networking
   comp.os.linux.hardware
   linux.redhat.misc
   
   Print Materials:
   DNS and BIND (The Cricket Book) - 2nd edition (O?Reilly & Associates)
   
   As always, I?ve ran way long this month. Look for the Advanced
   Services information next month.
     _________________________________________________________________
   
               Previous ``Linux Installation Primer'' Columns
                                      
   Linux Installation Primer #1, September 1998
   Linux Installation Primer #2, October 1998
   Linux Installation Primer #3, November 1998
   Linux Installation Primer #4, December 1998
   Linux Installation Primer #5, January 1999
   Linux Installation Primer #6, February 1999
     _________________________________________________________________
   
                       Copyright  1999, Ron Jenkins
             Published in Issue 38 of Linux Gazette, March 1999
     _________________________________________________________________
   
   [ TABLE OF CONTENTS ] [ FRONT PAGE ] Back Next 
     _________________________________________________________________
   
    "Linux Gazette...making Linux just a little more fun!"
     _________________________________________________________________
   
                                 PAP HOWTO
                                      
                              By Terry Martin
     _________________________________________________________________
   
   This Document is covered by the GPL and can be used in anyway seen fit
   from the license.
   
   This document is not intended to replace the ppp-howto it is intended
   to be a primer as howto setup PAP for calling an ISP that refuses tech
   support to a Linux user.
   
   PAP=Password Authentication Protocol.
   
   If your not sure if your ISP uses pap just bring minicom up and
   atdt<isp-number> and wait for the modem to connect.
   
   If you get login: or some variant of that your isp is not using pap
   and this paper is not for you.
   
   If you get a line or two of trash like:

{}{}{}{}{}}}}{{}{}}}{}{}{}{}[][][][][


   You know it's looking for PAP or mschap.
   
   I won't deal with MSChap since I don't have access to an ISP that uses
   it and I wouldn't want to knowing the reliability of NT. Now assuming
   your dealing with chap we need to figure out what version of pppd your
   using. Type /usr/sbin/pppd --version and you will get the version
   number, I'll cover versions 2.2.0-f and 2.3.5 in this doc as thats
   what I'm familiar with.
   
  pppd 2.2.0 version.
  
   This section I will cover the setup and impletation of pap with older
   distributions like RH 4.2 and Slackware 3.6 use this older version of
   the pppd daemon.
   
   I prefer pico for the new users as editors of choice for console. If
   you don't have it look into getting the latest Pine release it's part
   of it.
   
   You have to edit your ppp-on script if you have one if not I'll
   include one here. You need to look into /usr/doc/pppd*/scripts for the
   ppp scripts, at least thats where the defaults reside with RedHat.
   
   Here's what my ppp-on looks like:
   
   This is setup for your modem being on com2 in dos or /dev/ttyS1 in
   Linux. You need to use ttySxx since the /dev/cua1 is now a defunct
   format with the 2.2.x kernels. If you plan to upgrade to kernel 2.2.x
   you need upgrade your pppd to at least pppd-2.3.x to keep ppp working.

#!/bin/sh
TELEPHONE=<your-isp-phonenumber>

LOCAL_IP=0.0.0.0        # Local IP address if known. Dynamic = 0.0.0.0
REMOTE_IP=0.0.0.0       # Remote IP address if desired. Normally 0.0.0.0
NETMASK=255.255.255.0   # The proper netmask if needed

export TELEPHONE

DIALER_SCRIPT=/etc/ppp/ppp-on-dialer

exec  /usr/sbin/pppd debug lock modem crtscts /dev/ttyS1 115200 \
        asyncmap 20A0000 escape FF kdebug 0 $LOCAL_IP:$REMOTE_IP \
        noipdefault netmask $NETMASK defaultroute connect $DIALER_SCRIPT \
        +ua /etc/ppp/pap-secret

   Thats what your ppp-on file will need to make pap work. As you can see
   your login name and password are no longer included in this file so
   that closes a security risk there.
   
   Anyplace you see <name> always omit the < > and just use the
   information needed.
   
   Next you need to edit /etc/ppp/ppp-on-dialer to disable the looking
   for a login and password lines.
   
   Example:

#!/bin/sh
#
# This is part 2 of the ppp-on script. It will perform the connection
# protocol for the desired connection.
#
# This is the ppp-on-dialer for PAP with pppd-2.2.0
exec /usr/sbin/chat -v                                  \
        TIMEOUT         3                               \
        ABORT           '\nBUSY\r'                      \
        ABORT           '\nNO ANSWER\r'                 \
        ABORT           '\nRINGING\r\n\r\nRINGING\r'    \
        ''              \rAT                            \
        'OK-+++\c-OK'   ATH0                            \
        TIMEOUT         30                              \
        OK              ATDT$TELEPHONE                  \
        CONNECT         ''                              \

   Now we'll cover the password file setup and format. This next part is
   easy all you need is a file named pap-secret with the login name and
   password on separate lines.
   
   i.e., pap-secret with pppd-2.2.0
greg
stinky1

   After you make this file if it's not there. As root type

 chmod -r pap-secret

   Please don't forget the /etc/resolv.conf file for your DNS numbers.
   
   I know I said this wasn't goin to be a ppp-howto but I'll include
   /etc/resolv.conf just to save headaches and email as to why it don't
   it work.

domain <your.isp.com>
search <your.isp.com>
nameserver xxx.xxx.xxx.xxx
nameserver xxx.xxx.xxx.xxx

   Your /etc/resolv.conf should look something like this with the proper
   information edited.
   
   Put the ppp-on in /usr/sbin/ and put ppp-on-dialer in /etc/ppp with
   pap-secret as root

cp ppp-on /usr/sbin/
cp ppp-on-dialer /etc/ppp
cp pap-secret /etc/ppp

   Now all you should have to do is type ppp-on and you should get
   connected to the net with Linux. Enjoy.
   
  pppd-2.3.5
  
   Seting up PAP with pppd-2.3.5 is as easy as pppd-2.2.0 just the syntax
   has changed in the ppp-on script. Please refer to the ppp-on-dialerand
   the resolv.conf in the above for it so I don't have to repeat myself
   here.
   
   Heres an example ppp-on script.

#!/bin/sh

TELEPHONE=<you-isp-phone-number>

LOCAL_IP=0.0.0.0        # Local IP address if known. Dynamic = 0.0.0.0
REMOTE_IP=0.0.0.0       # Remote IP address if desired. Normally 0.0.0.0
NETMASK=255.255.255.0   # The proper netmask if needed

export TELEPHONE

DIALER_SCRIPT=/etc/ppp/ppp-on-dialer

exec  /usr/sbin/pppd debug lock modem crtscts /dev/cua1 115200 \
        asyncmap 20A0000 escape FF kdebug 0 name catfish $LOCAL_IP:$REMOTE_IP \
        noipdefault netmask $NETMASK defaultroute connect $DIALER_SCRIPT \


   Thats about all there is to it for ppp-on with pppd-2.3.5 and PAP.
   
   Now for the /etc/pap-secret file the syntax here has changed from the
   earlier pppd-2.2.0 also.
   
   All you need here now is a single line with your login name the
   interface and your password.
   
   So your pap-scret file would look like so.
   
   I.E. pap-secret

<loginname> ppp0 <password>

   Well thats all there is to it for the PAP howto, pretty basic stuff
   when theres documents for it.
   
   Enjoy and happy surfing. Terry Martin aka catfish on newnet #alt.linux
   catfish@alltel.net
   
   If for some reason you can't get it to work or you find an error
   please email me.
     _________________________________________________________________
   
                       Copyright  1999, Terry Martin
             Published in Issue 38 of Linux Gazette, March 1999
     _________________________________________________________________
   
   [ TABLE OF CONTENTS ] [ FRONT PAGE ] Back Next 
     _________________________________________________________________
   
    "Linux Gazette...making Linux just a little more fun!"
     _________________________________________________________________
   
      The Slashdot Effect, An Analysis of Three Internet Publications
                                      
                              By Stephen Adler
                 __________________________________________
   
                                  Abstract
                                      
     Apache httpd log files have been analyzed to show the Slashdot
     Effect. This effect is known as the spontaneous high hit rate upon
     a web server due to an announcement on a high volume news web site.
     Three papers were published on the Internet and announced on the
     high volume news web sites of slashdot.org, linuxtoday.org, and
     freshmeat.org. The hit rate plots as a function of time are
     correlated with the announcement times on these web sites. These
     correlations clearly demonstrate the magnitude and significance of
     the Slashdot Effect.
     
     Author's note: Here is an Addendum to this paper which details the
     Slashdot effect on this paper.
                 __________________________________________
   
   Three papers were published on the Internet. One on October 20th, 1998
   titled Fall Internet World 98, A View From The Show Floor, one on
   November 14th, 1998 titled Preserving the Information Ecosystem, and
   one on January 28th, 1999 titled An Ode to Richard Stallman. Soon
   after these papers were published, Slashdot, Linux Today and Freshmeat
   ran announcements in one form or other regarding the availability of
   these papers. Within less than an hour, the hit rate to the system
   hosting these papers surged. This surge in hit rate on the hosting web
   server is known as the Slashdot Effect. The magnitude of the hit surge
   varied with each posting since not all three web sites posted the
   articles at the same time, if at all. What follows is a brief case
   study of the SlashDot Effect for each of these papers.
          ________________________________________________________
   
                                  [LINK] 
                                      
   To start, a plot of the hit rate in hits/minute is shown above for the
   past 4 months during which the three papers were published on the
   Internet. The time on the X axis is that of the Unix system time in
   seconds since Jan 1st, 1970 scaled down by a factor of 1000. The width
   of one bin of the histogram is show in a text field on the bottom
   right of the plot. The first recorded hit was 27/Sep/1998:21:02:08,
   and the last recorded hit was 31/Jan/1999:03:59:43. These two dates
   set the two limits of the X axis time scale. The Y axis shows the
   number of raw hits per minute averaged over the time of one bin width.
   (In the case of the plot above, averaged over 902.39 minutes.) The
   data is shown in raw hits/minute, since for each paper referenced by a
   viewer on the Internet generated several hits. One needs to apply a
   scale factor, which is the number of hits generated per paper, in
   order to measure the number of readers of these publications. Since
   the purpose of this paper is to show the Slashdot Effect and not to
   try and measure the number of readers of the papers, this scaling is
   not performed.
   
   Vertical lines are drawn on the above plot to indicate the time of the
   posting by the three web sites. The red lines indicate the
   announcements by Slashdot, the green lines by Linux Today, and the
   blue lines by Freshmeat. From this plot, one can see clear evidence of
   the Slashdot Effect. What follows is a closer examination of each one
   of these postings, since this full time view of the hit rate to the
   server hides some detail of the this effect.
          ________________________________________________________
   
                                  [LINK] 
                                      
   This plot above is a zoom in around the time of the announcement of
   the Fall Internet World 98 paper. The paper was first announced around
   8am on the 20th of October and about 30 minutes later, the hit rate to
   the server surged to well over a 100 hits/minute. This was when the
   author first experienced the Slashdot Effect. Soon after, around 1pm
   of the same day, Linux Today announced the article. One can see a
   slight resurgence in the hit rate about 30 minutes after the Linux
   Today announcement.
          ________________________________________________________
   
                                  [LINK] 
                                      
   The plot above shows the hit rate to the same server during the time
   that "Preserving the Information Ecosystem" was published and
   announced on Linux Today and posted as a Freshmeat editorial. Linux
   Today announced it on November 14th, and the Freshmeat editorial was
   posted on Nov 21th. The announcement of this article on Linux Today
   was only visible for about 12 hours on its front web page, where as
   the article was visible on the front page of the Freshmeat web site
   for several days. This is an indication as to why the Freshmeat
   announcement generated more hits than that of the Linux Today
   announcement.
          ________________________________________________________
   
                                  [LINK] 
                                      
   The final plot above shows the Slashdot Effect with respect to the
   last paper titled "An Ode to Richard Stallman". While the paper was
   being written, notification of its existence was sent to members of
   the LXNY group and to the general redhat mailing list. Therefore the
   activity to the server started to increase before the Linux news web
   sites announced this article. On Jan 28th, around 1pm, Linux Today
   announced the article and published a text only version on their web
   site. Slashdot followed with an announcement of the article and a
   hyper link to the article at around 4pm. One can see the very
   impressive surge in hits after the Slashdot announcement in which the
   hit rate went from about 30 hits/minute up to over 250 hits/minute in
   about a 15 minute period.
          ________________________________________________________
   
   In conclusion, the term Slashdot Effect has been referenced many times
   on sites around the Internet. With the publication of articles related
   to Linux and the Open Source movement, and the announcement of these
   articles to Linux related news web sites, one has a chance of
   documenting, in a controlled environment, this effect. The plots of
   the hit rate received by the hosting server clearly shows the
   existence of the Slashdot Effect. This effect varies in magnitude for
   different reasons. One reason being the interest of the readership in
   the content of the article being announced. Another reason being the
   form in which the article is announced. For example, the article
   titled "an Ode to Richard Stallman" was announced by Slashdot and
   Linux Today. Linux Today published the text of the article on their
   own web site, thus keeping many of the hits, by readers interested in
   this article, on their server. This strongly dampens the surge in hit
   rate to the system hosting the full article. On the other hand,
   Slashdot announced the article via a hyper link to the server hosting
   the full article and thus the local host received all the hits from
   Slashdot readers. The purpose of this article is just to document the
   existence of the Slashdot Effect and not to try and gauge which news
   web site has the predominant reader-ship.
     _________________________________________________________________
   
                      Copyright  1999, Stephen Adler
             Published in Issue 38 of Linux Gazette, March 1999
     _________________________________________________________________
   
   [ TABLE OF CONTENTS ] [ FRONT PAGE ] Back Next 
     _________________________________________________________________
   
    "Linux Gazette...making Linux just a little more fun!"
     _________________________________________________________________
   
                      The Standard C Library for Linux
                                      
                  Part Four: <ctype.h> Character Handling
                                      
                             By James M. Rogers
     _________________________________________________________________
   
   The last article was on <stdio.h> Input and Output.  This article is
   on <ctype.h> character handling.
   
   Character handling allows us to clasify characters as alpha, digit,
   hexdigit, whitespace, printable, lowercase, uppercase, punctuation and
   to map to and from the upper and lowercase alphabets.  Most
   importantly <ctype.h> implements these functions in a non-system
   dependent way.
   
   If you write your program assuming that every computer is an ASCII
   computer you will have trouble porting your program to non ASCII
   machines. If you write your character handling functions in terms of
   these functions your program will be much more portable to other
   platforms.
   
   I am assuming a knowledge of c programming on the part of the reader.
   There is no guarantee of accuracy in any of this information nor
   suitability for any purpose.
   
   The program example that I will do this month will go thru the entire
   8bit ASCII range and tell us to which classes any one chacter
   belongs.  The example is rogers_example04.c. The output the program
   generates will be an html document and the run from my system is
   rogers_example04.html .
   This program can be used as a cgi-bin  script and is a demonstration
   of the flexibility of the c language.
   
   As always, if you see an error in my documentation please tell me and
   I will correct myself in a later document.  See corrections at end of
   the document to review corrections to the previous articles.
   
   Character Handling

#include <ctype.h>

int isalpha(int c);
int isalnum(int c);
int isdigit(int c);
int isxdigit(int c);

int iscntrl(int c);
int isspace(int c);

int ispunct(int c);
int isgraph(int c);
int isprint(int c);

int islower(int c);
int isupper(int c);

int tolower(int c);
int toupper(int c);

   isalpha returns true if the character is in the range of A-Z or a-z.
   
   isalnum returns true if the character is in the range of A-Z or a-z or
   0-9.
   
   isdigit returns true if the character is in the range of 0-9.
   
   isxdigit returns true if the character is in the range of 0-9 or a-f
   or A-F.
   
   iscntrl returns true if the character is in the set (FF, NL, CR, HT,
   VT, BEL or BS).
   
   isspace returns true if the character is in the set (space, FF, NL,
   CR, HT or VT).
   
   ispunct returns true if the character is a nonalnum, nonspace and
   noncntrl.
   
   isgraph returns true if the character isalnum or ispunct.
   
   isprint returns true if the character isspace or isgraph.
   
   islower returns true if the character is in the range of a-z.
   
   isupper returns true if the character is in the range of A-Z.
   
   tolower if isupper return the lowercase character otherwise return the
   character.
   
   toupper if islower return the uppercase character otherwise return the
   character.
     _________________________________________________________________
   
    Bibilography:
    
   The ANSI C Programming Language, Second Edition, Brian W. Kernighan,
   Dennis M. Ritchie, Printice Hall Software Series, 1988
   
   The Standard C Library, P. J. Plauger, Printice Hall P T R, 1992
   
   The Standard C Library, Parts 1, 2, and 3, Chuck Allison, C/C++ Users
   Journal, January, February, March 1995
   
   CTYPE(3), BSD MANPAGE, Linux Programmer's Manual, 29 November 1993
     _________________________________________________________________
   
   
   
            Previous "The Standard C Library for Linux" Articles
                                      
   The Standard C Library for Linux, Part One, James M. Rogers, January
   1998
   The Standard C Library for Linux, Part Two, James M. Rogers, July 1998
   The Standard C Library for Linux, Part Three, James M. Rogers, August
   1998
     _________________________________________________________________
   
                     Copyright  1999, James M. Rogers
             Published in Issue 38 of Linux Gazette, March 1999
     _________________________________________________________________
   
   [ TABLE OF CONTENTS ] [ FRONT PAGE ] Back Next 
     _________________________________________________________________
   
    "Linux Gazette...making Linux just a little more fun!"
     _________________________________________________________________
   
   A Linux Journal Preview: This article will appear in the April 1998
   issue of Linux Journal due out this month.
     _________________________________________________________________
   
                          Windows/Linux Dual Boot
                                      
                             By Vince Veselosky
     _________________________________________________________________
   
   So you've heard great things about Linux: faster, cheaper, more
   efficient, more stable. Sounds good. You'd like to try it out, but
   probably have a lot of time and data invested in Windows and can't
   afford to be down while figuring out how to use Linux for your daily
   tasks. Windows and Linux can live comfortably on the same computer,
   even on the same hard drive. The choice of operating system can be
   made when you power on. This is commonly called a ``dual boot''
   configuration, and one of the most common questions among new Linux
   users is how to set it up.
   
   My system is a Pentium II 400MHz with 128MB of RAM and an 11GB EIDE
   (actually Ultra-DMA 33 ATAPI, for you hardware gurus) hard drive. The
   hard drive had Windows 95 ``C'' on one big FAT32-formatted C: drive,
   which is a typical factory configuration. I tested installs of Red Hat
   Linux 5.1 and SuSE Linux 5.2.
   
   Before starting, there are two terms you need to be familiar with:
   partition and file system. The disk can be divided into smaller,
   separate pieces which can belong to different owners. For dual
   booting, Windows will own some and Linux will own others. The word
   ``partition'' does not refer to the wall; it refers to the separated
   space. Thus, we say Windows is installed ``on'' the first partition.
   The file system is a method of organization. Your hard drive can have
   different file systems. The operating system provides the directory
   tree (also referred to as ``the file system'') as a catalog of
   available files. Every operating system has its own type of file
   system, and other operating systems often don't know how to read it.
   Lucky for us, Linux is a versatile operating system and it does
   understand the file system used by Windows 95 and Windows 98.
   
  Making Room for Linux
  
   Most factory-installed Windows installations take up all the space on
   your hard drive, leaving no room for installing Linux. The first and
   most difficult thing we must do is clear some space where Linux can be
   installed. Linux needs to have partitions of its own, but Windows does
   not have the ability to resize partitions. Ordinarily, this would mean
   you would have to delete your existing partition (and everything on
   it) to make room on the drive and then create partitions of smaller
   sizes and reinstall. You can still do this, but there is a better way.
   
  What You Need
  
   Most Linux distributions come with a special tool to allow you to
   resize or divide hard drive partitions. Called FIPS, the First
   (non-destructive) Interactive Partition Splitter, it is normally found
   on your Linux CD in a directory called /dosutils. You will also need a
   blank, formatted floppy disk to use as a boot disk. For most older
   Windows installations, that should be all. However, if you have
   Windows 98 or a recent version of Windows 95 with a large hard drive
   (bigger than 2GB), you may need some additional tools if you are using
   the FAT32 file system.
   
   To check what type of file system Windows is using, open Windows
   Explorer, right click on the C: drive and choose Properties. If you
   see ``File System: FAT32'' on the General tab, you will need some
   additional tools to support this newer file system.
   
  FAT32 Support Requirements
  
   To adjust your partitions, you will need version 2.0 or higher of
   FIPS. If the version included with your Linux distribution is older
   than this, the latest version is available for download from the FIPS
   home page at http://www.igd.fhg.de/~aschaefe/fips/. If you want to
   share files between Windows and Linux (a good idea), you will also
   need to have version 2.0.34 or higher of the Linux kernel. Table 1 is
   a list of Linux distributions known to support FAT32. If your
   distribution does not include support, you will need to upgrade the
   kernel. Upgrading a kernel is beyond the scope of this article, so
   check the documentation included with your distribution or your
   distributor's web site for information about how to do that.
   
  Table 1. Distributions with FAT32 Support
  
   Distribution: Earliest Version with FAT32 support
   Red Hat Linux: Version 5.1 (kernel 2.0.34)
   SuSE Linux: Version 5.3 (kernel 2.0.35)
   Debian GNU/Linux: Version 2.0 (kernel 2.0.34)
   
  Preparing Your Drive
  
   Before you can resize your Windows partition, a few steps must be
   taken to ensure that the process goes smoothly. First, delete any
   files from your hard drive that are not being used; for example, any
   old files in the C:\windows\temp folder, and then empty your recycle
   bin. Next, check your file system for errors using Scandisk, and
   compact your hard drive using Defrag. I'll assume you Windows users
   know how to do this. When running Scandisk, be sure to check the box
   next to ``Automatically Fix Errors''. Defragmentation consolidates all
   your data at the ``front'' of the drive to make room at the ``back''
   of the drive for your new partition.
   
   When both are finished, it would be wise to note how much space is
   available on the disk. If this number is less than the amount required
   to load Linux (check your distribution's documentation for space
   requirements), you'll need to delete more files or uninstall some
   software to make room.
   
  Using FIPS
  
   Before using FIPS, you must read the FIPS.DOC text file which
   accompanies the program. The use of the program is not entirely
   obvious, and you may need the background information the documentation
   provides. Also, while running FIPS you should carefully read all the
   messages it displays. They will provide valuable information on the
   steps you will need to take next. Most importantly, FIPS comes with no
   warranty. Although it has been used safely many times, there is always
   the chance it could damage the data on your hard drive. If you value
   your data, back it up before you begin.
   
   For safety, create a DOS or Windows boot disk to work from. To do
   this, click Start -> Settings -> Control Panel. Double click
   ``Add/Remove Programs'' and select the tab called Startup Disk. Press
   the button and follow the instructions.
   
   Next, copy the working files for FIPS to the floppy. The files
   FIPS.EXE, RESTORRB.EXE and ERRORS.TXT are mandatory. You may also want
   to copy the documentation files included with FIPS. When your data is
   backed up, restart your computer and boot from the new floppy.
   
   When you arrive at the A:> prompt, type FIPS and press enter. A
   warning will appear about using FIPS in multitasking environments like
   Windows. Since we booted from a floppy, we are safe, so press enter.
   FIPS will analyze your existing partitions. It may pause for a long
   time at ``Checking FAT'' and ``Searching for Free Space''; this is
   perfectly normal, so just wait. The bigger your hard drive, the longer
   it will take. When FIPS is done with its analysis, it will display the
   results. You may get a warning of something being wrong with your FAT.
   If you read the message carefully, you will find that this is normal
   with large hard drives and will not prevent FIPS from working
   properly.
   
   FIPS will then demonstrate how it plans to split the existing
   partition and you will have the opportunity to make changes. Do not
   just press enter. By default, FIPS will take all of the available free
   space for the new partition it creates, leaving your Windows partition
   with no free space at all. Windows will not run if it has no free
   drive space, so you must adjust the partitions. Use the up and down
   arrow keys to make large changes (ten cylinders at a time) and the
   left and right arrow keys for small adjustments (one cylinder at a
   time). The size of the existing partition is shown on the left and the
   size of your new empty partition is on the right. In the middle is the
   cylinder number where the split will take place. I left about 1500MB
   for my own Windows partition. Adjust yours according to your needs,
   but I would recommend using at least 1024MB for Windows.
   
   When you are satisfied, press enter. FIPS displays information on the
   new partitions and asks permission to write it to disk. Your hard
   drive has not been altered at this point. You may choose to write this
   configuration to disk or re-edit the partition table. On my machine,
   when I chose to re-edit I received an error message that said FIPS
   couldn't find some files it needed. If this happens to you, just press
   ctrl-alt-delete to reboot from the floppy and start over. This did not
   cause me any trouble.
   
   When you choose to write the new partitions, FIPS will offer to make a
   backup of your existing boot sector--you should definitely do this.
   The backup file it creates is only 1KB in size and will be invaluable
   if anything goes wrong.
   
   After FIPS completes its work, it will display another message stating
   that you should run scandisk on your old partition. I found that
   Windows will sometimes miscalculate the used and free space on your
   drive after using FIPS, and Scandisk will correct this problem. If you
   choose to restore your original partition scheme using the RESTORRB
   utility, you should run Scandisk after this as well.
   
   After FIPS was done, I received another error. This one said ``Memory
   Allocation Error, Unable to Load COMMAND.COM''. If you see this, just
   press ctrl-alt-delete to reboot and all is well. This should not
   affect your hard drive.
   
   Finally, you may want to run the Windows FDISK program from your
   floppy. This is not necessary, since Linux has its own fdisk program
   for manipulating partitions. You will find that your hard drive now
   contains two ``Primary Partitions'' (or ``Primary DOS Partitions'').
   The second one was created by FIPS out of the free space on your
   drive. For Linux installation, delete this second partition, freeing
   up the space for allocating Linux partitions. (Be careful not to
   delete the first one, where Windows lives.)
   
  Linux Install Tips for Large Drives
  
   Once you've made room for Linux on your drive with FIPS, you should be
   able to install Linux by following the steps in the installation guide
   that accompanied your Linux distribution. Here are a few tips that
   should help you with the areas where dual booting might make a
   difference.
   
  Planning your Partitions
  
   Both the Red Hat and SuSE installation guides have excellent chapters
   on how to divide up your hard drive for use by Linux. Personally, I
   favor the ``Keep It Simple'' principle, especially for beginners. I
   let Windows keep the first partition, create a second for the entire
   Linux install, a third for Linux swap space and the fourth for my
   /home directory (where data is kept). Having /home on a separate
   partition will make things much easier, if you ever have to reinstall
   Linux. The size of each partition will depend on your individual
   situation, but this should suffice for most folks. However, if your
   hard drive is larger than 8GB, there is something else to think
   about--LILO.
   
  Booting with LILO
  
   The usual and recommended method to boot into Linux is using LILO (the
   LInux LOader). LILO can install itself in your boot sector and allows
   you to choose which operating system you would like at boot time. Due
   to a technical limitation, LILO is unable to read data from the hard
   drive past the 1024th cylinder--the 8GB mark for modern LBA (Logical
   Block Addressing) hard drives.
   
   Does this mean you can't use the rest of your drive? Not at all. What
   it does mean is that your boot partitions must all live below the 8GB
   mark, that is, below cylinder 1024. Thus, if you want Windows to use
   the first 9GB of your fancy new 18GB drive, you won't be able to use
   LILO to boot Linux. Because of this limitation, Red Hat's Disk Druid
   tool for partitioning the hard drive will not allow you to create your
   Linux boot partition past cylinder 1024. You can still create the
   partitions using fdisk, but Red Hat setup will not install LILO if you
   do.
   
  Booting from Floppy
  
   It is possible to avoid the entire problem of the 8GB barrier by
   booting from a floppy disk. Although this may sound inefficient, it
   actually works quite well. The kernel loads into memory from the
   floppy disk and never accesses the floppy again, so loading the kernel
   is slower; but after that, the system runs the same as if it had
   booted from the hard drive. The Linux kernel has no difficulty
   accessing the end of large hard drives, so it can still reach all the
   files of your Linux installation.
   
   The setup program for your distribution will almost certainly ask you
   to create a boot floppy during installation. Even if you don't plan to
   boot from floppy regularly, you should definitely make a boot disk. If
   for some reason LILO fails to install or becomes corrupted, you will
   have no other way to access the files on your Linux installation.
   
  Booting with Loadlin
  
   Loadlin is a program that runs under DOS (or Windows 95 in MSDOS
   mode). It can load the Linux kernel into memory from the DOS
   partition. Because it loads the Linux kernel from the hard drive,
   there is still a possibility the 8GB barrier could cause problems, but
   only if your Windows partition is larger than 8GB and is almost full.
   That's not likely at the time of this writing, but who knows--the next
   release of Windows might take up that much space by itself.
   
   Frankly, I wouldn't recommend Loadlin to Linux novices because it can
   be difficult to configure correctly. If you simply must use it, an
   excellent Loadlin + Win95 Mini-HOWTO document available from the Linux
   Documentation Project should get you up and running.
   
  Conclusion
  
   Giving Linux a try does not mean you have to buy a whole new computer
   or even a new hard drive. With just a little extra effort, you can run
   both Linux and Windows without losing any data or any productivity
   while you learn Linux. I think you will find it is well worth the
   effort.
     _________________________________________________________________
   
  Resources
  
   The FIPS home page: http://www.igd.fhg.de/~aschaefe/fips/
   
   The Linux Documentation Project: http://sunsite.unc.edu/LDP/
   
   The Loadlin + Win95 Mini-HOWTO:
   http://sunsite.unc.edu/LDP/HOWTO/mini/Loadlin+Win95.html
   
   The Linux + Win 95 Mini-HOWTO:
   http://sunsite.unc.edu/LDP/HOWTO/mini/Linux+Win95.html
   
   Moving from MS Windows to Linux:
   http://www.geocities.com/SiliconValley/Grid/2272/
     _________________________________________________________________
   
                     Copyright  1999, Vince Veselosky
             Published in Issue 38 of Linux Gazette, March 1999
     _________________________________________________________________
   
   [ TABLE OF CONTENTS ] [ FRONT PAGE ] Back Next 
     _________________________________________________________________
   
                          Linux Gazette Back Page
                                      
           Copyright  1999 Specialized Systems Consultants, Inc.
For information regarding copying and distribution of this material see the
                              Copying License.
     _________________________________________________________________
   
  Contents:
  
     * About This Month's Authors
     * Not Linux
     _________________________________________________________________
   
                         About This Month's Authors
     _________________________________________________________________
   
    Eugene Blanchard
    
   Eugene is an Instructor at the Southern Alberta Institute of
   Technology in Calgary, Alberta, Canada where he teaches electronics,
   digital, microprocessors, data communications, and operating
   systems/networking in the Novell, Windows and Unix worlds. When he is
   not spending quality time with his wonderful wife and 18 month old
   daughter watching Barney videos, he can be found in front of his Linux
   box. His hobbies are hiking, backpacking, bicycling and chess.
   
    Jim Dennis
    
   Jim is the proprietor of Starshine Technical Services. His
   professional experience includes work in the technical support,
   quality assurance, and information services (MIS) departments of
   software companies like Quarterdeck, Symantec/ Peter Norton Group, and
   McAfee Associates -- as well as positions (field service rep) with
   smaller VAR's. He's been using Linux since version 0.99p10 and is an
   active participant on an ever-changing list of mailing lists and
   newsgroups. He's just started collaborating on the 2nd Edition for a
   book on Unix systems administration. Jim is an avid science fiction
   fan -- and was married at the World Science Fiction Convention in
   Anaheim.
   
    Josh Gentry
    
   Josh has this to say about himself, "My name is Josh Gentry. My
   successes in life stem from having great family and friends. My
   failures, as far as I can tell, are unexplainable abberations. Most
   importantly, I am wickedly handsome.
   
    Michael J. Hammel
    
   A Computer Science graduate of Texas Tech University, Michael J.
   Hammel, mjhammel@graphics-muse.org, is an software developer
   specializing in X/Motif living in Dallas, Texas (but calls Boulder, CO
   home for some reason). His background includes everything from data
   communications to GUI development to Interactive Cable systems, all
   based in Unix. He has worked for companies such as Nortel, Dell
   Computer, and Xi Graphics. Michael writes the monthly Graphics Muse
   column in the Linux Gazette, maintains the Graphics Muse Web site and
   theLinux Graphics mini-Howto, helps administer the Internet Ray
   Tracing Competition (http://irtc.org) and recently completed work on
   his new book "The Artist's Guide to the Gimp", published by SSC, Inc.
   His outside interests include running, basketball, Thai food,
   gardening, and dogs.
   
    Ron Jenkins
    
   Ron has over 20 years experience in RF design, satellite systems, and
   UNIX/NT administration. He currently resides in Central Missouri where
   he is pursuing his writing, helping folks solve problems and find
   solutions, teaching, and generally having a dandy time while looking
   for some telecommuting work. Ron is married and has two stepchildren.
   Ron has begun to worry about referring to himself in the third person.
   
    Eric Kidd
    
   Eric is a closet LISP bigot but still loves Unix anyway. He spends
   most of his time writing free software (for a living and as a hobby)
   and wishes he had more time to spend learning Go.
   
    James Rogers
    
   James and Shala Rogers live on the Olympic Peninsula in the middle of
   nowhere. James is a systems programmer for the University of
   Washington Medical Centers, Harborview Medical Centers and the
   University of Washington Physicians Network. He is a Health Level 7
   Interface programmer who is currently writing a GNU licensed HL7
   interface. These interfaces allow approximately 40 medical computer
   systems to communicate with each other across the entire Seattle
   Metropolitan area.
   
    Vince Veselosky
    
   Vince is a computer consultant in the Atlanta, Georgia area, working
   mostly in technical support for Microsoft operating systems. He has
   made it his mission in life to master Linux before the year 2000. When
   he's not working with computers, he's looking for a new girlfriend.
     _________________________________________________________________
   
                                 Not Linux
     _________________________________________________________________
   
   Thanks to all our authors, not just the ones above, but also those who
   wrote giving us their tips and tricks and making suggestions. Thanks
   also to our new mirror sites.
   
   I've spent so much time at work lately, my dear husband says he
   doesn't recognize me anymore! I'm hoping once this issue is up, the
   May issue of Linux Journal is gone to layout, and Linux World is in
   the past, I might have some time again to spend with Riley and other
   family members. My daughter Shannon is coming to visit on March 11 and
   I am looking forward to that.
   
   I will be at Linux World on March 2 and 3. Hope to meet you there!
   
   Have fun!
     _________________________________________________________________
   
   Marjorie L. Richardson
   Editor, Linux Gazette, gazette@ssc.com
     _________________________________________________________________
   
   [ TABLE OF CONTENTS ] [ FRONT PAGE ] Back 
     _________________________________________________________________
   
   Linux Gazette Issue 38, March 1999, http://www.linuxgazette.com
   This page written and maintained by the Editor of Linux Gazette,
   gazette@ssc.com
