7054 lines
300 KiB
HTML
7054 lines
300 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
|
<HTML>
|
|
<HEAD>
|
|
<TITLE> Linux Gazette Index Page </TITLE>
|
|
<META NAME="robots" CONTENT="noindex, nofollow">
|
|
</HEAD>
|
|
|
|
<BODY BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#A000A0"
|
|
ALINK="#FF0000" >
|
|
<center><H2><IMG SRC="../gx/newlogo.jpg"
|
|
ALT="Linux Gazette... making Linux just a little more fun!">
|
|
</H2>
|
|
|
|
<H5>Copyright © 1996-98 Specialized Systems Consultants, Inc.</H5>
|
|
</center>
|
|
|
|
<P> <HR> <P>
|
|
<!--==================================================================-->
|
|
<center>
|
|
<H1>Welcome to Linux Gazette!<img src="../gx/tm.gif" alt="(tm)"></H1>
|
|
</center>
|
|
<P> <HR> <P>
|
|
<!--==================================================================-->
|
|
<H1>Published by:</H1>
|
|
<center>
|
|
<H1><A HREF="http://www.ssc.com/lj/">
|
|
<img src="../gx/ljlogo.gif" alt="Linux Journal"></A></H1>
|
|
</center>
|
|
<P><HR> <P>
|
|
<H1>Sponsored by:</H1>
|
|
<table>
|
|
<tr>
|
|
<td><H1><A HREF="http://www.infomagic.com/"><img ALIGN="bottom" HSPACE="70"
|
|
src=../gx/infologo.gif alt="InfoMagic"></A></H1></td>
|
|
<td>
|
|
<H1><A HREF="http://www.suse.com/"><img ALIGN="bottom" src=../gx/suse.gif alt="S.u.S.E."></A></H1></td>
|
|
<td>
|
|
<H1><A HREF="http://www.redhat.com/"><img HSPACE="70" src=../gx/redhat.gif alt="Red Hat"></A></H1></td>
|
|
</tr>
|
|
</table>
|
|
|
|
<P>
|
|
Our sponsors make financial contributions toward the costs of
|
|
publishing <I>Linux Gazette</I>. If you would like to become a sponsor
|
|
of <I>LG</I>, e-mail us at <A
|
|
HREF="mailto:sponsor@ssc.com">sponsor@ssc.com</A>.
|
|
|
|
<P>
|
|
<I>Linux Gazette</I> is a non-commercial, freely available publication and will
|
|
remain that way. Show your support by using the products of our sponsors
|
|
and publisher. To subscribe to <I>Linux Journal</I>, click
|
|
<A HREF="http://www.linuxjournal.com/subform.html">here</A>.
|
|
|
|
|
|
<P> <HR> <P>
|
|
<!--=================================================================-->
|
|
<H1 align="center">Table of Contents <BR>March 1998 Issue #26</H1>
|
|
|
|
<P> <HR> <P>
|
|
<table><tr>
|
|
<td rowspan=4>
|
|
<UL>
|
|
<LI><A HREF="../index.html">The Front Page</A>
|
|
<LI><A HREF="./lg_mail26.html">The MailBag</A>
|
|
<ul>
|
|
<li><a HREF="./lg_mail26.html#ideas">Article Ideas</a>
|
|
<li><a HREF="./lg_mail26.html#help">Help Wanted</a>
|
|
<li><a HREF="./lg_mail26.html#gen">General Mail</a>
|
|
</ul>
|
|
<LI><A HREF="./lg_tips26.html">More 2 Cent Tips</A>
|
|
<ul>
|
|
<li><a HREF="./lg_tips26.html#apache">Apache SSL extensions...</a>
|
|
<li><a HREF="./lg_tips26.html#locate">Locate</a>
|
|
<li><a HREF="./lg_tips26.html#print">Re: Printing Problems</a>
|
|
<li><a HREF="./lg_tips26.html#net">Re: LG25, Netscape on the Desktop</a>
|
|
<li><a HREF="./lg_tips26.html#vax">Re: Linux and VAX 3400 and 3300</a>
|
|
<li><a HREF="./lg_tips26.html#binary">Binary File Access with dd</a>
|
|
<li><a HREF="./lg_tips26.html#find">Follow up to find 2c-tip</a>
|
|
<li><a HREF="./lg_tips26.html#ispell">ispell & Pine 3.96</a>
|
|
<li><a HREF="./lg_tips26.html#xvscan">XVSCAN: Combining different parts
|
|
together </A>
|
|
<li><a HREF="./lg_tips26.html#scape">2c-tip: Netscape on the Desktop</A>
|
|
<li><a HREF="./lg_tips26.html#win">Linux and Win95</A>
|
|
<li><a HREF="./lg_tips26.html#su">My $0.02 tip: Graphical su</A>
|
|
<li><a HREF="./lg_tips26.html#eggs">Easter Eggs in Netscape</A>
|
|
<li><a HREF="./lg_tips26.html#core">Core Dumps</A>
|
|
</ul>
|
|
<LI><A HREF="./lg_bytes26.html">News Bytes</A>
|
|
<ul>
|
|
<li><a HREF="./lg_bytes26.html#general">News in General</a>
|
|
<li><a HREF="./lg_bytes26.html#software">Software Announcements</a>
|
|
</ul>
|
|
<LI><A HREF="./lg_answer26.html">The Answer Guy</A>, by James T. Dennis
|
|
<ul>
|
|
<li><a HREF="./lg_answer26.html#telnet">Can't Telnet to Red Hat 5.0 Server</a>
|
|
<li><a HREF="./lg_answer26.html#luke">Use the Source, Luke!</a>
|
|
<li><a HREF="./lg_answer26.html#ifconfig">'ifconfig' to Troubleshoot Dropped Ethernet Packets?</a>
|
|
<li><a HREF="./lg_answer26.html#angel">Cthugha </a>
|
|
<li><a HREF="./lg_answer26.html#login">xdm Login doesn't!</a>
|
|
</ul>
|
|
<LI><A HREF="./clueless.html">Clueless At The Prompt</a>, by Mike List
|
|
<LI><A HREF="./marsden.html">EMACSulation</a>, by Eric Marsden
|
|
<LI><A HREF="./gm.html">Graphics Muse</A>, by Michael J. Hammel
|
|
<LI><A HREF="./kapok/kapok-nonote.html">Linux on a Kapok 7200</A>, by Alessandro Usseglio
|
|
Viretta
|
|
<LI><A HREF="./dubs.html">Low Cost Macintosh-Linux Networking at Home</A>,
|
|
by Dr. Richard L. Dubs
|
|
<LI>New Release Reviews, by Larry Ayers
|
|
<ul>
|
|
<LI><A HREF="./ayers.html">Tcd and Gtcd</a>
|
|
</ul>
|
|
<LI><A HREF="./kunz.html">Setting up Your In-Home (or In-Office)
|
|
Network</A>, by Tom Kunz
|
|
<LI><A HREF="./obrien.html">The Yorick Programming Language</a>, by Cary
|
|
O'Brien
|
|
<LI><A HREF="./lg_backpage26.html">The Back Page</A>
|
|
<ul>
|
|
<li><a HREF="./lg_backpage26.html#authors">About This Month's Authors</a>
|
|
<li><a HREF="./lg_backpage26.html#notlinux">Not Linux</a>
|
|
</UL>
|
|
</UL>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td align=center>
|
|
<A HREF="lg_bytes26.html#linuxexpo">
|
|
<img src="../gx/linuxexpo.gif" border=0 alt="">
|
|
</a>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td align=center>
|
|
<A HREF="lg_answer26.html">
|
|
<img src="../gx/wizard2.gif" border=0 alt="">
|
|
</a>
|
|
<A HREF="lg_answer26.html"><i>The Answer Guy</i></a>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td align=center>
|
|
<A HREF="./gm.html">
|
|
<IMG SRC="../gx/hammel/banner-3.gif" border=0 alt="">
|
|
</a>
|
|
</td>
|
|
</tr><tr>
|
|
<td align=center>
|
|
<img src="../gx/fisk/attndant.gif" border=0 alt=""><BR>
|
|
<!-- <A HREF="wkndmech.html"><I>The Weekend Mechanic</I></a>a -->
|
|
<I>The Weekend Mechanic</I> will return.
|
|
</td>
|
|
</tr><tr>
|
|
</table>
|
|
|
|
<P> <HR><P>
|
|
|
|
<!--=============================================================-->
|
|
<A HREF="./issue26.txt">TWDT 1 (text)</A><BR>
|
|
<A HREF="./issue26.html">TWDT 2 (HTML)</A><BR>
|
|
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.
|
|
|
|
<!--=============================================================-->
|
|
<P> <HR><P>
|
|
Got any <I>great</I> ideas for improvements? Send your
|
|
<A HREF="mailto:gazette@ssc.com">comments, criticisms, suggestions
|
|
and ideas.</A>
|
|
|
|
<P><hr><p>
|
|
This page written and maintained by the Editor of <I>Linux Gazette</I>,
|
|
<A HREF="mailto: gazette@ssc.com"> gazette@ssc.com</A>
|
|
|
|
<H4>"Linux Gazette...<I>making Linux just a little more fun!</I>"</H4>
|
|
<HR>
|
|
<center>
|
|
<table width="100%" cellpadding=7><tr><td>
|
|
<H2><a NAME="mail"><IMG SRC="../gx/mailbox.gif" ALIGN=MIDDLE ALT=" ">
|
|
The Mailbag!</a> </H2>
|
|
Write the Gazette at <A HREF="mailto:gazette@ssc.com"> gazette@ssc.com</A>
|
|
</td><td>
|
|
<H3>Contents:</H3>
|
|
<ul>
|
|
<li><a HREF="./lg_mail26.html#help">Help Wanted -- Article Ideas</a>
|
|
<li><a HREF="./lg_mail26.html#gen">General Mail</a>
|
|
</ul>
|
|
</td></tr></table>
|
|
</center>
|
|
|
|
<a name="help"></a>
|
|
<p><hr><p>
|
|
<!-- =================================================================== -->
|
|
<center><H3> Help Wanted -- Article Ideas </H3></center>
|
|
|
|
<P> <HR> <P>
|
|
<!--====================================================================-->
|
|
<IMG ALT=" " SRC="../gx/envelope.gif">
|
|
Date: Sun, 01 Feb 1998 21:43:23 -0800<BR>
|
|
From: Bradley Akey, <A HREF="mailto:bakey@slip.net">bakey@slip.net</A><BR>
|
|
Subject: <B>Creative Labs SB-16 & Sony CDU76E-S</B>
|
|
<P>
|
|
I am attempting to install RedHAt Linux ver 4.2 from a Sony
|
|
CDU-76E-S CD-ROm connected to a Sound Blaster 16 via an IDE interface
|
|
at base io 0x1E8, IRQ 15. Waht is the correct boot parameter to get this
|
|
CD-ROM to function properley
|
|
|
|
<P> <HR> <P>
|
|
<!--====================================================================-->
|
|
<IMG ALT=" " SRC="../gx/envelope.gif">
|
|
Date: Tue, 3 Feb 1998 08:25:32 -0500 (EST)<BR>
|
|
From: Michael Stutz, <A HREF="mailto:stutz@dsl.org">stutz@dsl.org</A><BR>
|
|
Subject: <B>Help Wanted: recording audio data</B>
|
|
<P>
|
|
Is there any way to read and save the data that is currently being played by
|
|
the soundcard, regardless of the sound source?
|
|
<P>
|
|
(There is a program in alpha which does this called paudio, at
|
|
<A HREF="http://web.syr.edu/~jdimpson/proj/">
|
|
http://web.syr.edu/~jdimpson/proj/</A>. It creates a readable /proc/audio --
|
|
but I haven't yet gotten it to work with the OSS-compatible driver produced
|
|
by the Linux Ultrasound Project which I use.)
|
|
<P>
|
|
Michael Stutz
|
|
|
|
<P> <HR> <P>
|
|
<!--====================================================================-->
|
|
<IMG ALT=" " SRC="../gx/envelope.gif">
|
|
Date: Mon, 09 Feb 1998 14:18:49 -0500<BR>
|
|
From: Todd Blake, <A HREF="mailto:tbb@enterprise.aacc.cc.md.us">
|
|
tbb@enterprise.aacc.cc.md.us</A> <BR>
|
|
Subject: <B>Help Wanted</B>
|
|
<P>
|
|
I like most people am the only person to use my linux system at home.
|
|
What I'd like to do is when my system is done booting to have me
|
|
automatically login as my main user account(not as root though) on one
|
|
virtual console(the first) and leave all other consoles and virtual
|
|
consoles alone, so that someone telnetting in will get a login prompt
|
|
like normal, just that I won't. I'd still like the other vc's have
|
|
login's for others to login and other reasons. I've tried just putting
|
|
/bin/sh in /etc/inittab and that didn't work, and I'm stumped. Does
|
|
anyone have any ideas on this?
|
|
<P>
|
|
Todd Blake
|
|
|
|
<P> <HR> <P>
|
|
<!--====================================================================-->
|
|
<IMG ALT=" " SRC="../gx/envelope.gif">
|
|
Date: Mon, 09 Feb 1998 17:47:08 -0600<BR>
|
|
From: peter smith, <A HREF="mailto:psmith@computek.net">
|
|
psmith@computek.net</A><BR>
|
|
Subject: <B>Problems with Linux through Wingate Socks</B>
|
|
<P>
|
|
I'm having a few problems accessing the internet through Wingate
|
|
v2.0 on my Windows95 machine using my Linux Redhat 4.2 installation.
|
|
I've had this SOCKS server set-up for quite some time on my internet
|
|
dial-out machine and have previously had no problems accessing the
|
|
internet through this server via my second machine's installation of
|
|
Windows95 or even WindowsNT. The problem is directly related to DNS
|
|
lookups. If I access a domain-name from my Linux machine that seems to
|
|
get redirected, I will receive an error that the DNS address does not
|
|
exist. For instance, if I attempt to open the web page
|
|
http://www.kernel.org (which gets redirected to http://linux.kernel.org)
|
|
my browser (Netscape v4.04 for Linux 2.0* i386 rpm) reports a DNS
|
|
error. However if I instead attempt to open the redirected web page
|
|
http://linux.kernel.org my browser will open it ok, without error. I'm
|
|
baffled by this behavior and have tried a number of different things! I
|
|
can provide more detailed information if needed. Thanks in advance to
|
|
any who try to help! ;)
|
|
<P>
|
|
I love Linux Gazette and have a great time browsing all the cool
|
|
suggestions and tips! Keep up the ideas and info!
|
|
<P>
|
|
PeterS
|
|
|
|
<P> <HR> <P>
|
|
<!--====================================================================-->
|
|
<IMG ALT=" " SRC="../gx/envelope.gif">
|
|
Date: Mon, 09 Feb 1998 19:04:42 -0500<BR>
|
|
From: Melmac88, <A HREF="mailto:smegan@erols.com">smegan@erols.com</A><BR>
|
|
Subject: Shadow passwords
|
|
<P>
|
|
Can someone do a clear explanation on how to set up a shadow
|
|
password file, and exactly how it works? I've seen this
|
|
recommended for security purposes in many books and
|
|
articles, but there never seems to be an explanation on how
|
|
to do this.
|
|
|
|
<P> <HR> <P>
|
|
<!--====================================================================-->
|
|
<IMG ALT=" " SRC="../gx/envelope.gif">
|
|
Date: Wed, 09 Dec 1998 04:38:06 -0900<BR>
|
|
From: David Lev, <A
|
|
HREF="mailto:dlev@polarnet.com">dlev@polarnet.com</A><BR>
|
|
Subject: <B>my dual pentium</B>
|
|
<P>
|
|
My name is David Lev, I have a problem with my
|
|
second CPU.
|
|
<P>
|
|
I am currently using a Caldera OpenLinux Standard
|
|
with Kernel (2.0.29-2).
|
|
After I install the system I try to enable the 2
|
|
CPU and my computer FREEZE or I loss my DeskTop
|
|
and it takes for ever to do one process.
|
|
but with one CPU the computer work fine no
|
|
problems at all.
|
|
I ask for your help.
|
|
If you can help me also on how to enable 2 modems
|
|
and run them as one.
|
|
<P>
|
|
My computer content:
|
|
<PRE>
|
|
ATX Dual Motherboard - GA-586DX with SCSI on board
|
|
Adaptec 7880
|
|
CPU - 2x 233MMX Pentium
|
|
128M RAM EDO
|
|
2x 3.1G HDD - W.D - IDE
|
|
2x 8X CD-ROM - IDE
|
|
2x 56K Modem
|
|
ESS Sound card
|
|
</PRE>
|
|
|
|
<P> <HR> <P>
|
|
<!--====================================================================-->
|
|
<IMG ALT=" " SRC="../gx/envelope.gif">
|
|
Date: Sat, 14 Feb 1998 15:00:34 EST<BR>
|
|
From: Andreas M. Weiner, <A HREF="mailto:HGuAWeiner@aol.com">
|
|
HGuAWeiner@aol.com</A> <BR>
|
|
Subject: <B>Linux and AMD K6 Processor - any Problems?</B>
|
|
<P>
|
|
This is my hardware configuration.
|
|
Support answered that there would be problems with using the K6 with Linux; for
|
|
instance a crash.
|
|
<P>
|
|
What dou you know about this problem ?<BR>
|
|
Could you send me a some informations to solve this problem ?<BR>
|
|
Are there Kernel patches available ?<BR>
|
|
<P>
|
|
I'm looking forward of getting the answers from you
|
|
<P>
|
|
Andreas M. Weiner
|
|
|
|
<P> <HR> <P>
|
|
<!--====================================================================-->
|
|
<IMG ALT=" " SRC="../gx/envelope.gif">
|
|
Date: Sun, 15 Feb 1998 10:26:36 -0800<BR>
|
|
From: David, <A HREF="mailto:elvii@writeme.com">elvii@writeme.com</A><BR>
|
|
Subject: <B>X without a Mouse?</B>
|
|
<P>
|
|
Been searching around the net and ldp, and can't seem to find anything
|
|
on this one. Trying to be able to use X WITHOUT a mouse. Yes, I know,
|
|
it works bets with a mouse, but I'd like to be able to get at least
|
|
limited x funcationality without it. Any help is greatly appreciated,
|
|
and being waited. Also, is there any was to do mouse emulation without
|
|
a mouse? I found a program that translated ps/2 to a standard serial
|
|
mouse, for before x supported ps/2, i assume... anyone know if a
|
|
program has been written to allow the keypad to do mouse, ie, translate
|
|
keypad input to /dev/mouse? Thanks for your time, hoping some kind
|
|
linux guru's out there can help. :)
|
|
<P>
|
|
David
|
|
|
|
<P> <HR> <P>
|
|
<!--====================================================================-->
|
|
<IMG ALT=" " SRC="../gx/envelope.gif">
|
|
Date: Mon, 16 Feb 1998 21:59:04 -0700<BR>
|
|
From: Todd Jamison, <A HREF="mailto:jamisont@littoneos.com">
|
|
jamisont@littoneos.com</A><BR>
|
|
Subject: <B>Help with Sound Card</B>
|
|
<P>
|
|
I currently am running RedHat 5.0 on a Pentium 150 W/48 MB Ram. I =
|
|
cannot get my ESS ES1868 plug and play sound card to work. I am very =
|
|
new to linux and am still learning. If anyone can help me i would =
|
|
really appreciate it.
|
|
<P>
|
|
Todd
|
|
|
|
<P> <HR> <P>
|
|
<!--====================================================================-->
|
|
<IMG ALT=" " SRC="../gx/envelope.gif">
|
|
Date: Tue, 17 Feb 1998 16:41:49 -0600<BR>
|
|
From: John Gorman, <A HREF="mailto:John.H.Gorman@MCI.Com">
|
|
John.H.Gorman@MCI.Com</A><BR>
|
|
Subject: <B>HP4 & font</B>
|
|
<P>
|
|
I just installed a HP LaserJet 4L on RedHat 4.2 Intel and when I
|
|
print postscript (from emacs, etc), it prints at about a size 24
|
|
font. How to I set my font where I want it.
|
|
<P>
|
|
Thanks
|
|
<P>
|
|
John Gorman
|
|
|
|
<P> <HR> <P>
|
|
<!--====================================================================-->
|
|
<IMG ALT=" " SRC="../gx/envelope.gif">
|
|
Date: Fri, 20 Feb 1998 08:46:12 +0100<BR>
|
|
From: Jeroen Bulters, <A HREF="mailto:jbulters@scoutnet.nl">
|
|
jbulters@scoutnet.nl</A> <BR>
|
|
Subject: <B>Changing XDM windows</B>
|
|
<P>
|
|
Can I change the XDM login window/screen?
|
|
I have a cool house logo so i want to use it in my own Home Network. And at
|
|
my school they want to know to so. Is it possible.
|
|
If yes, how? If no, WHY NOT.
|
|
<P>
|
|
Jeroen Bulters, The netherlands
|
|
|
|
<P> <HR> <P>
|
|
<!--====================================================================-->
|
|
<IMG ALT=" " SRC="../gx/envelope.gif">
|
|
Date: Tue, 17 Feb 1998 01:36:30 +0000<BR>
|
|
From: Mackenzie St. Louis, <A HREF="mailto:mstlouis@tiac.net">
|
|
mstlouis@tiac.net</A> <BR>
|
|
Subject: <B>New Motherboards</B>
|
|
<P>
|
|
A lot of motherboards have been coming out lately with built in
|
|
graphics and sound. Any plans to cover them. I just bought a
|
|
TX-Pro-II board with graphics and sound. However I think I will be
|
|
returning it since I can't get the sound to work. It has a SoundPro
|
|
chip. Can not also get XFree 3.3.1 to run properly. It will only come
|
|
in 8 bit 320x200, even though the graphic chip is supposed to be AGP.
|
|
If you could point out where I can get some info. I would gladly write
|
|
an article for the Gazette in case any else comes across this same
|
|
problem. Please email me with any info or questions.
|
|
|
|
<P> <HR> <P>
|
|
<!--====================================================================-->
|
|
<IMG ALT=" " SRC="../gx/envelope.gif">
|
|
<a name="gen"></a>
|
|
Date: Tue, 24 Feb 1998 16:28:09 -0800<BR>
|
|
From: chewey nougat, <A HREF="mailto:daiger@usc.edu">
|
|
daiger@usc.edu</A> <BR>
|
|
Subject: <B>HELP-Installing Linux on a FAT32 Drive</B>
|
|
<P>
|
|
I'm interested in installing linux on a machine I built recently, but =
|
|
when I installed Win95(b), I idiotically opted to format the drive using =
|
|
FAT32, which in a 95-only environment is great, but linux can't read it =
|
|
for greek.
|
|
<P>
|
|
I've looked around for utilities to effectively un-FAT32 the drive, =
|
|
which I will then partition with Partition Magic to use the freespace as =
|
|
a native ext2 partition, etc., but am having little luck. Reformating is =
|
|
a disheartening prospect I would rather not face, but am fully prepared =
|
|
to do so if I don't find any help here.
|
|
<P>
|
|
much thanks,<BR>
|
|
nate daiger
|
|
|
|
<P> <HR> <P>
|
|
<!--====================================================================-->
|
|
<IMG ALT=" " SRC="../gx/envelope.gif">
|
|
Date: Thu, 26 Feb 1998 13:47:06 -0500<BR>
|
|
From: Brian O. Bush, <A HREF="mailto:bbush@xtdl.com">
|
|
bbush@xtdl.com</A><BR>
|
|
Subject: <B>question on motor control</B>
|
|
<P>
|
|
Does anyone know how to interface and control two motors from a Linux box?
|
|
I am looking for a simple solution (in circuit at least).
|
|
<P>
|
|
Thanks,<BR>
|
|
Brian
|
|
|
|
<P> <HR> <P>
|
|
<!--====================================================================-->
|
|
<IMG ALT=" " SRC="../gx/envelope.gif">
|
|
Date: Fri, 27 Feb 98 14:16:13 -0500<BR>
|
|
From: Bill R. Williams, <A HREF="mailto:brw@ETSU.Edu">
|
|
brw@ETSU.Edu</A><BR>
|
|
Subject: <B>Wanting HELP!</B>
|
|
<P>
|
|
First off: I can *not* believe I am the only one bitten by this.
|
|
<P>
|
|
In the process of getting a System installed I upgraded from the
|
|
original CD-ROM install of (Intel) RedHat 4.2 to the new RedHat 5.0
|
|
CD-ROM. One of the significant items on this system is the mars-nwe
|
|
Netware emulator.
|
|
<P>
|
|
Under the RedHat 4.2 with mars-nwe 0.98pl8-1 the mars package ran fine,
|
|
but logged copious errors about there being "too many connections --
|
|
increase the number in config.h". But it ran, and I *liked* the way it
|
|
happily did Netware duties! (Especially the printer part.)
|
|
<P>
|
|
The *new* RedHat 5.0 with mars-nwe 0.99pl2-1 offered some very desirable
|
|
abilities, not the least of which is the move of some items (such as
|
|
number of connections) to the run-time config file (/etc/nwserv.conf
|
|
under RedHat, probably nw.ini on other distributions.) Now the bad
|
|
news...
|
|
<P>
|
|
Of lesser, but still irritating, importance is the fact that the mars
|
|
package won't shutdown without some hard kills. This may be related to
|
|
the really important problem which is:
|
|
<P>
|
|
This new package spawns out nwconn processes with an empty parenthesis
|
|
as the last token instead of the USERID ('nwconn ... ()') until all
|
|
connection slots are eaten, and then, of course, will not recognize any
|
|
new attempts. Any users already logged into the nwserv(ice) are Ok.
|
|
<P>
|
|
Since I am neither a Netware guru nor a mars guru I can only hazard a
|
|
guess, but since the nwconn(s) are children of the ncpserv daemon I
|
|
suspect that ncpserv is the source of the troubles.
|
|
<P>
|
|
I have tried every combination of parameter twiddling in the run-time
|
|
config file that can think of, but to no avail.
|
|
<P>
|
|
One thing I have noticed, the 2.0.32 linux kernel /usr/src/linux/.config
|
|
no longer has the 'CONFIG_IPX_INTERN' setting (should be unset according
|
|
to mars-nwe docs) which existed in 2.0.27. This may or may not have
|
|
anything to do with the problem. Checking the kernel sources, it
|
|
appears that the RedHat rpm of the 2.0.32 kernel has the mars patches
|
|
incorporated into the source.
|
|
<P>
|
|
Anyone who has solved this problem, please share the secret.
|
|
<P>
|
|
BTW: I attempted resolution through the RedHat Support system as a
|
|
registered RedHat customer, and if anybody wants a good laugh I'll be
|
|
happy to share the "circle of correspondence" from RedHat support. I
|
|
did learn from the attempt that no *human* at RedHat actually ever sees
|
|
the E-Mail to the support team or 'Bugs' team. (The "auto answer"
|
|
mechanism will get right back to you, though, and tell you not to expect
|
|
an answer.)
|
|
<P>
|
|
As I said, I can *not* believe I am the only one bitten by this, because
|
|
I've looked on the news groups and seen several posts with "Mars and
|
|
RedHat 5.0" in the Subject fields. These were all on the French
|
|
os.linux.... lists, and unfortunately I do not read French!
|
|
<P>
|
|
Sorry for the rambling on...<BR>
|
|
Bill R. Williams
|
|
|
|
<P> <HR> <P>
|
|
<!--====================================================================-->
|
|
<IMG ALT=" " SRC="../gx/envelope.gif">
|
|
Date: Sat, 7 Feb 1998 13:03:24 +0100 (CET)<BR>
|
|
From: Manfred Lemke, <A HREF="mailto:lema0019@FH-Karlsruhe.DE">
|
|
lema0019@FH-Karlsruhe.DE</A> <BR>
|
|
Subject: <B>Support for IBM Ethernet card?</B>
|
|
<P>
|
|
I'm frantically searching for some kind of support for IBM's
|
|
LAN Adapter/A for Ethernet. Does any of you know of a driver
|
|
in the Linux Kernel that works?
|
|
<P>
|
|
Best regards and thanks in advance,
|
|
<P>
|
|
Manfred Lemke
|
|
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
<center><H3> General Mail </H3></center>
|
|
|
|
<P> <HR> <P>
|
|
<!--====================================================================-->
|
|
<IMG ALT=" " SRC="../gx/envelope.gif">
|
|
Date: Fri, 27 Feb 1998 00:09:33 +0100 (MET)<BR>
|
|
From: Radoslav Dejanovic, <A HREF="mailto:rdejanov@public.srce.hr">
|
|
rdejanov@public.srce.</A><BR>
|
|
Subject: <B>Linux Journalists International</B>
|
|
<P>
|
|
Linux Journalists International is an effort to make a meeting point
|
|
for journalists who use Linux or simply write about it. It is also a place
|
|
where other journalists and other people can take a look what is going on
|
|
with Linux and media that supports it. There will be info pages about
|
|
magazines/media and journalists who use Linux and/or write about Linux &
|
|
related software.
|
|
<P>
|
|
I am editor in one croatian computer magazine (http://www.pcchip.hr) and
|
|
this is my effort to give the Linux community something that lacks:
|
|
popularity in media and a chance to boost media coverage of Linux.
|
|
The homepage is at http://www.purger.com/~rado/lji.html - please take a
|
|
look at it. LJ and LG are the strongest "Linux inside" media :), so your
|
|
support in this project is essential.
|
|
<P>
|
|
Rado
|
|
|
|
<P> <HR> <P>
|
|
<!--====================================================================-->
|
|
<IMG ALT=" " SRC="../gx/envelope.gif">
|
|
Date: Wed, 4 Feb 1998 10:02:08 -0500 (EST)<BR>
|
|
From: Paul Lussier, <A HREF="mailto:plussier@LanCity.COM">
|
|
plussier@LanCity.COM</A> <BR>
|
|
Subject: <B>Retraction Re: Linux and routing</B>
|
|
<p>
|
|
It was just called to my attention that this came across a little to
|
|
strongly and I'd like to clarify what I had previously written.
|
|
<p>
|
|
On Tue, 6 Jan 1998, I wrote:
|
|
<blockquote> <I>
|
|
Some words of caution. DO NOT HAVE YOUR LAN CONNECTED AT THE TIME OF
|
|
THE CABLE MODEM INSTALLATION!!!! [Comapany names removed],
|
|
and most of the other cable companies (we deal with them all here)
|
|
will refuse to connect a LAN to their broadband network. Simply
|
|
remove your hub or coax cable from view, and let them do what they
|
|
need to do, then connect everything else up after they leave.
|
|
</I> </blockquote>
|
|
<p>
|
|
This was probably a little of an overstatement. I know only of 1 company
|
|
that has this as a policy, but have heard of people having problems with
|
|
some of the others. I have even recently been informed of one company
|
|
that is *quite* Linux friendly and will "encourage the use of Linux as
|
|
firewall/routers" as well as "allow and assist individuals & companies to
|
|
setup there own Web servers, either at their permises or ours. We offer
|
|
web hosting and will assist in registering a domain name". So, I
|
|
obviously made an improper, blanket statement which does not represent the
|
|
attitudes or policies of all companies.
|
|
<blockquote> <I>
|
|
Some other interesting tidbits of information about cable modems and
|
|
cable companies:<BR>
|
|
1. Do not expect support for running a LAN over the cable modem
|
|
from the cable company. They don't want you to do it, they
|
|
won't help you do it.<BR>
|
|
2. Do not expect to put up a web server to be accessed by from
|
|
the internet. You are a client, not a server. This
|
|
technology,though fully capable of performing in this
|
|
manner, is not being deployed for use this way.
|
|
</I> </blockquote> <P>
|
|
Again, this is a blanket statement that *does not* apply to all cable
|
|
companies. There is a good reason for those companies who do hold this
|
|
policy, and perhaps I should have gone into more detail. When you get a
|
|
cable modem from a cable company, *typically* you are agreeing to lease
|
|
the equipment from them under similar agreement as you rent the TV set top
|
|
box for cable television reception. The agreement typically states that
|
|
you are not allowed to run the cable to any other TV for which you do not
|
|
rent a box. The same goes for the cable modems. They are agreeing to
|
|
lease you 1 modem for 1 computer. Setting up a firewall/proxy server to
|
|
enable other systems access is exactly like placing a diplexor on you TV
|
|
set, and running the cable to another television. That is a violation of
|
|
the agreement, and is illegal, immoral, and unethical; it's stealing. And
|
|
again, I re-iterate, this is not true for *all* companies. Check with
|
|
your cable company, they should be happy to explain their policies to you.
|
|
<p>
|
|
I don't really think you *should* expect to be able to do either of these
|
|
though, unless the cable company has provisions in place. You are
|
|
agreeing to connect one computer to their network as a client. Anything
|
|
more, you should expect to pay more, as they are providing you with
|
|
increased capabilities. Just like the phone company charges more per
|
|
added service (*69, caller ID, etc) so should the cable companies.
|
|
Personally, I think that average rate of US$40-$50 a month for the
|
|
equivalent of a T1 to my house is an awesome deal. If I want more
|
|
capability, I should expect and be willing to pay more.
|
|
<blockquote> <I>
|
|
Cable companies WILL shut you down for running a server of
|
|
anykind on your end of the network, and it can be *forever* :(
|
|
</I> </blockquote> <P>
|
|
Again, I spoke without clarification. Obviously it depends upon the
|
|
policies of your local cable company. I know of 2 or 3 instances where
|
|
this has been the case. By stating the above, I was trying to warn of the
|
|
possible consequences of violating the contract with the cable company.
|
|
If the cable company specifies in the contract what you are allowed to do
|
|
and what you are not allowed to do, you should expect to deal
|
|
with the consequences of violating the agreement.
|
|
<blockquote> <I>
|
|
Spammers love cable/broadband networks. There have been
|
|
several cases where a broadband network customer has been
|
|
used by spammers and were subsequently shutdown for life by
|
|
the cable company. What happens is the person decides to
|
|
connect their private LAN to the cable modem but sets the
|
|
firewall up incorrectly. Spammers search cable/broadband
|
|
networks for proxy servers/firewalls (Usually Win95/NT) that
|
|
allow incoming connections and then use that system to spam
|
|
the entire cable/broadband network making the spam appear as
|
|
if you sent it.
|
|
</I> </blockquote> <P>
|
|
Spammers love any insecure system or network. Broadband Technology
|
|
though, for the first time has allowed people more extensive and
|
|
closer contact with other people on the internet. When you dial into an
|
|
ISP with a normal modem, it's a little more difficult for devious minded
|
|
people to take advantage of other users. But with cable modems, you now
|
|
have hundreds and/or thousands of people all on the same private network,
|
|
all with similars IP addresses, many of whom, now leave their systems
|
|
connected for much longer periods of time. This makes it much easier for
|
|
crackers, and other mischievous people, to take advantage of anyone who
|
|
isn't running a properly secured system.
|
|
<blockquote> <I>
|
|
Usually you will be given 1 warning by the
|
|
cable company, but there have been cases where none was
|
|
given and the customer was completely shut down.
|
|
</I> </blockquote>
|
|
I have heard of this happening on several occasions, where usually the
|
|
person was running an improperly configured firewall, and spammers used
|
|
their system to launch e-mail to thousands of people connected to cable
|
|
companies' private broadband networks. If I'm paying $40 or $50 a month
|
|
for this service, I, as a paying customer do not want to receive
|
|
solicitous e-mail (spam) from some one else, especially if they are on the
|
|
same broadband network as I. I would complain to my cable company about
|
|
it and expect them to do something. It was these exact circumstances that
|
|
has led to several people having their cable modems permanently removed.
|
|
<blockquote><I>
|
|
Current modems are capable of transmitting at 10Mbs in both
|
|
directions, but are usually deployed throttled back to a
|
|
trasmit speed of 300Kbs and a recieve speed of 1.5Mbs. You
|
|
want more bandwidth, they'll be happy to charge you more
|
|
money :)
|
|
</I> </blockquote> <P>
|
|
Personally, I think this is very fair. The cable companies are providing
|
|
us with a service. We, as consumers, have to pay for this service. Just
|
|
like my electric bill, if I use a lot of electric service, I pay a lot of
|
|
money; or like the telephone company, if I have more features or want a
|
|
T1, I pay more money than if I only had a normal telephone line. It's
|
|
the same with cable modem technology, the capability is there for 10Mbps
|
|
bandwidth in both directions. The technology is also there to regulate
|
|
that flow. I expect the cable companies to use that technology. If I
|
|
want LAN speeds to my house, I should expect to have to pay for it.
|
|
<p>
|
|
Again, I want to apologize for not clarifying my previous statements a
|
|
little more. Please check with your local cable company before you do
|
|
anything like connecting your private LAN to theirs. There are as many
|
|
different policies as there are cable companies, so make sure to
|
|
explicitly ask if what you want to do is permitted. This is a great
|
|
technology and has tremendous benefits. Playing by the rules that the
|
|
cable company has put in place will only help the technology spread. By
|
|
violating the rules, you run the risk of losing access to it, as well as
|
|
making it more difficult for the cable comapanies to contiue selling this
|
|
service. Like any other market driven product, if there's no money in it,
|
|
or it costs too much to implement, it will fall by the wayside, and no one
|
|
benefits. By not folling the rules, we as customers can make it cost
|
|
prohibitive for implementation, and conversely, by following the rules, we
|
|
create more market demand, which in turn, continues pushing the technology
|
|
forward, and everyone benefits.
|
|
<PRE>
|
|
#include <std_disclaimer.h>
|
|
</PRE>
|
|
I don't pretend to know all the policies of all the cable companies. I
|
|
don't assume to speak for any of the,, nor do I tell them how to operate.
|
|
My opinions are my own, and no one else's. Dammit Jim, I am a Unix
|
|
sysadmin, not a sales rep :)
|
|
<p>
|
|
Please feel free to send me questions, comments, criticisms, etc.
|
|
<p>
|
|
Paul
|
|
|
|
<P> <HR> <P>
|
|
<!--====================================================================-->
|
|
<IMG ALT=" " SRC="../gx/envelope.gif">
|
|
Date: Thu, 5 Feb 1998 15:01:30 -0500<BR>
|
|
From: Jack Chaney, <A HREF="mailto:JAC14@chrysler.com">
|
|
JAC14@chrysler.com</A><BR>
|
|
Subject: <B>New Direction</B>
|
|
<p>
|
|
I heard on the radio last night, an announcement that IBM has just
|
|
successfully masked, produced and tested their newest piece of
|
|
silicon. The processor is based on the PowerPC design and is reported
|
|
to run at 1000MHz. Knowing what I know about the PowerPC and its
|
|
various flavours, I think it would do to examine the idea of porting
|
|
Linux in a native coded version to this processor platform. The
|
|
pricing of this chip with a heavy duty operating environment could give
|
|
the Alpha a real run for its money.
|
|
<p>
|
|
The PowerPC (for those who don't know) is a RISC based processor with
|
|
three major operation blocks, each capable of independent operation.
|
|
This enables the instruction flow to become parallelized so as many as
|
|
three instructions can be done simultaneously, and because it is a RISC
|
|
processor the instructions have been optimised so most occur in only
|
|
one or two cycles. The other element of the design is to have an
|
|
extremely large cache memory on-board the processor to reduce fetch
|
|
time for instructions. To give an idea of the improvement in speed
|
|
realised by this method, a PowerPC emulates the Intel part by keeping
|
|
an interpreter block in the cache memory of the chip and interprets the
|
|
Intel object code at comparable speeds of the Intel parts. The lure of
|
|
creating a native Linux for this processor has crossed my mind on a
|
|
number of occasions prior to the IBM announcement, and now I hope with
|
|
encouragement this can move from fantasy to fact.
|
|
<p>
|
|
Jack Chaney
|
|
|
|
<P> <HR> <P>
|
|
<!--====================================================================-->
|
|
<IMG ALT=" " SRC="../gx/envelope.gif">
|
|
Date: Fri, 6 Feb 1998 08:50:00 -0500 <BR>
|
|
From: Hampton, Mike, <A HREF="mailto:hamptom1@INDY.NAVY.MIL">
|
|
hamptom1@INDY.NAVY.MIL</A> <BR>
|
|
Subject: <B>Picking a nit</B>
|
|
<p>
|
|
Maybe I should have called the subject of this "pet peeve" or something
|
|
like that. What I am writing about is a simple grammatical error that I
|
|
have seen many people make, but one that shouldn't appear in the Gazette
|
|
or any published effort and that is the incorrect use of "it's" when the
|
|
author should have used "its." An example is in the following sentence
|
|
from a recent issue:
|
|
<p>
|
|
"This was necessary in order for a *nix version to behave to
|
|
applications like it's counterparts so applications could run
|
|
everywhere."
|
|
<p>
|
|
If you take the "it's" and expand it, the sentence would read:
|
|
<p>
|
|
"This was necessary in order for a *nix version to behave to
|
|
applications like it is counterparts so applications could run
|
|
everywhere."
|
|
<p>
|
|
The sentence no longer makes sense. Authors should remember that "it's"
|
|
is a contraction of "it is." If they want a possessive of "it," they
|
|
should use "its." I have also seen instances of authors using the
|
|
apostrophe-s when they intended to form a plural but made a possesive
|
|
instead (for example, using menu's, a possesive, instead of menus, the
|
|
proper plural form). Like I said before, these are very simple and
|
|
common errors, but ones which I feel can hurt the author's credibility.
|
|
<p>
|
|
Before anybody gets too defensive, let me say that as an employee of a
|
|
major defense contractor, I have made the above error and have had it
|
|
pointed out to me. Maybe that's why it stands out so much when I see it
|
|
now.
|
|
<p>
|
|
Now I'll put down my pen and let others point out my errors.
|
|
<p>
|
|
Mike Hampton
|
|
|
|
<P> <HR> <P>
|
|
<!--====================================================================-->
|
|
<IMG ALT=" " SRC="../gx/envelope.gif">
|
|
Date: Fri, 06 Feb 1998 08:12:09 -0600<BR>
|
|
From: Tyree Gwyn, <A HREF="mailto:bounti@myriad.net">
|
|
bounti@myriad.net</A> <BR>
|
|
Subject: <B>love your site!!</B>
|
|
<p>
|
|
i very much enjoy the information found on LG!! even though i am posting
|
|
from a windows machine, i use linux(redhat 5.0) the majority of the
|
|
time. i just happen to be at work, at this time.
|
|
<p>
|
|
anyway, being a newbie to this whole linux scheme, i have used your
|
|
site, dejanews, oreilly books, and many howto's to get my system up to
|
|
my specs. linux is very exciting, and has alot of promise. please keep
|
|
up the good work.
|
|
<p>
|
|
Tyree
|
|
|
|
<P> <HR> <P>
|
|
<!--====================================================================-->
|
|
<IMG ALT=" " SRC="../gx/envelope.gif">
|
|
Date: Sun, 08 Feb 98 17:34:41 -0500<BR>
|
|
From: Leon C. Isaacson, <A HREF="mailto:lci2@global.co.za">
|
|
lci2@global.co.za</A> <BR>
|
|
Subject: <B>Incomplete Book Reviews</B>
|
|
<p>
|
|
In Linux Gazette 25, the review of "A Practical Guide to Linux" , by Mark
|
|
Sobell, fails to supply the publishers name, publication date, and price. I
|
|
enjoyed the review, but surely this information should be included as a
|
|
matter of course. Given your reviewers laudatory comments, how or where can
|
|
the rest of us hope to acquire this book?
|
|
<p>
|
|
Leon
|
|
<blockquote> <I>
|
|
(I agree. He should have included that information. Here's what I know:
|
|
<BR>
|
|
Publisher: Addison Wesley Longman, info@awl.com, http://www.awl.com/<BR>
|
|
Price: $38.00 US<BR>
|
|
ISBN: 0-201-89549-B<BR>
|
|
-- Editor)</I> </blockquote>
|
|
|
|
<P> <HR> <P>
|
|
<!--====================================================================-->
|
|
<IMG ALT=" " SRC="../gx/envelope.gif">
|
|
Date: Fri, 21 Nov 1997 18:59:53 -0500<BR>
|
|
From: Timothy D. Gray, <A
|
|
HREF="mailto:timgray@lambdanet.com">timgray@lambdanet.com </A>
|
|
Subject: <B>Getting Linux to the public...</B>
|
|
<P>
|
|
Has anyone noticed that when your friends see your neat-o Linux system
|
|
with the nice 17 inch monitor, high quality video card, and fast
|
|
computer that when they say, "Wow! that is nice, and you can do almost
|
|
anything on that!" you cringe with the fact that they are going to want
|
|
you to put it on their system? now mind you, I dont cringe on sharing
|
|
the best O/S on the planet, In fact I want everyone to use Linux. It's
|
|
just that almost all X windows software is written for 1024 X 768 or
|
|
higher resolution video screens and that 99% of those wanting to use
|
|
Linux and X windows only have a 14" monitor that can barely get past
|
|
640X480 at 256 colors. I tried several times to get friends into Linux
|
|
and X but to no avail because the software developed for X is for those
|
|
that have Gobs of money for good video boards and humoungous monitors.
|
|
It's not a limitation of Linux or X, it that the software that is
|
|
developed for these platforms are by professionals or professional users
|
|
that can afford that new 21 inch monitor at the computer store. We as a
|
|
group might want to see software scaled back to the 640X480 crowd.. then
|
|
Linux would take the world by storm.. Until then It's going to be
|
|
limited to us pioneers and Scientists...
|
|
<P>
|
|
Tim Gray
|
|
|
|
<P> <HR> <P>
|
|
<!--====================================================================-->
|
|
<IMG ALT=" " SRC="../gx/envelope.gif">
|
|
Date: Wed, 25 Feb 1998 15:42:09 +0000<BR>
|
|
From: Jaime E. Villate,<A
|
|
HREF="mailto:villate@fe.up.pt">villate@fe.up.pt</A><BR>
|
|
Subject: <B>uptime record</B>
|
|
<P>
|
|
In Issue 25 (February 98) Sean Horan wrote about a Linux
|
|
system that ran continously for 274 days. Here is a quote
|
|
from Bruce Perens (president of Debian, works at Pixar) that
|
|
I took from http://www.debian.org
|
|
<blockquote>
|
|
"I thought three months without a reboot was a big deal.
|
|
When I mentioned it to our developers, one of them showed
|
|
me details about his system. It was up for 458 days, and was
|
|
halted to move it to another floor. The network and disk
|
|
device drivers had handled tens of millions of interrupts in
|
|
that time."
|
|
</blockquote>
|
|
It would be interesting to know what the record is for other
|
|
operating systems older than Linux.
|
|
<P>
|
|
Jaime Villate, University of Porto, Portugal<BR>
|
|
http://www.fe.up.pt/~villate/
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
<center>Published in <i>Linux Gazette</i> Issue 26, March 1998</center>
|
|
<!--====================================================================-->
|
|
<P> <hr> <P>
|
|
<A HREF="./index.html"><IMG SRC="../gx/indexnew.gif" ALT="[ TABLE OF
|
|
CONTENTS ]"></A>
|
|
<A HREF="../index.html"><IMG SRC="../gx/homenew.gif" ALT="[ FRONT
|
|
PAGE ]"></A>
|
|
<A HREF="./lg_tips26.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
|
<P>
|
|
<h5>This page written and maintained by the Editor of <I>Linux Gazette</I>,
|
|
<A HREF="mailto: gazette@ssc.com">gazette@ssc.com</A><BR>
|
|
Copyright © 1998 Specialized Systems Consultants, Inc. </H5>
|
|
<P>
|
|
<H4>"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
|
</H4>
|
|
<P> <hr> <P>
|
|
|
|
<!-- QUICK TIPS SECTION ================================================== -->
|
|
<center>
|
|
<H1><A NAME="tips"><IMG ALIGN=MIDDLE ALT="" SRC="../gx/twocent.gif">
|
|
More 2¢ Tips!</A></H1> <BR>
|
|
Send Linux Tips and Tricks to <A HREF="mailto:gazette@ssc.com">
|
|
gazette@ssc.com
|
|
</A></center>
|
|
|
|
<p><hr><p>
|
|
<H3>Contents:</H3>
|
|
<ul>
|
|
<li><a HREF="./lg_tips26.html#apache">Apache SSL extensions...</a>
|
|
<li><a HREF="./lg_tips26.html#locate">Locate</a>
|
|
<li><a HREF="./lg_tips26.html#print">Re: Printing Problems</a>
|
|
<li><a HREF="./lg_tips26.html#net">Re: LG25, Netscape on the Desktop</a>
|
|
<li><a HREF="./lg_tips26.html#vax">Re: Linux and VAX 3400 and 3300</a>
|
|
<li><a HREF="./lg_tips26.html#binary">Binary File Access with dd</a>
|
|
<li><a HREF="./lg_tips26.html#find">Follow up to find 2c-tip</a>
|
|
<li><a HREF="./lg_tips26.html#ispell">ispell & Pine 3.96</a>
|
|
<li><a HREF="./lg_tips26.html#xvscan">XVSCAN: Combining different parts
|
|
together </A>
|
|
<li><a HREF="./lg_tips26.html#scape">2c-tip: Netscape on the Desktop</A>
|
|
<li><a HREF="./lg_tips26.html#win">Linux and Win95</A>
|
|
<li><a HREF="./lg_tips26.html#su">My $0.02 tip: Graphical su</A>
|
|
<li><a HREF="./lg_tips26.html#eggs">Easter Eggs in Netscape</A>
|
|
<li><a HREF="./lg_tips26.html#core">Core Dumps</A>
|
|
</ul>
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
|
|
<a name="apache"></a>
|
|
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
|
Apache SSL extensions...
|
|
</H3>
|
|
Date: Fri, 27 Feb 1998 15:49:41 -0800<BR>
|
|
From: Glenn D'mello, <A HREF="mailto:glenn@arbornet.org">
|
|
glenn@arbornet.org</A> <BR>
|
|
|
|
<blockquote> <I>
|
|
From Frank:
|
|
My problem is this one ... I've gone bananas in trying to find a
|
|
document that explains how to install, in a step by step fashion, the
|
|
Apache
|
|
SSL "extensions" to one of my Apache WWW Webservers (the performance
|
|
increase is awesome) can you or anyone that reads this
|
|
help... </I> </blockquote>
|
|
<P>
|
|
This is how I did it:
|
|
<ol>
|
|
<li>Get SSLeay 0.8.0 or later from
|
|
ftp://ftp.psy.uq.oz.au/pub/Crypto/SSL
|
|
<li>Build and test and install it!
|
|
<li>Get Apache 1.2.5 source
|
|
<li>Get Apache SSLeay extensions from
|
|
ftp://ftp.ox.ac.uk/pub/crypto/SSL/apache_1.2.5+ssl_1.13.tar.gz
|
|
<li>Unpack it in the apache-1.2.5 source directory and patch Apache as
|
|
per the README.
|
|
<li>Configure and build it.
|
|
<li>Read the docs before building (set your paths, etc, etc)
|
|
</ol>
|
|
Worked the first time too!
|
|
Hope this helps:
|
|
<P>
|
|
Glenn.
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
|
|
<a name="locate"></a>
|
|
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
|
Locate
|
|
</H3>
|
|
From: John Corey, <A HREF="mailto:norm@comanche.dyn.ml.org">
|
|
norm@comanche.dyn.ml.org</A>
|
|
<P>
|
|
One of my annoyances with the locate program have been that with it,
|
|
users can see files they have no access to otherwise. So, I have
|
|
deviced a little <A HREF="./locate.diff">patch</A> to the original
|
|
sources to fix that, along with a
|
|
few other annoyances. It inherently does a few other things as well.
|
|
It will only list files that do currently exist (not just files that
|
|
existed when updatedb was last run). Also, it adds the option -l to
|
|
locate which simply performs a ls -l on the files returned.
|
|
<P>
|
|
To compile, get the sources from
|
|
ftp://prep.ai.mit.edu/pub/gnu/findutils-4.1.tar.gz .
|
|
Extract that, then apply the attached diff to it with: patch <
|
|
locate.diff, and compile per the instructions within findutils.
|
|
<P>
|
|
The only file modified is locate.c, so you can skip the installation
|
|
process if you already have updatedb/locate installed, and just simply
|
|
replace your existing locate binary with the new one (keeping a backup
|
|
of the original, should anything evil happen).
|
|
<P>
|
|
Enjoy
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
|
|
<a name="print"></a>
|
|
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
|
Re: Printing Problems
|
|
</H3>
|
|
<P>
|
|
Date: Wed, 04 Feb 1998 22:05:40 +0100 <BR>
|
|
From: M.H.M. Verhoeven, <A HREF="mailto:leeuweri@stad.dsl.nl">
|
|
leeuweri@stad.dsl.nl</A>
|
|
<blockquote> <I>
|
|
Anyone that can help me. I'd love to hear it. I try running
|
|
lpr, but everytime I get no name for local machine.
|
|
How do I set this and/or what is the problem.
|
|
-- Manish Oberoi </I> </blockquote>
|
|
<p>
|
|
I had the same problems with printing (no name for local machine).
|
|
You should put a entry for your machine in /etc/hosts, and your problem
|
|
is solved. In my case, the name of my computer had changed, but
|
|
/etc/hosts still contained the old name for my machine.
|
|
<p>
|
|
Gertjan
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
|
|
<a name="net"></a>
|
|
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
|
Re: LG25, Netscape on the Desktop
|
|
</H3>
|
|
<P>
|
|
Date: Thu, 05 Feb 1998 00:26:03 +0100 <BR>
|
|
From: Soenke J. Peters, <A HREF="mailto:peters@on-line.de">
|
|
peters@on-line.de</A>
|
|
<p>
|
|
I use a similar trick to start up the browser-/mail-/news-window from
|
|
three different buttons in my windowmanager's panel.
|
|
For the mail-window, you have to start the script with 'mailbox:' as the
|
|
url parameter, for the news-window simply use 'news:'.
|
|
For urls beginning different from the above, netscape opens the normal
|
|
browser window.
|
|
<p>
|
|
Soenke J. Peters, Hamburg, Germany
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
|
|
<a name="vax"></a>
|
|
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
|
RE: Linux and VAX 3400 and 3300
|
|
</H3>
|
|
<P>
|
|
Date: Thu, 05 Feb 1998 10:11:00 -0700 <BR>
|
|
From: James Gilb, <A HREF="mailto:p27451@email.sps.mot.com">
|
|
p27451@email.sps.mot.com</A>
|
|
To: dennis.j.smith@ArthurAndersen.com
|
|
<blockquote>
|
|
<I>I have just purchased a MicroVAX 3400 and 3300. I would like to put Linux
|
|
on these two systems. Can you provide any help in this aspect.</I>
|
|
</blockquote>
|
|
<P>
|
|
I believe those are MIPS 3000 boxes, try the Linux VAX Port Homepage at
|
|
http://ucnet.canberra.edu.au/~mikal/vaxlinux/home.html and the
|
|
Linux/MIPS project at http://lena.fnet.fr/
|
|
<p>
|
|
My guess is that you will need to get your hands dirty on this one. You
|
|
could also try NetBSD, they may have a port now.
|
|
<p>
|
|
If they are not MIPS boxes, then you could have a real challenge on you
|
|
hands, but then isn't that half the fun of Linux?
|
|
<p>
|
|
James Gilb
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
|
|
<a name="binary"></a>
|
|
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
|
Binary File Access with <tt>dd</tt>
|
|
</H3>
|
|
<p>Date: February 9, 1998<br>
|
|
From: Leonard R Budney <a
|
|
href="mailto:budney@fore.com">lbudney@fore.com</a><br></p>
|
|
|
|
<p><tt>dd</tt> stands for <em>Disk Dump.</em> Or if it doesn't it
|
|
should. The "main" use for <tt>dd</tt> is to duplicate a floppy
|
|
disk, bit for bit, to a file. You probably used it to create boot
|
|
disks when you installed Linux for the first time, unless you used
|
|
its much less functional cousin <tt>rawrite.</tt> If you're sick of
|
|
keeping boxes of floppies around, you can use <tt>dd</tt> in
|
|
reverse, and throw the floppy away. Depending on permissions, you
|
|
might have to do this as root.</p>
|
|
|
|
<pre>dd if=/dev/fd0 of=quicken_install_disk_1.img bs=1440k</pre>
|
|
|
|
<p>The <tt>if</tt> argument specifies an input file (which defaults
|
|
to the standard input). Naturally, the <tt>of</tt> argument names
|
|
the output file (which defaults to the standard output). Finally,
|
|
the <tt>bs</tt> argument tells <tt>dd</tt> what <em>block size</em>
|
|
to use. Here we set the block size equal to the size of a floppy
|
|
disk, and let <tt>dd</tt> read one block of data.</p>
|
|
|
|
<p>The man page says that the purpose of <tt>dd</tt> is to "convert
|
|
a file while copying it." In English, that means that <tt>dd</tt>
|
|
does <em>not</em> assume a file is made of text! It doesn't look
|
|
for carriage returns to delimit lines, it doesn't stop reading at
|
|
the first binary zero, nothing! This gives us the power to read
|
|
files exactly, byte for byte. It allows us to read a fixed number
|
|
of bytes, or physically to overwrite a file.</p>
|
|
|
|
<p>As just one example, consider /dev/random. That's a nifty Linux
|
|
innovation--a pseudo device that accumulates randomness. Would you
|
|
like to read 10 bytes of random data from /dev/random? It's a
|
|
snap.</p>
|
|
|
|
<pre>dd if=/dev/random of=/tmp/random.bin bs=1 count=10</pre>
|
|
|
|
<p>Note that /dev/random provides binary data, so if we omit the
|
|
<tt>of</tt> argument then that data will probably trash our display.
|
|
Alternately, we could have omitted the <tt>of</tt> argument, but
|
|
piped the output through <tt>cat -v</tt> to escape any non-printable
|
|
characters. In addition to the arguments explained above, we use
|
|
the <tt>count</tt> argument to specify the number of blocks to read.
|
|
In conjunction with a blocksize of 1, <tt>count=10</tt> tells
|
|
<tt>dd</tt> to read exactly 10 bytes.</p>
|
|
|
|
<p>Here's a final example, for the paranoid. When you delete a file
|
|
using <tt>rm,</tt> you only delete the inode pointing to your data.
|
|
The data is still there, on the disk, waiting for somebody with a
|
|
"Disk Doctor" utility to resurrect and read. Does that bother you?
|
|
Well, you should delete your data, not just your file. Again,
|
|
<tt>dd</tt> comes to the rescue. Normally <tt>dd</tt>
|
|
<em>truncates</em> its output file before writing. The argument
|
|
<tt>conv=notrunc</tt> overrides that behavior, and causes
|
|
<tt>dd</tt> to write over any existing data. The following shell
|
|
script combines all of these ideas, and wipes out your file by
|
|
overwriting it five times with pseudorandom data, and then deleting
|
|
it.</p>
|
|
|
|
<pre>
|
|
#!/bin/sh
|
|
FILE=$1
|
|
SIZE=`ls -l $FILE | awk -- '{print \$5;}'`
|
|
{
|
|
for iteration in 1 2 3 4 5
|
|
do
|
|
dd if=/dev/urandom of=$FILE bs=${SIZE} count=1 conv=notrunc
|
|
sync
|
|
done
|
|
} && rm -f $FILE
|
|
</pre>
|
|
|
|
<p>Enjoy!<br>
|
|
Len.</p>
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
|
|
<a name="find"></a>
|
|
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
|
Follow-up to find 2c-tip
|
|
</H3>
|
|
<P>
|
|
Date: Tue, 10 Feb 1998 19:20:44 +0000 <BR>
|
|
From: Markus Pilzecker, <A HREF="mailto:mp@rhein-neckar.netsurf.de">
|
|
mp@rhein-neckar.netsurf.de</A>
|
|
<p>
|
|
in your December issue, one of the 2-cents about find had been:
|
|
<p><blockquote>
|
|
<I>A shorter and more efficient way of doing it uses backticks:</I><BR>
|
|
<tt> grep "string" `find . -type f`</tt><BR>
|
|
<I>Note however, that if the find matches a large number of files you
|
|
may exceed a command line buffer in the shell and cause it to
|
|
complain. </I> </blockquote>
|
|
<p>
|
|
The solution to this is using xargs:
|
|
<pre>
|
|
find <find_roots> <other_options> -print0 | xargs -0 grep <options>
|
|
</pre>
|
|
. xargs only puts as much onto grep's [or whatever else's]
|
|
command line as fits without overflow. Only in the latter case will
|
|
it start a new instance of grep. The trick of the first proposal to
|
|
add ``/dev/null'' to grep's command line to make it print the name
|
|
of the file in work is [mostly] superfluous then, since xargs
|
|
[mostly] puts more than one filename onto grep's command line.
|
|
<p>
|
|
The find option ``-print0'' and the xargs option ``-0'' work together
|
|
to assure correct handling of odd filenames.
|
|
<p>
|
|
Markus
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
|
|
<a name="ispell"></a>
|
|
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
|
ispell & Pine 3.96
|
|
</H3>
|
|
<P>
|
|
Date: Fri, 13 Feb 1998 08:39:34 -0800 (PST) <BR>
|
|
From: Peter Struijk
|
|
<p>
|
|
To use ispell in Pine, go into Pine SETUP (press S, then C),
|
|
search using WhereIs for "speller" (press W) and make sure the value
|
|
set there is "ispell". That will do it.
|
|
<P>
|
|
Peter
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
|
|
<a name="xvscan"></a>
|
|
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
|
XVSCAN: Combining different parts together
|
|
</H3>
|
|
<P>
|
|
Date: Sat, 13 Sep 1997 01:04:29 -0500<BR>
|
|
From: Earl Fryman, <A HREF="mailto:fryman@io.com">fryman@io.com</A> <BR>
|
|
To: xvscanlist@tummy.com
|
|
|
|
<P>
|
|
<blockquote> <I>
|
|
Is it possible to combine two (or more) different parts from
|
|
different pages on same fig?
|
|
For example, if I scan pages and want to print transparencies from
|
|
small part of the text enlarged. Now, if the part 1 is at the end of a
|
|
page and the part 2 is on the following page, I have not been able
|
|
to combine them on one single fig (part 1 and below it part 2).
|
|
How could I do that with xvscan? If the parts are on the same page I have
|
|
used cut, past and crop.<BR>
|
|
--<BR>
|
|
Juha Perkkio, juha.perkkio@mikkeliamk.fi
|
|
</I> </blockquote>
|
|
<P>
|
|
Yes it is posible. Load the first image and select the portion of
|
|
the image to cut. Press Alt-C (hold down Alt key and press C).
|
|
Load the second image and press Alt-V. A frame window the size
|
|
of the cut in the first image will appear. Position the frame where
|
|
you want the image to be pasted, then press Alt-V (again). This even
|
|
works if the two image are of different type (bmp, jpg, gif, etc.).
|
|
<P>
|
|
Earl Fryman
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
|
|
<a name="scape"></a>
|
|
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
|
2c-tip: Netscape on the Desktop
|
|
</H3>
|
|
<P>
|
|
Date: Sun, 15 Feb 1998 19:43:58 -0100<BR>
|
|
From: Victor-A. Bruessow, <A HREF="mailto:Christian.Bruessow@t-online.de">
|
|
Christian.Bruessow@t-online.de</A>
|
|
<P>
|
|
I'm using this little bash script to start Netscape:
|
|
<pre>
|
|
#!/bin/sh
|
|
if [ $1 ] ; then
|
|
REMOTE_COMMAND="openURL($@,new-window)"
|
|
else
|
|
REMOTE_COMMAND="openBrowser"
|
|
fi
|
|
|
|
netscape -remote $REMOTE_COMMAND || netscape $@
|
|
</PRE>
|
|
I think it has some advantages over the script from Tim Hawes:
|
|
<ul>
|
|
<li>no need to look for a lock file, which means:
|
|
<li>it even starts Netscape, if there is a stale lock file from a crashed
|
|
browser session :-)
|
|
<li>you can call it without any arguments, it doesn't matter if there is
|
|
a running Netscape or not
|
|
("openURL($@,new-window)" will cause an error, if "$@" is empty, so I
|
|
use "openBrowser" instead)
|
|
</ul>
|
|
Christian
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
|
|
<a name="win"></a>
|
|
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
|
Linux and Win95
|
|
</H3>
|
|
<P>
|
|
Date: Wed, 18 Feb 1998 14:55:22 +1300<BR>
|
|
From: Justin Lodge, <A HREF="mailto:justin.lodge@optimation.co.nz">
|
|
justin.lodge@optimation.co.nz</A>
|
|
<P>
|
|
Rexson
|
|
Re: Your Question e-mail to Linux Gazette
|
|
<P>
|
|
Your big problem is that Win95 has probably helped itself to the entire
|
|
drive already - so there is no space left available to install extra
|
|
Linux partitions.
|
|
<P>
|
|
What you really should do first is to back up all the existing
|
|
partitions using a tape or a Zip or a Jaz drive. Let me guess you don't
|
|
have one of these..... if you can beg/borrow/steal one temporarily and
|
|
back everything up before you do anything that would be good.
|
|
<P>
|
|
Maybe your D: partition doesn't hold much and you can transfer the data
|
|
to the C: drive where Win95 is installed - this will allow you to re-use
|
|
the D: partition for Linux.
|
|
<P>
|
|
Next - buy/beg/borrow/steal a recent copy of Red Hat for Linux (make
|
|
sure you get the book and the floppy disks that come with the CD) and
|
|
the Doctor Linux book.
|
|
<P>
|
|
Red Hat has a beginners book with it that explains a lot that you need
|
|
to know to install Linux and a set of excellent scripts that lead you
|
|
though the installation.
|
|
<P>
|
|
doctor linux has good beginners sections and more complex ones about
|
|
dual booting Win95 and Linux
|
|
<P>
|
|
I would recommend that you DO NOT try to make the machine dual boot - it
|
|
could cock-up the win95 installation
|
|
but these articles will help you understand the mechanics around this
|
|
area. The HOWTO articles in Doctor Linux are all available on the
|
|
Internet if you don't want to buy a book but having a hard copy to
|
|
reference is much easier.
|
|
<P>
|
|
once you have re-located any useful data off the D: to the C: then use
|
|
the disk partitioning tool that comes with red hat to de-allocate the D:
|
|
partition and then create the root, usr, swap and home (and any others)
|
|
in this area. From memory I believe that the root partition has to be in
|
|
a primary partition but all the rest can be logical partitions contained
|
|
in a single "extended" partition.
|
|
<P>
|
|
This re-allocation of partitions is EXTREMELY dicey - make absolutely
|
|
sure you understand which partition is C: and which is D: IF you
|
|
de-allocate C by mistake then it is almost definitely un-recoverable
|
|
unless you have Norton for Win95 or something similar that can repair
|
|
the damage.
|
|
<P>
|
|
Create a boot diskette using red hat so that when you want to run Linux
|
|
you just plug it in and re-boot the machine - booting off the floppy may
|
|
seem awkward but it is much much faster than any version of Windoze.
|
|
<P>
|
|
Any one else using the family using the machine will not have this boot
|
|
diskette and will not be able to see your
|
|
partitions from Win95 and won't even know that Linux is there. This is
|
|
how I keep my family off my copy of Linux.
|
|
<P>
|
|
Justin
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
|
|
<a name="su"></a>
|
|
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
|
My $0.02 tip: Graphical su
|
|
</H3>
|
|
<P>
|
|
Date: Wed, 18 Feb 1998 22:01:25 +0100 (CET)<BR>
|
|
From: Andreas Kostyrka, <A HREF="mailto:andreas@rainbow.studorg.tuwien.ac.at">
|
|
andreas@rainbow.studorg.tuwien.ac.at</A>
|
|
<P>
|
|
Sometimes one want to do su but be able to use X11 programs like RH
|
|
control-panel. There are several ways to accomplish this:
|
|
*) The hard way: su - and copy&paste the xauth:
|
|
<PRE>
|
|
$ xauth list $DISPLAY # mark the output
|
|
$ su -
|
|
# xauth add <paste the above line>
|
|
# export DISPLAY=<display mentioned in the pasted line.)
|
|
</PRE> <P>
|
|
*) The overkill net way:
|
|
<PRE>
|
|
$ ssh localhost -l root
|
|
</PRE> <P>
|
|
This depends upon you haveing installed ssh (ftp.replay.com is the site
|
|
where one gets the crypto stuff for RH Linux in .rpms), and is probably
|
|
not that fast, as it uses a X11 proxy forwarding server.
|
|
<P>
|
|
*) The graphical (XDM) way, or the way to show off for your WinNT friends:
|
|
<PRE>
|
|
$ Xnest :10 -query localhost &
|
|
</PRE>
|
|
:10 must be perhaps customized if it is already in use.
|
|
localhost is your xdm host.
|
|
This should work if you use xdm for login. (==You have a graphical login
|
|
screen.)
|
|
<P>
|
|
Andreas Kostyrka
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
|
|
<a name="eggs"></a>
|
|
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
|
Easter Eggs in Netscape
|
|
</H3>
|
|
<P>
|
|
Date: Wed, 18 Feb 1998 13:32:57 -0800 (PST)<BR>
|
|
From: Eric Geyer, <A HREF="mailto:corduroy@sfo.com">corduroy@sfo.com</A>
|
|
<P>
|
|
I saw the list of Easter Eggs in Netscape, and I have two more, both much less
|
|
useful than the ones you listed.
|
|
<PRE>
|
|
about:mozilla
|
|
</PRE>
|
|
On all the Unix netscapes I've seen, it changes the Netscape logo in the upper
|
|
right.
|
|
<PRE>
|
|
about:jzw
|
|
</PRE>
|
|
This will take you to Jamie Zawinski's homepage, and will change the Netscape
|
|
logo on Unix netscape except for version 4.
|
|
<P>
|
|
Just thought you would like to know...
|
|
<P>
|
|
Eric Geyer
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
|
|
<a name="core"></a>
|
|
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
|
Core Dumps
|
|
</H3>
|
|
<P>
|
|
Date: Thu, 19 Feb 1998 13:56:51 PST<BR>
|
|
From: Marty Leisner, <A
|
|
HREF="mailto:leisner@sdsp.mc.xerox.com">leisner@sdsp.mc.xerox.com</A>
|
|
<P>
|
|
I was annoyed on Linux that file(1) couldn't tell what file
|
|
dumped core if a core dump was seen.
|
|
<P>
|
|
For a while, I was doing strings | head and guess at it by inspection.
|
|
<P>
|
|
But size will do the job:
|
|
<PRE>
|
|
: leisner@dw;size core
|
|
text data bss dec hex filename
|
|
45056 295036 0 340092 5307c core (core file invoked as minicom - dpp2)
|
|
</PRE>
|
|
<P>
|
|
marty
|
|
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
<center>Published in <I>Linux Gazette</I> Issue 26, March 1998</center>
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
<A HREF="./index.html"><IMG SRC="../gx/indexnew.gif" ALT="[ TABLE OF
|
|
CONTENTS ]"></A> <A HREF="../index.html"><IMG SRC="../gx/homenew.gif"
|
|
ALT="[ FRONT PAGE ]"></A> <A HREF="./lg_mail26.html"><IMG SRC="../gx/back2.gif" ALT=" Back "></A>
|
|
<A HREF="./lg_bytes26.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
|
|
|
<P> <hr> <P>
|
|
<h5>This page maintained by the Editor of <I>Linux Gazette</I>,
|
|
<A HREF="mailto: gazette@ssc.com">gazette@ssc.com</A><BR>
|
|
Copyright © 1998 Specialized Systems Consultants, Inc. </H5>
|
|
<P>
|
|
<H4>"Linux Gazette...<I>making Linux just a little more fun!</I>"</H4>
|
|
<HR>
|
|
<center>
|
|
<table cellpadding=7><tr><td>
|
|
<IMG SRC="../gx/bytes.gif" border=1 ALT="News Bytes">
|
|
</td><td>
|
|
<H3>Contents:</H3>
|
|
<ul>
|
|
<li><a HREF="./lg_bytes26.html#general">News in General</a>
|
|
<li><a HREF="./lg_bytes26.html#software">Software Announcements</a>
|
|
</ul>
|
|
</td></tr></table>
|
|
</center>
|
|
|
|
<a name="general"></a>
|
|
<p><hr><p>
|
|
<!-- =================================================================== -->
|
|
<center><H3> News in General </H3></center>
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<center><IMG ALT=" " SRC="./gx/cover48.jpg"></center>
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
April <I>Linux Journal</I>
|
|
</H3>
|
|
<P>
|
|
The April issue of <A HREF="http://www.linuxjournal.com/"><I>Linux
|
|
Journal</I></A> will be hitting the newsstands March 6.
|
|
The focus of this issue is Workplace Solutions with
|
|
articles on Marketing Linux, WordPerfect 7, Satellite Remote Sensing,
|
|
Linux in Biomedical Labs and much more. Check out the
|
|
<A HREF="http://www.ssc.com/lj/issue48/index.html">Table of Contents</A>.
|
|
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
Washington, DC Linux Users Group InstallFest
|
|
</H3>
|
|
<p>
|
|
1 Feb 1998 <BR>
|
|
On March 28, 1998, the Washington DC area Linux User Group (DC LUG)
|
|
will have its next Linux Installation Fest. Volunteer experts from
|
|
several local Linux user groups will assist computer users interested
|
|
in trying out Linux, the operating system that Byte Magazine, Wired,
|
|
PC Magazine and other industry publications agree is a significant
|
|
software phenomenon. Bring your PC and leave with Linux co-installed,
|
|
or just visit the demo room to see what Linux is all about.
|
|
<p>
|
|
Started as an exercise in Internet-based collaboration among hundreds
|
|
of software developers around the globe, Linux has acquired a
|
|
reputation for superior power and robustness, along with a
|
|
relentless pace of improvements, a combination rarely matched by the
|
|
mainstream software Unix and Windows NT industry.
|
|
<p>
|
|
Linux has attracted an estimated 3 to 15 million users, and also
|
|
garnered commercial support, evidenced by several shrinkwrap vendors
|
|
with shelf space in mass-market computer stores. Even though in
|
|
most cases an installation of Linux is a simple procedure, DC LUG
|
|
will help those who may have unusual configurations or simply
|
|
some trepidations about jumping in. Representatives from RedHat
|
|
Software, one of Linux vendors, will also attend and provide advice.
|
|
<p>
|
|
The InstallFest will be held at the Uniformed Services University of
|
|
the Health Sciences, the medical school at the Bethesda Naval Medical
|
|
complex, just inside the Beltway between Wisconsin and Connecticut
|
|
Avenues.
|
|
<p>
|
|
Doors open at 10 AM through 4 PM, Saturday 28 March 1998. See
|
|
http://www.tux.org/fest for details and a requested pre-registration
|
|
form.
|
|
<p>
|
|
For more information: <BR>
|
|
David Lesher, <A HREF="mailto:wb8foz@nrk.com">wb8foz@nrk.com</A>, (301)
|
|
608-9775<BR>
|
|
Przemek Klosowski, <A HREF="mailto:przemek@tux.org">przemek@tux.org</A>, (301) 975-6249
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
Linux in the News
|
|
</H3>
|
|
A new spot to get Linux news information is <A
|
|
HREF="http://www.eklektix.com/lwn/">http://www.eklektix.com/lwn/</A>, and
|
|
don't forget <A HREF="http://www.linuxhq.com/">http://www.linuxhq.com/</A>.
|
|
<p>
|
|
<I>Linux for Dummies</I> by Jon "maddog" Hall and others and <I>Linux for
|
|
Dummies Quick Reference</I> by Phil Hughes are out from IDG books. Get your
|
|
copy today.
|
|
<P>
|
|
InfoWorld's 02/02/98 issue names Red Hat Linux 5.0 as it's OS of the year
|
|
for 1997. The article can be found on-line at
|
|
<A
|
|
HREF="http://www.infoworld.com/cgi-bin/displayArchive.pl?/98/05/poy2a.dat.htm">
|
|
http://www.infoworld.com/cgi-bin/displayArchive.pl?/98/05/poy2a.dat.htm</A>
|
|
under the Operating Systems heading.<BR>
|
|
<A HREF="./redhat1.html">Red Hat's Press Release</A>
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
Debian Year 2000 Compliance
|
|
</H3>
|
|
<p>
|
|
1 Feb 1998 <BR>
|
|
Debian's Y2K compliance statement is at
|
|
<A HREF="http://www.debian.org/news.html#19980104">
|
|
http://www.debian.org/news.html#19980104</A>
|
|
<P>
|
|
For more information: <BR>
|
|
Bruce Perens, <A HREF="mailto:bruce@pixar.com">bruce@pixar.com</A>
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
"open source" -- new term for libre software
|
|
</H3>
|
|
<p>
|
|
10 Feb 1998<BR>
|
|
|
|
<A HREF="./perens.html">The Open Source Definition</A>by Bruce Perens
|
|
<p>
|
|
<A HREF="http://earthspace.net/~esr/open-source.html">
|
|
Goodbye, "free software"; hello, "open source"</A> by Eric Raymond
|
|
<P>
|
|
For more information: <BR>
|
|
<A HREF="http://www.opensource.org/">http://www.opensource.org/</A>
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
Linux receives the Softwarove noviny "Product of the year" award
|
|
</H3>
|
|
<p>
|
|
1 Feb 1998 <BR>
|
|
|
|
Date: Mon, 9 Feb 1998 13:53:30 GMT
|
|
<p>
|
|
The Czech computer monthly "Softwarove noviny" awarded the Linux 2.0
|
|
operating system with its award "Product of the Year 1997". This award
|
|
is regularly (for the sixth time this year) assigned to the best
|
|
computer products available on the Czech market without any other
|
|
limitation. The "Product of the Year" award is strictly non-commercial,
|
|
no fee is paid and no application is put in. Among the criteria is
|
|
technical excellence, amount of innovation, price / performance ratio
|
|
as well as the amount of value added by the domestic vendor. The award
|
|
was granted to 18 products for the past year, among them two operating
|
|
systems.
|
|
<p>
|
|
Softwarove noviny (www.softnov.cz) is a prestigious Czech computer monthly.
|
|
Its name (with meaning Software News) is rather traditional than descriptive:
|
|
actually it is a generally oriented computer magazine that focuses on
|
|
software as well as hardware, networking and other aspects of IT
|
|
market. It is published in Czech language and distributed in both Czech
|
|
and Slovak Republics. The Softwarove noviny reader?s group includes
|
|
professional IT users, entrepreneurs and managers. The Softwarove
|
|
noviny is the only Czech computer monthly prepared entirely from
|
|
domestic sources without translated articles from American or German
|
|
industry press. Softwarove noviny magazine publishes now 16,000 copies
|
|
(total population of Czech Republic is 10 million), 85 % of which are
|
|
paid (1/3 by subscribers). About 40 % of the magazine are occupied by
|
|
advertisements of both Czech and worldwide IT companies. According the
|
|
independent surveys from November 1996, the Softwarové noviny magazine
|
|
is the most known IT magazine in the Czech Republic.
|
|
<p>
|
|
The WWW page of Softwarove noviny is available at http://www.softnov.cz/.
|
|
The Czech Linux Users' Group has its WWW page at http://www.linux.cz/czlug/.
|
|
<p>
|
|
For more information: <BR>
|
|
Jan "Yenya" Kasprzak, <A HREF="mailto:kas@informatics.muni.cz">
|
|
kas@informatics.muni.cz</A>, <A HREF="http://www.fi.muni.cz/~kas/">
|
|
http://www.fi.muni.cz/~kas/</A>
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
WWW: inofficial StarOffice 4.0 for Linux FAQ
|
|
</H3>
|
|
<p>
|
|
16 Feb 1998<BR>
|
|
Michael Hoennig has collected some questions and answers into an
|
|
inofficial FAQ of Linux (and some UNIX-) specific topics of StarOffice
|
|
4.0. This FAQ in the German language can be found at:
|
|
<p>
|
|
http://www.on-line.de/~michael.hoennig/soffice4-linux-faq-49.html
|
|
<p>
|
|
This FAQ in an English version can be found at:
|
|
<p>
|
|
http://www.on-line.de/~michael.hoennig/soffice4-linux-faq-01.html
|
|
<p>
|
|
For more information: <BR>
|
|
Michael Hoennig, <A HREF="mailto:mhoennig@on-line.de">mhoennig@on-line.de</A>
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
WANTED: Project LEAP: Linux-Equipped Astronauts Project
|
|
</H3>
|
|
<p>
|
|
1 Feb 1998 <BR>
|
|
<p>
|
|
17 Feb 1998<BR>
|
|
Recent articles on the International Space Station (ISS) have
|
|
mentioned that astronauts will be issued laptop computers running
|
|
MSWin95. Other reports have predicted disastrous trouble with
|
|
the station control software, because of poor engineering practices
|
|
and unrealistic schedules.
|
|
<p>
|
|
This situation creates a real opportunity for Linux. While we
|
|
(probably) can't help with the main station software, at least
|
|
the astronauts can be freed from Win95 crashes. Imagine the sound
|
|
bites: "At least our laptops don't crash all the time."
|
|
<p>
|
|
PEAL is a project to port the applications that the astronauts use
|
|
to run under Linux, so each astronaut has a choice of operating
|
|
systems. Many of them will continue using MSWin95, for a time, but
|
|
if any astronaut chooses Linux, the others will begin to pick it up,
|
|
just as happens on the ground.
|
|
<p>
|
|
Anyone who wants to take over the
|
|
web page, design a project logo, set up a mail reflector, create a
|
|
newsgroup, become group leader, or (almost forgot :-) port software,
|
|
please write. We need to know what codes the astronauts need ported,
|
|
and where the sources are. The project web page, for now, is:
|
|
<p>
|
|
<A
|
|
HREF="http://www.cantrip.org/leap.html">http://www.cantrip.org/leap.html</A>
|
|
<p>
|
|
For more information: <BR>
|
|
Nathan Myers, <A
|
|
HREF="mailto:ncm@nospam.cantrip.org">ncm@nospam.cantrip.org</A>,
|
|
<A HREF="http://www.cantrip.org/">http://www.cantrip.org/</A>
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<a name="linuxexpo"></a>
|
|
<img align="right" src="../gx/linuxexpo.gif">
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
4th Annual Linux Expo, May 28-30th
|
|
</H3>
|
|
<p>
|
|
February 17, 1998:<BR>
|
|
Linux is making waves in the news, and now is the
|
|
opportunity for the world to find out why. It's time to get ready for
|
|
the largest gathering of the best and brightest minds in the computer
|
|
world. For three business-centered and technology-packed days, May
|
|
28-30, the fourth annual Linux Expo will take over Duke University in
|
|
Durham, North Carolina.
|
|
<p>
|
|
This year's Linux Expo is shaping up to be a can't-miss event. Visit
|
|
the record number of Expo exhibitors (there is still time for your
|
|
company to become involved) showing the latest in Linux-based hardware,
|
|
software, and service solutions. And stop in on the business and technical
|
|
discussions to hear talks by some of the most important names in technology
|
|
today.
|
|
<p>
|
|
Yes, Linus Torvalds will be there. And so will many others.
|
|
<p>
|
|
Technical track speakers include:
|
|
<ul><li>
|
|
*Eric Youngdale - Future Directions of Linux SCSI Development
|
|
<li>
|
|
*Dirk H Hohndel - XSuSE -- adding more to the XFree86 offerings
|
|
<li>
|
|
*Frank T. Kujawski - Setting Up Diskless Computers, Quickly!
|
|
<li>
|
|
*Simon Horman - Creating Redundant Servers in Linux
|
|
<li>
|
|
*Jacques Gelinas - LinuxConf
|
|
<li>
|
|
*Alan Cox - "I don't care if space aliens ate my mouse" or Porting
|
|
Linux to the Apple Macintosh 68K
|
|
<li>
|
|
*Mike Westall - ATM Device Driver Development in Linux
|
|
<li>
|
|
*Jes Sorensen - Linux/HIPPI - Linux Joins Supoercomputing Networking
|
|
<li>
|
|
*Bruce Perens - The Computer Graphics of Pixar
|
|
<li>
|
|
*Lars Wirzenius - Linux Anecdotes
|
|
<li>
|
|
*Greg Badros - A Caching NFS Client for Linux
|
|
<li>
|
|
*Eric S. Raymond - Homesteading the Noosphere: Custom and Property
|
|
Rights in the Free Software Community
|
|
<li>
|
|
*David S. Miller - Optimizing the Cobalt Microserver
|
|
<li>
|
|
*Miguel de Icaza - GNOME: The GNU Network Object Model Environment
|
|
<li>
|
|
*Alex "Mr. Worf" Yuriev - Optimizing Network Performance
|
|
<li>
|
|
*Peter J. Braam - The Linux 2.1 New VFS Interface
|
|
<li>
|
|
*Steffen Seeger - KGI: Graphics and Games with the Kernel
|
|
<li>
|
|
*Andreas Beck - LibGGI The next generation fully portable graphics
|
|
library
|
|
<li>
|
|
*Jason McMullan - EvStack - Linux Console Design, Take II
|
|
<li>
|
|
*Daryll Strauss - Linux helps create Titanic
|
|
<li>
|
|
*Stephen C. Tweedie - Journalling the Linux Filesystem
|
|
<li>
|
|
*Peter J. Braam - The Coda Distributed Filesystem on Linux
|
|
</ul>
|
|
<p>
|
|
There will also be Tutorial Sessions featuring among others:
|
|
<ul><li>
|
|
*Peter J. Braam - Coda Demonstrations
|
|
<li>
|
|
*Jakub Jelinek - Hacking the Linux Kernel
|
|
</ul>
|
|
<p>
|
|
Business track speakers include:
|
|
<ul><li>
|
|
*Bruce Perens, Software in the Public Interest--Free Software Licensing
|
|
<li>
|
|
*Jon maddog Hall, Digital Equipment Corp.-- Linux Around the World
|
|
<li>
|
|
*James Gray, S.u.S. E.-- A Cooperative Model for Linux Certification
|
|
<li>
|
|
*Tim Bird, Caldera, Inc.-- The COAS Project
|
|
</ul>
|
|
<p>
|
|
For more information:<BR>
|
|
<A HREF="mailto:linux@linuxexpo.org">linux@linuxexpo.org</A>
|
|
<A HREF="http://www.linuxexpo.org/">http://www.linuxexpo.org/</A>
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
WWW: linux for starters WWW-page
|
|
</H3>
|
|
<p>
|
|
Fri, 20 Feb 1998 08:29:00 GMT<BR>
|
|
Here's Yet Another Page Concerning Linux For
|
|
Starters. In case anyone's interested...
|
|
http://www.ping.be/leminator/leminator.htm
|
|
<P>
|
|
For more information: <BR>
|
|
Koen Janssens, <A HREF="mailto:trott@mail.dma.be">trott@mail.dma.be</A>
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
WANTED: OpenBIOS - Freeware x86 BIOS iniatitive
|
|
</H3>
|
|
<p>
|
|
1 Feb 1998 <BR>
|
|
<p>
|
|
Fri, 20 Feb 1998 08:42:53 GMT<BR>
|
|
Some discussion about the possibility of a freeware 'GNU' BIOS
|
|
was casually mentioned on the Linux kernel mailing list last week.
|
|
Talk about it escalated, and a mailing list was quickly formed.
|
|
After a few more days of ideas, it seems like a very good possibility
|
|
and some people just hell bent on getting started.
|
|
<p>
|
|
What we are looking for now are people with a high degree of knowledge
|
|
about the low-level workings of the x86 PC architecture, and real mode
|
|
programming experience. Please join the mailing list and offer what help
|
|
you can.
|
|
<p>
|
|
Also understand that many Linux people are involved with this, but the
|
|
purpose is a COMPLETE BIOS replacement for use with all Intel x86 OS's,
|
|
not just some new boot loader.
|
|
<p>
|
|
To subscribe to the OpenBIOS Mailing list, write an email
|
|
To: openbios-request@linkscape.net
|
|
Subject [leave blank!]
|
|
subscribe [in the body]
|
|
It is a majordomo managed list. Feel free to use extended MD commands as needed.
|
|
<p>
|
|
OpenBIOS web pages: (DO NOT expect to find much here yet! )
|
|
<A HREF="http://www.linkscape.net/openbios/">
|
|
http://www.linkscape.net/openbios/</A> <BR>
|
|
<A HREF="http://www.freiburg.linux.de/OpenBIOS/">
|
|
http://www.freiburg.linux.de/OpenBIOS/</A>
|
|
<p>
|
|
For more information: <BR>
|
|
Dave Cinege
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
Linus Torvalds at next SVLUG meeting March 4th
|
|
</H3>
|
|
<p>
|
|
1 Feb 1998 <BR>
|
|
<p>
|
|
20 Feb 1998 <BR>
|
|
March 4, 1998, Linus Torvalds will speak at the Silicon Valley Linux
|
|
Users Group (SVLUG) meeting. The meeting begins at 7pm.
|
|
<p>
|
|
This meeting will be held at our new location, the GateWay Conference
|
|
Center, Building J, ciscoSystems. The address for this conference
|
|
center is:
|
|
<p>
|
|
255 W. Tasman Drive <BR>
|
|
San Jose, CA 95134
|
|
<p>
|
|
Please enter through the front entrance of the building, and the
|
|
conference center will be to your left. There will be signs.
|
|
<p>
|
|
For more information: <BR>
|
|
Rob Walker, <A HREF="mailto:rob@svlug.org">rob@svlug.org</A><BR>
|
|
<A HREF="http://www.svlug.org/">http://www.svlug.org/</A>
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
[gtk-list] Qt/KDE Netscape -- An estimate of Work!
|
|
</H3>
|
|
<p>
|
|
1 Feb 1998 <BR>
|
|
John McNulty wrote:
|
|
I'm sure after Netscape's source code announcement, a number of
|
|
people (like me) must have wondered about the possibility of a
|
|
port to KDE and/or Qt. So I asked one of the Netscape engineers
|
|
for an opinion on this. Below is the answer I got.
|
|
<blockquote> <ul>
|
|
<li>The GUI frontend is clearly seperated from the rest of the browser
|
|
by a well defined API (which all 3 frontends - MFC, Mac, Motif -
|
|
use).
|
|
<li>There are about 50 widgets ( ls *.c | wc -l) that are Netscape
|
|
specific, which'll have to be ported.
|
|
<li>The GUI itself is composed of around 160 C++ files, which
|
|
instantiate these widgets.
|
|
</ul>
|
|
Depending on the number of people working on it, it could take
|
|
anywhere between 2 months to an year. Of course, stripped down
|
|
versions are possible in a shorter period of time.
|
|
</blockquote>
|
|
<P>
|
|
So if anyone put there is thinking about this, you can use
|
|
this as a guideline to figure out how much work is involved.
|
|
<BR>
|
|
--John
|
|
|
|
<a name="software"></a>
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
<center><H3> Software Announcements </H3></center>
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
ZINC Software
|
|
</H3>
|
|
<p>
|
|
9 Feb 1998<BR>
|
|
Zinc's flagship product, Zinc Application Framework, is a very high-
|
|
quality C++ GUI API and interface builder which supports popular
|
|
desktop operating systems (Windows, Motif, DOS, ...) *and* which is
|
|
scalable to embedded platforms as well (in 1/10th the space of
|
|
Windows CE!).
|
|
<p>
|
|
Zinc has recently negotiated distribution agreements with popular
|
|
Linux vendors to include ZAF with their CD-ROM distribution. Zinc has
|
|
also been engaged by top embedded operating systems' vendors to
|
|
provide reference ports of ZAF for their embedded OS.
|
|
<p>
|
|
For more information: <BR>
|
|
Robert Bishop, <A HREF="mailto:rbishop@zinc.com">rbishop@zinc.com</A><BR>
|
|
Zinc Software Incorporated, <A
|
|
HREF="http://www.zinc.com/">http://www.zinc.com/</A>
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
EDA Software: Linux VHDL Simulator Sells Via Web
|
|
</H3>
|
|
<p>
|
|
9 Feb 1998<BR>
|
|
Essex Junction, Vt. -- Despite considerable user interest, very
|
|
few Linux-based EDA tools have become available. One of the
|
|
first is a new Linux version of the Green Mountain Computing
|
|
Systems VHDL compiler, available for $169 via the World Wide
|
|
Web.
|
|
<p>
|
|
Green Mountain currently offers a DOS-based VHDL simulator, and
|
|
Accolade Design Automation (Duvall, Wash.) sells a Windows-based
|
|
version of the same simulator. The new version 2 of the Green
|
|
Mountain VHDL compiler supports most, but not all, of the
|
|
features of IEEE 1076-87 and 1993 VHDL.
|
|
<p>
|
|
The Linux version is a port of the DOS version and includes all
|
|
the same features, except for the user interface. Both versions
|
|
come with two simulation environments for batch or interactive
|
|
simulation, precompiled IEEE packages, an online VHDL tutorial,
|
|
a Motorola HC11 microcontroller example model and free technical
|
|
support via e-mail.
|
|
<p>
|
|
Scott Thibault, president of Green Mountain Computing Systems,
|
|
said he developed the Linux version because that freely
|
|
distributed operating system is becoming more important in
|
|
universities, which have made up Green Mountain's primary
|
|
market. He said the Linux version is slightly slower than the
|
|
DOS version because of its support for multitasking.
|
|
<p>
|
|
Linux has gained a following because it's viewed as a stable,
|
|
robust operating system that gives PCs full Unix compatibility.
|
|
Thus, commonly used Unix utilities such as "make" are available.
|
|
Linux also has minimal memory requirements. The Green Mountain
|
|
Linux VHDL compiler can run in about 8 Mbytes of RAM.
|
|
The simulator can be ordered only by mail or over the Internet.
|
|
<p>
|
|
For more information: <BR>
|
|
<A HREF="mailto:Andy@Piziali.dv.org">Andy@Piziali.dv.org</A><BR>
|
|
<A HREF="http://together.net/~thibault">http://together.net/~thibault</A>
|
|
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
EAGLE LINUX M68K
|
|
</H3>
|
|
<p>
|
|
for AMIGA, Atari, Mac 68k and all computers based on the Motorola MC680x0 CPU
|
|
is now available. The end user delivery starts the first week of March.
|
|
Linux is pre-available on CDR for press and magazines.
|
|
<p>
|
|
Distribution:<BR>
|
|
Eagle Computer Products GmbH,<BR>
|
|
S.u.S.E. GmbH
|
|
<p>
|
|
Update CDs will follow every 2-3 months.
|
|
Planned versionen which will come soon:
|
|
<ul>
|
|
<li>Intel PC Linux
|
|
<li>PowerPC Linux
|
|
<li>DEC Alpha Linux
|
|
</ul>
|
|
For more information: <BR>
|
|
Dragon Internet Design, Frank Rosendahl & Klaus-Peter Walter
|
|
<A HREF="mailto:linux@eagle-cp.com">linux@eagle-cp.com</A> <BR>
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
Olicom Linux Token-Ring driver released
|
|
</H3>
|
|
<P>
|
|
6 Feb 1998<BR>
|
|
Olicom is pleased to announce the release of a Linux Driver for
|
|
Olicom's high performance Token-Ring Adapters OC-3118 and OC-3137. The
|
|
driver is also compatible with the older OC-3136 adapter.
|
|
The combination of Olicom's Token-Ring adapters and new Linux drivers
|
|
provide superior performance in a Linux Token-Ring environment.
|
|
<p>
|
|
The driver has been tested with the (currently) latest version of the
|
|
2.0 kernel, 2.0.33. It will probably work with any 2.0 kernel,
|
|
i.e. all of the kernels used by the Linux distributions, but this has
|
|
not been tested and can not be guaranteed.
|
|
<p>
|
|
For the current development versions of Linux 2.1 the driver has been
|
|
tested with version 2.1.78. Changes to the development kernel are
|
|
occurring in rapid pace and compatibility can not be guaranteed.
|
|
<p>
|
|
The Olicom Linux driver is available from Olicom's WEB site
|
|
http://www.olicom.dk/ (Europe) or http://www.olicom.com/ (US).
|
|
<p>
|
|
Pre-compiled kernels with the driver builtin - based on Linux 2.0.33 -
|
|
for RedHat 4.2, RedHat 5.0 and other systems using the Linux
|
|
2.0.x kernel, are available from
|
|
<p>
|
|
ftp://ftp.olicom.dk/pub/releases/Unix-Driver/Linux/unsupported/
|
|
<p>
|
|
For more information: <BR>
|
|
<A HREF="mailto:henrik_stoerner@olicom.dk">henrik_stoerner@olicom.dk</A><BR>
|
|
<A HREF="http://www.olicom.dk/">http://www.olicom.dk/</A> (Europe) <BR>
|
|
<A HREF="http://www.olicom.com/">http://www.olicom.com/</A> (US)
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
GNU plotting utilities 2.0 released
|
|
</H3>
|
|
<p>
|
|
6 Feb 1998 <BR>
|
|
Release 2.0 of the GNU plotting utilities is now available at
|
|
ftp://ftp.gnu.org/pub/gnu/plotutils-2.0.tar.gz . It should soon be
|
|
available via ftp from the GNU mirror sites. A list of mirror sites is
|
|
appended below; please try them before you try ftp.gnu.org.
|
|
<p>
|
|
This is a major release. The centerpiece of the package is now `libplot',
|
|
a function library for 2-D device-independent graphics. Libplot is
|
|
installed as a DLL (dynamically linked library), on systems that support
|
|
DLL's. Libplot now supports Hewlett-Packard Graphics Language (HP-GL and
|
|
HP-GL/2) output, in addition to Postscript, xfig, Tektronix, and X11 output.
|
|
So HP LaserJet and other PCL 5 printers are now supported.
|
|
<p>
|
|
The manual for the plotting utilities is now over 100 pages long. To
|
|
install and print the documentation, be sure that you have the current
|
|
release of the GNU texinfo package (v. 3.11) installed on your system.
|
|
You may retrieve it from ftp://ftp.gnu.org/pub/gnu/texinfo-3.11.tar.gz .
|
|
<p>
|
|
For more information: <BR>
|
|
Mathematics Department, University of Arizona <BR>
|
|
Robert S. Maier, <A
|
|
HREF="mailto:rsm@math.arizona.edu">rsm@math.arizona.edu </A>
|
|
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
Data Plotting Library DISLIN 6.3c
|
|
</H3>
|
|
<p>
|
|
6 Feb 1998<BR>
|
|
DISLIN is a high-level and easy to use plotting library for
|
|
displaying data as curves, bar graphs, pie charts, 3D-colour plots,
|
|
surfaces, contours and maps. Several output formats are supported
|
|
such as X11, VGA, PostScript, CGM, HPGL, TIFF and Prescribe. The library
|
|
contains about 400 plotting and parameter setting routines and is
|
|
available for several C, Fortran 77 and Fortran 90 compilers.
|
|
<p>
|
|
Version 6.3c of DISLIN is now released for Linux. The supported
|
|
compilers are GCC, G77, Imagine F, NAGf90, Absoft f77 and Absoft f90.
|
|
Plotting extensions for the programming languages Perl 5.003 and Python
|
|
1.5 are included.
|
|
<p>
|
|
All DISLIN distributions for Linux are free.
|
|
DISLIN is available from the DISLIN Home Page:<BR>
|
|
<A HREF="http://www.mpae.gwdg.de/dislin/dislin.html">
|
|
http://www.mpae.gwdg.de/dislin/dislin.html </A> <BR>
|
|
and via FTP from the server:<BR>
|
|
<A
|
|
HREF="ftp://ftp.gwdg.de/pub/grafik/dislin/">ftp://ftp.gwdg.de/pub/grafik/dislin/</A>
|
|
<p>
|
|
For more information: <BR>
|
|
Max-Planck-Institut fuer Aeronomie<BR>
|
|
Helmut Michels, <A
|
|
HREF="mailto:michels@linax1.mpae.gwdg.de">michels@linax1.mpae.gwdg.de </A>
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
ktalkd-0.4.1 - Enhanced talk daemon
|
|
</H3>
|
|
<P>
|
|
6 Feb 1998<BR>
|
|
ktalkd is an enhanced talk daemon with answering machine for Unix systems,
|
|
designed to work under KDE, but can also work without it.
|
|
It is available at:<BR>
|
|
ftp://aurora.resi.insa-lyon.fr/pub/people/dfaure/linux/ktalkd-0.4.1.tgz <BR>
|
|
ftp://ftp.kde.org/pub/kde/Incoming/ktalkd-0.4.1.tgz
|
|
<p>
|
|
Tested on Linux or BSD, with or without KDE.
|
|
<p>
|
|
For more information: <BR>
|
|
David Faure, <A
|
|
HREF="mailto:david.faure@ifhamy.insa-lyon.fr">david.faure@ifhamy.insa-lyon.fr</A>
|
|
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
angela! 1.7 BETA - graph editor w/ Tcl/Tk interface
|
|
</H3>
|
|
<p>
|
|
9 Feb 1998 <BR>
|
|
angela! stands for: <pre>
|
|
A ngela is a
|
|
N atural
|
|
G raph
|
|
E ditor with
|
|
L ayout
|
|
A lgorithms
|
|
! </pre>
|
|
<p>
|
|
angela! is free of charge (GPL LICENSE)
|
|
<p>
|
|
It is intended to help the user creating simple graphs for courses,
|
|
technical diagrams or simply demonstrating what graph algorithms can
|
|
do.
|
|
<p>
|
|
The developpment platform is Linux 2.0.32 with glibc libraries as there
|
|
are provided with RedHat 5.0. Porting angela! to other systems should not
|
|
be difficult as it uses these Programs:
|
|
<ul>
|
|
<li>Standard C compiler (no C++ code at this time)
|
|
<li>CWEB Version 3.4
|
|
<li>Tcl/Tk Version 8.0p2
|
|
<li>Tix 4.1
|
|
</ul>
|
|
For binary distributions, only Tcl/Tk Version 8.0p2 and Tix 4.1 are
|
|
necessary. Contact your system administrator to help you installing these
|
|
tools (also used by other programs, so the disk space is not wasted ;) )
|
|
<p>
|
|
The actual version is at this time under the following URL:
|
|
<p>
|
|
<A
|
|
HREF="http://www.mpi-sb.mpg.de/~pabst/angela/">http://www.mpi-sb.mpg.de/~pabst/angela/</A>
|
|
<p>
|
|
For more information: <BR>
|
|
Oliver Pabst, <A HREF="mailto:olpa@itm.uni-sb.de">olpa@itm.uni-sb.de</A>
|
|
<BR>
|
|
University of Saarland, Computing Center, Germany.
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
Tsinvest, version 0.4, stock trading program released.
|
|
</H3>
|
|
<p>
|
|
9 Feb 1998<BR>
|
|
The C sources to a stock trading program, tsinvest.tar.gz, version
|
|
0.4, are available at <A HREF="ftp://sunsite.unc.edu:/pub/Linux/Incoming/">
|
|
ftp://sunsite.unc.edu:/pub/Linux/Incoming/"></A> or
|
|
<A HREF="ftp://sunsite.unc.edu:/pub/Linux/apps/financial/investment/">
|
|
ftp://sunsite.unc.edu:/pub/Linux/apps/financial/investment/</A>. The
|
|
sources are free for non-commercial use.
|
|
<p>
|
|
The program tsinvest is for quantitative financial analysis of equity
|
|
values. An optimal portfolio investment strategy for multiple
|
|
equities is computed. The program decides which of all available
|
|
equities to invest in at any single time, by calculating the
|
|
instantaneous future value of all equities, and using statistical
|
|
estimation techniques to estimate the accuracy of the calculated
|
|
values. Entropic techniques are used throughout. A tutorial is
|
|
presented in the man(1) pages. A companion equity market simulation
|
|
program is included.
|
|
<p>
|
|
For more information: <BR>
|
|
John Conover, <A HREF="mailto:conover@netcom.com">conover@netcom.com</A>
|
|
|
|
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
Linux Logo 1.04 - shows system info with a linux logo
|
|
</H3>
|
|
<P>
|
|
9 Feb 1998<BR>
|
|
linux_logo outputs a color ansi version of a penguin, accompanied by
|
|
system info gathered from proc.
|
|
SUPPORTS Linux, SMP, Atari m68k, and even some non-Linux OS's
|
|
<p>
|
|
USES [instructions included]:
|
|
<ul>
|
|
<li>Have a boot-up penguin in userspace [avoid kernel bloat]
|
|
<li>Impress your friends with a fancy color penguin login/motd
|
|
<li>Have a "penguin" port on your computer
|
|
<li>Use your imagination!
|
|
</ul>
|
|
WHERE TO GET LINUX_LOGO:<BR>
|
|
http://www.glue.umd.edu/~weave/vmwprod/linux_logo-1.04.tar.gz <BR>
|
|
http://sunsite.unc.edu/pub/Linux/Incoming/linux_logo-1.04.tar.gz -- at first
|
|
http://sunsite.unc.edu/pub/Linux/logos/penguin/linux_logo-1.04.tar.gz
|
|
<p>
|
|
Check out other programs at http://www.glue.umd.edu/~weave/vmwprod
|
|
<p>
|
|
For more information: <BR>
|
|
Vince Weaver, <A HREF="mailto:hweave@eng.umd.edu">weave@eng.umd.edu</A>,
|
|
<A
|
|
HREF="http://www.glue.umd.edu/~weave/">http://www.glue.umd.edu/~weave/</A>
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
xfpovray v1.3 - An X interface for POV-Ray raytracer
|
|
</H3>
|
|
<p>
|
|
16 Feb 1998<BR>
|
|
I would like to present a new version (1.3) of my xforms
|
|
interface to the ray tracer POV-Ray. If you have
|
|
ever used POV-Ray from the command line, you might
|
|
find this program useful. Check: <BR>
|
|
<A
|
|
HREF="http://cspar.uah.edu/~mallozzir/">http://cspar.uah.edu/~mallozzir/</A>
|
|
<p>
|
|
Source code is available in tgz, bzip2, and
|
|
rpm formats.
|
|
<p>
|
|
For more information: <BR>
|
|
Robert S. Mallozzi, <A
|
|
HREF="mailto:mallors@crazyhorse.msfc.nasa.gov">mallors@crazyhorse.msfc.nasa.gov</A>
|
|
<A
|
|
HREF="http://cspar.uah.edu/~mallozzir/">http://cspar.uah.edu/~mallozzir/</A> <BR>
|
|
University of Alabama
|
|
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
Casio Digital Diary Backup/restore v2.2
|
|
</H3>
|
|
<p>
|
|
17 Feb 1998 <BR>
|
|
Casio Diary
|
|
is a package that allows communication to
|
|
the CASIO series of hand-held organizers based on a protocol posted
|
|
by Knut Radloff, knut@krhh.hanse.de.
|
|
<p>
|
|
Version 2.2 has been tested on Linux2.x , Solaris2.x, sunos4.x.
|
|
For both the BOSS and ILLUMINATOR models and is released under the GPL.
|
|
<p>
|
|
It is provided as is i.e. jamal is not to be responsible for any
|
|
damages it causes to you, your CASIO or your environment.
|
|
<p>
|
|
Primary-site: <A HREF="http://sunsite.unc.edu/pub/Linux/apps/comm/">
|
|
http://sunsite.unc.edu/pub/Linux/apps/comm/</A> <BR>
|
|
100kB casio22.tgz, 1kB casio.lsm
|
|
Alternate-site: <A
|
|
HREF="ftp://ftp.cyberus.ca/pub/users/hadi/casio/casio22.tgz">
|
|
ftp://ftp.cyberus.ca/pub/users/hadi/casio/casio22.tgz</A>
|
|
<p>
|
|
For more information: <BR>
|
|
Jamal Hadi Salim, <A HREF="mailto:hadi@cyberus.ca">hadi@cyberus.ca </A>
|
|
<BR>
|
|
Ottawa, Canada
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
Telnet98 - updated telnet source distribution
|
|
</H3>
|
|
<p>
|
|
18 Feb 1998<BR>
|
|
Telnet98 is a new release of the ubiquitous "telnet" utility, based on
|
|
the 1995 MIT telnet distribution from ftp.cray.com and net-dist.mit.edu.
|
|
Telnet98 adds some new features to the distribution including
|
|
new 'configure' based build and install scripts and
|
|
support for additional authentication and encryption types.
|
|
<p>
|
|
Telnet98 can be downloaded from <A
|
|
HREF="ftp://quasimodo.stanford.edu/pub/telnet/">ftp://quasimodo.stanford.edu/pub/telnet/</A>,
|
|
and US/Canadian users can find instructions there for downloading source
|
|
with strong (128-bit) encryption enabled.
|
|
<p>
|
|
For more information: <BR>
|
|
Thomas Wu, <A
|
|
HREF="mailto:tjw@xenon.stanford.edu">tjw@xenon.stanford.edu</A> <BR>
|
|
Stanford University: Computer Science Department, CA USA
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
Subject: fetchmail-4.3.7 - mail retriever for POP and IMAP
|
|
</H3>
|
|
<P>
|
|
18 Feb 1998<BR>
|
|
The 4.3.7 release of fetchmail is now available at the usual locations,
|
|
including <A
|
|
HREF="http://earthspace.net/~esr/fetchmail/">http://earthspace.net/~esr/fetchmail/</A>. Here are the release
|
|
<p>
|
|
For more information: <BR>
|
|
Eric S. Raymond, <A
|
|
HREF="mailto:esr@snark.thyrsus.com">esr@snark.thyrsus.com</A> <BR>
|
|
Organization: Eric Conspiracy Secret Labs,
|
|
<a href="http://earthspace.net/~esr">http://earthspace.net/~esr</a>
|
|
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
leap 1.1.9 - A free RDBMS
|
|
</H3>
|
|
<p>
|
|
20 Feb 1998<BR>
|
|
<p>
|
|
LEAP is a free RDBMS (Relational Database Management System) that has
|
|
been used as an educational tool in Universities around the world to aid
|
|
students as they learn database theory. It allows relational algebra
|
|
expressions to be entered directly into the system, and the results to
|
|
be queried. It supports relational closure, so complete expressions can
|
|
be deeply nested. Examples are included from popular database texts,
|
|
including C.J.Date's "An introduction to database systems".
|
|
<p>
|
|
LEAP is entirely free (it is distributed under the terms of the GNU
|
|
General Public License), and is very easy to install. All distributions
|
|
contain the full 'C' source code. Versions exist for all Unix
|
|
implementations, and Windoze 95/3.1/NT. Full documentation is included
|
|
in the distribution, and is available on the web. LEAP is in active
|
|
development (on a Linux 2.0 slackware system) by the author.
|
|
<p>
|
|
Full details, including links to the main ftp archives, are available on
|
|
the LEAP web page:
|
|
<p>
|
|
<A
|
|
HREF="http://www.dogbert.demon.co.uk/leap.html">http://www.dogbert.demon.co.uk/leap.html </A> <BR>
|
|
<A
|
|
HREF="http://www.brookes.ac.uk/~e0190404/leap.html">http://www.brookes.ac.uk/~e0190404/leap.html
|
|
</A> <BR>
|
|
<p>
|
|
Strictly speaking LEAP 1.1.9 is BETA software, but extensive testing has
|
|
shown no major problems.
|
|
<p>
|
|
For more information: <BR>
|
|
Richard Leyton, <A HREF="mailto:rleyton@acm.org">rleyton@acm.org</A>
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
WMF - WebMailFolder 1.0.1 mail folder to html converter
|
|
</H3>
|
|
<p>
|
|
20 Feb 1998<BR>
|
|
This tool is for converting mails to html and can be used for
|
|
mailinglist archive.
|
|
<p>
|
|
It can be found on:
|
|
ftp://sunsite.unc.edu/incoming/Linux/
|
|
or ftp://sunsite.unc.edu/pub/Linux/Incoming/
|
|
should be moved to
|
|
ftp://sunsite.unc.edu/pub/Linux/apps/www/converters/
|
|
<p>
|
|
ftp://ftp.lugs.ch/incoming
|
|
should be moved to
|
|
ftp://ftp.lugs.ch/pub/linux/mail
|
|
<p>
|
|
For more details see the doc/ChangeLog or
|
|
Norbert Kuemin, Swisscom, <A
|
|
HREF="mailto:Norbert.Kuemin@gd2.swissptt.ch">Norbert.Kuemin@gd2.swissptt.ch
|
|
</A> <BR>
|
|
<A HREF="http://www.lugs.ch/LUGS_Members/norbert.kuemin/wmf.html">
|
|
http://www.lugs.ch/LUGS_Members/norbert.kuemin/wmf.html</A><BR>
|
|
|
|
<P> <hr> <P>
|
|
<!-- =================================================================== -->
|
|
|
|
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
|
bash Book Released
|
|
</H3>
|
|
<P>
|
|
27 Feb 1998 <BR>
|
|
New Edition of the "Definitive Guide to bash" released--O'Reilly's
|
|
<I>Learning the bash Shell</I> By Cameron Newham & Bill Rosenblatt
|
|
now covers Version 2.0.
|
|
This second edition covers all of the features of bash Version 2.0,
|
|
while still applying to bash Version 1.x. New features include
|
|
one-dimensional arrays, parameter expansion, and more pattern-matching
|
|
operations. In addition, bash 2.0 is POSIX.2 conformant. This updated
|
|
edition covers new commands, security improvements, additions to
|
|
ReadLine, improved configuration and installation, and an additional
|
|
programming aid, the bash shell debugger.
|
|
<P>
|
|
For more information: <BR>
|
|
O'Reilly & Associates, <A HREF="mailto:info@ora.com">info@ora.com</A>,
|
|
<A HREF="http://www.oreilly.com/">http://www.oreilly.com/</A>
|
|
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
<center>Published in <i>Linux Gazette</i> Issue 26, March 1998</center>
|
|
<P> <HR> <P>
|
|
<!-- =================================================================== -->
|
|
<A HREF="./index.html"><IMG SRC="../gx/indexnew.gif" ALT="[ TABLE OF
|
|
CONTENTS ]"></A>
|
|
<A HREF="../index.html"><IMG SRC="../gx/homenew.gif" ALT="[ FRONT
|
|
PAGE ]"></A>
|
|
<A HREF="./lg_tips26.html"><IMG SRC="../gx/back2.gif" ALT=" Back "></A>
|
|
<A HREF="./lg_answer26.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
|
|
|
<P><HR><P>
|
|
<h5>This page written and maintained by the Editor of <I>Linux Gazette</I>,
|
|
<A HREF="mailto: gazette@ssc.com">gazette@ssc.com</A><BR>
|
|
Copyright © 1998 Specialized Systems Consultants, Inc. </H5>
|
|
<P>
|
|
<H4>"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
|
</H4>
|
|
<P> <hr> <P>
|
|
|
|
<!-- =============================================================== -->
|
|
<center>
|
|
<H1><A NAME="answer">
|
|
<img src="../gx/ans.gif" alt="" border=0 align=middle>
|
|
The Answer Guy
|
|
<img src="../gx/ans.gif" alt="" border=0 align=middle>
|
|
</A></H1> <BR>
|
|
<H4>By James T. Dennis,
|
|
<a href="mailto:linux-questions-only@ssc.com">linux-questions-only@ssc.com</a><BR>
|
|
Starshine Technical Services, <A HREF="http://www.starshine.org/">
|
|
http://www.starshine.org/</A> </H4>
|
|
</center>
|
|
|
|
<p><hr><p>
|
|
<H3>Contents:</H3>
|
|
<ul>
|
|
<li><a HREF="./lg_answer26.html#telnet">Can't Telnet to Red Hat 5.0 Server</a>
|
|
<li><a HREF="./lg_answer26.html#luke">Use the Source, Luke!</a>
|
|
<li><a HREF="./lg_answer26.html#ifconfig">'ifconfig' to Troubleshoot Dropped Ethernet Packets?</a>
|
|
<li><a HREF="./lg_answer26.html#angel">Cthugha </a>
|
|
<li><a HREF="./lg_answer26.html#login">xdm Login doesn't!</a>
|
|
</ul>
|
|
|
|
<p><hr><p>
|
|
<!--================================================================-->
|
|
|
|
<a name="telnet"></a>
|
|
<h3><img align=bottom alt=" " src="../gx/ques.gif">
|
|
Can't Telnet to Red Hat 5.0 Server
|
|
</h3>
|
|
<P> <B>
|
|
From: Brad Lackey, <A HREF="mailto:lackeyb@holly.colostate.edu">
|
|
lackeyb@holly.colostate.edu</A>
|
|
</B> <P><B>
|
|
I am trying to set up a LINUX web server for Colorado State =
|
|
University - CIS Dept. I have Red Hat 5.0 Installed with user accounts =
|
|
set up but I cannot telnet to the machine. I get the login prompt, but =
|
|
none of the user accounts that I have created seem to work, including =
|
|
root. they all give me "Login incorrect". I was wondering how to fix =
|
|
this validation problem...<BR>
|
|
Thanks, Brad
|
|
</B> <P>
|
|
<img align=bottom alt=" " src="../gx/ans2.gif">
|
|
First I'll have to assume that you installed RH5 on
|
|
a fresh x86 machine with no previous OS, and that you've
|
|
just installed the package from a CD and have yet to
|
|
apply any upgrades or patches to it.
|
|
<P>
|
|
If that's the case -- fire up the old browser and go
|
|
to Red Hat's "Errata" pages at:
|
|
<P>
|
|
http://www.redhat.com/support/docs/rhl/rh50-errata-general.html
|
|
<P>
|
|
There are about 30 upgrade packages there -- including
|
|
fixes for the utils package (fixes 'vipw' command),
|
|
and glibc (the core c libraries which most of your
|
|
other programs depend upon through the magic of
|
|
shared libraries).
|
|
<P>
|
|
I don't see a specific entry for the problem that you're
|
|
describing -- and I haven't upgraded any systems to RH5
|
|
yet -- so I don't know if this problem is generic.
|
|
<P>
|
|
A quick search of Yahoo!/Alta Vista and DejaNews doesn't
|
|
show a match to exactly this problem either -- but it
|
|
does show that telnet to RH5 boxes is working for many
|
|
people. (Many of the problems reported have to do with
|
|
long delays, caused by the "double-reverse lookup" that
|
|
TCP Wrappers uses to prevent most varieties of spoofing).
|
|
|
|
So, given that the search string "+red +hat +5 +telnet
|
|
+login" didn't give us an easy answer we'll have to do
|
|
some troubleshooting.
|
|
<P>
|
|
Let's start with some questions:
|
|
<P>
|
|
Does your syslog (/var/log/messages or /var/log/security) tell
|
|
you anything?
|
|
<P>
|
|
Have you run pw5conv to enable shadow passwords?
|
|
<P>
|
|
If you run 'vipw' ('vi' the /etc/passwd file) do
|
|
the password hashes appear there?
|
|
<P>
|
|
Have you installed a different PAM (pluggable authentication
|
|
modules) or modified its configuration (any of the files
|
|
under /etc/pam.d/)?
|
|
<P>
|
|
I didn't see a new PAM RPM up at the site listed above
|
|
-- though things like the initscripts package and the
|
|
glibc package might help.
|
|
<P>
|
|
If these questions don't help you find the problem and
|
|
resolve it I'd suggest that you grab a Red Hat 4.2 or
|
|
a S.u.S.E., Debian or other distribution and install
|
|
that. If you use Red Hat 4.2 you'll want to fetch all
|
|
the upgrades for that -- and you might be able to install
|
|
specific RH5 rpms (including the glibc which *should*
|
|
co-exist cleanly with the libc 5.x that most (almost
|
|
all) Linux distributions prior to RH5 rely on).
|
|
<P>
|
|
As a support volunteer I find Red Hat's decision to
|
|
push the release of "Hurricane" out the door at the
|
|
end of last year to be abominable. I suggested to them
|
|
that they do a 4.5 first -- and wait until about March
|
|
of this year for a 5.0 (hoping that glibc would be
|
|
better understood, that PAM would move much closer to
|
|
1.0, and that the 2.2 kernel *might* ship by then).*
|
|
<P>
|
|
*** Please note: I don't have any "inside" hints as
|
|
to when any of these event will occur. I don't know
|
|
how long it will take to go from the 2.1.8x kernels
|
|
through the inevitable 2.1.99.x flurry and get to
|
|
2.2. I read the kernel mailing list and cross my fingers
|
|
like everyone else. Obviously Red Hat Inc (the company)
|
|
and Caldera, and Yggdrasil, and many other organizations
|
|
and individuals can help. If I were a programmer I might
|
|
be able to help more.
|
|
<P>
|
|
However, I was sure that 5.0 was too soon -- and the
|
|
34 Mb of upgrades and patches that were available as of
|
|
last November needed to be released on CD to save the
|
|
'net a bunch of bandwidth. (I occasionally cut these
|
|
and similar new stuff onto CD's using my ISDN line and
|
|
my CD-R and give them away. I'm hoping to give one or
|
|
two away at tonight's SVLUG (Silicon Valley Linux User's
|
|
Group) meeting where we'll be hearing from Bruce Perens
|
|
of the Debian project, and Eris S. Raymond, whose
|
|
paper on the "Crystal Cathedral" was cited as a key
|
|
part of Netscape's decision to release their sources)).
|
|
<P>
|
|
I'd like to see Red Hat adopt a subscription model, where
|
|
I can get monthly update of their "updates" and "contrib"
|
|
mirrors for about $10/month. (I suppose it doesn't *have*
|
|
to be Red Hat to do this, anyone with a CD-R and a reasonable
|
|
trickle feed from the 'net could do it. Though the
|
|
economies of scale don't work until we get a few hundred
|
|
subscribers).
|
|
<P>
|
|
Heck, if there's enough interest I'll do it.
|
|
<P>
|
|
In any event, I hope one of these methods works.
|
|
<P>
|
|
At the risk of starting serious flame wars and raising
|
|
questions about my "loyalty to the cause" (which cause
|
|
we're not sure) I'd also suggest that you look at the
|
|
OpenBSD (and FreeBSD and NetBSD) distributions if you
|
|
don't have a specific reason for picking Linux for
|
|
this application.
|
|
<P>
|
|
Linux is the most popular of the free Unix' -- but
|
|
it's not the only one -- and it's not necessarily the
|
|
best for all applications. OpenBSD, in particular, seems
|
|
to be very well suited to multi-user "student use" and
|
|
"computer lab" use. This is because Theo de Raadt and
|
|
his team have found and corrected a large number of
|
|
buffer overflows and other vulnerabilities in the sources
|
|
for FreeBSD and NetBSD (and probably in the sources of
|
|
many Linux utilities as well).
|
|
<P>
|
|
Obviously this depends quite a bit on your intended
|
|
applications. However, if I was setting up a general
|
|
use shell account system for a school lab, an ISP, or
|
|
a USENIX "terminal room" I'd probably suggest OpenBSD.
|
|
<P>
|
|
For personal workstations I think Linux holds the edge
|
|
in performance and applications availability.
|
|
<P>
|
|
--Jim
|
|
|
|
<p><hr><p>
|
|
<!--================================================================-->
|
|
|
|
<a name="luke"></a>
|
|
<h3><img align=bottom alt=" " src="../gx/ques.gif">
|
|
Use the Source, Luke!
|
|
</h3>
|
|
<P> <B>
|
|
From: SuatChoo Lua, <A HREF="mailto:suatchoo@yahoo.com">suatchoo@yahoo.com</A>
|
|
</B> <P><B>
|
|
Here there something that maybe you can answer me.
|
|
From where i can get the information about Linux
|
|
File system,memory managemant,and scheduling algorithm.
|
|
Thank you! <BR>
|
|
coco
|
|
</B> <P>
|
|
<img align=bottom alt=" " src="../gx/ans2.gif">
|
|
In many ways I'm not the best person to answer this
|
|
question. Remember that I am not a coder -- and I haven't
|
|
contributed any programming to the Linux kernel (which I'm
|
|
sure we all appreciate). However, I've read a bit of it
|
|
-- and will offer some opinions.
|
|
<P>
|
|
If you want deep information about -- technical
|
|
details -- about Linux filesystem, memory management,
|
|
and scheduling internals than the obvious thing to do
|
|
is to read the sources.
|
|
<P>
|
|
/usr/src/linux/kernel/sched.c is about 1700 lines long
|
|
(about 80 pages). There are about 30 .c files under
|
|
/usr/src/linux/fs (the filesystems directory) -- and
|
|
about 160 .c files under that whole tree. Linux supports
|
|
many different filesystems -- although the one that is
|
|
considered to be "native" to Linux is the ext2fs.
|
|
<P>
|
|
A variant of this filesystem has been adopted by the FSF
|
|
for their ongoing HURD project (which is a microkernel
|
|
OS for which rms and the Free Software Foundation developed
|
|
gcc, GNU emacs, and most of the applications and utilities
|
|
that make Linux possible).
|
|
<P>
|
|
The code for ext2fs is about 5000 lines. Probably the simplest
|
|
filesystem that ships with Linux is the Minix compatible one.
|
|
Minix is a simple microkernel operating system written by
|
|
Andrew S. Tanenbaum for inclusion with (and publication in)
|
|
his text book on "Operating Systems: Design and Implmentation."
|
|
That book is one of the seminal works on the topic -- and has
|
|
probably been studied by every major contributor to Linux.
|
|
<P>
|
|
The memory management code is in /usr/src/linux/mm. It
|
|
probably shows off the greatest innovations in the Linux
|
|
kernel. The aggressive strategies here allow a Linux kernel
|
|
to operate within a pretty modest footprint despite the
|
|
"freeping creaturism" that some of its detractors lament.
|
|
<P>
|
|
Where to begin:
|
|
<ul>
|
|
<li>I'd start by reading Tanenbaum's book (there's a
|
|
second edition where he's joined by Albert S.
|
|
Woodhull). Just read the first half to get all
|
|
the key concepts. The latter half of the book
|
|
are the sources for Minix; which don't relate to
|
|
Linux.
|
|
<li>I'd then pick up a copy of the <I>The Linux Kernel
|
|
Hacker's Guide</I> by Micheal K. Johnson (should be
|
|
at any good LDP -- Linux Documentation Project --
|
|
mirror site).
|
|
<li>Then grab a copy of <I>The Linux Kernel</I> by David
|
|
A. Rusling and <I>LINUX Kernel Internals</I> by Michael
|
|
Beck et al. (This last one is published by
|
|
Addison Wesley -- the others are available online
|
|
-- and published/printed in various editions of
|
|
_The_Linux_Bible_, _Dr._Linux_, etc).
|
|
</ul>
|
|
After you've read some of those the kernel sources will
|
|
hopefully make sense. Keep in mind that many of these things
|
|
are still changing in the form of patches and in the newer 2.1.x
|
|
kernels. For example there is a "evolution scheduler" which
|
|
allows you to experiment with different scheduling algorithms
|
|
for your Linux system. You can learn quite a bit about current
|
|
Linux limitations by perusing Kurt Huwig's collection of
|
|
"unofficial" Linux patches at http://linuxhq.sigkill.org/
|
|
or http://www.huwig.de if you'd like to read them in the
|
|
original German. These include several experimental
|
|
shedulers and memory management tweaks (like one that
|
|
search for duplicated pages and aliases them to one another
|
|
on the fly).
|
|
<P>
|
|
I hope you find all those interesting and informative.
|
|
<P>
|
|
--Jim
|
|
|
|
<p><hr><p>
|
|
<!--================================================================-->
|
|
|
|
<a name="ifconfig"></a>
|
|
<h3><img align=bottom alt=" " src="../gx/ques.gif">
|
|
'ifconfig' to Troubleshoot Dropped Ethernet Packets? Uh-Unhg!
|
|
</h3>
|
|
<P> <B>
|
|
From: Chris Oliphant, <A HREF="mailto:Chris.Oliphant@nextel.com">
|
|
Chris.Oliphant@nextel.com</A>
|
|
</B> <P><B>
|
|
I have a HP Vectra XM2 4/100i computer with an onboard PCnet/32
|
|
ethernet chip running Red Hat Linux 4.0, kernal version 2.0.18. I
|
|
currently am having problems communicating over the ethernet
|
|
connection for the last three days. I want to use IFCONFIG to
|
|
troubleshooting the problem, but don't understand how to use the
|
|
command's output. My problems are excessive receive packets being
|
|
dropped and excessive transmit errors. I am able to ping the onboard
|
|
chip, and the port connect is good with other systems connected to it.
|
|
But when I connect my Linux system to the port, I have problems.
|
|
Please advise. Thanks for any assistance you may provide.
|
|
--Chris Oliphant
|
|
</B> <P>
|
|
<img align=bottom alt=" " src="../gx/ans2.gif">
|
|
'ifconfig' is the "interface configuration" utility. It
|
|
isn't a troubleshooting tool. I'd usually 'ping', 'tcpdump'
|
|
and 'netcat'* or 'kermit'* for troubleshooting this sort of
|
|
problem.
|
|
<ul>
|
|
<li>netcat is at ftp.avian.org
|
|
(It is a little "swiss army knife" for TCP/UDP
|
|
-- providing a simple facility for scripted
|
|
TCP connections and transfers).
|
|
<li>kermit (C-Kermit) is at kermit.columbia.edu
|
|
(Aside from being a venerable file transfer
|
|
protocol and serial communications packages,
|
|
C-Kermit is also a telnet/rlogin client --
|
|
offering file transfers, scripting, debugging,
|
|
and log-to-file features over TCP connections).
|
|
</ul>
|
|
Based on your question here's a few standard support questions
|
|
to echo back:
|
|
<blockquote>
|
|
"for the last three days"? What happened then or
|
|
before then? Did the link work fine before then?
|
|
Did you upgrade your kernel? Change drivers? Add
|
|
a new video card? Did this kernel/driver/module
|
|
ever work acceptably with this ethernet card?
|
|
With this system's mixture of other components?
|
|
With a similar (so-called "identical") system?
|
|
</blockquote>
|
|
Excessive errors on an ethernet line suggests the following
|
|
sorts of problems:
|
|
<ol>
|
|
<li>high collision rates --
|
|
Are there other boxes on your LAN segment that might
|
|
be utilizing an excessive amount of the bandwidth?
|
|
How many systems are on this segment? What
|
|
applications are they running (particularly network
|
|
intensive)?
|
|
<P>
|
|
As an example if you put a few xterminals or diskless
|
|
workstation on a network and they fetch all of their
|
|
X resources, binaries and libraries over the wire
|
|
(rather than tftp to a local RAM disk for example) then
|
|
you can flood an unswitched ethernet segment in no time.
|
|
<li>hardware problems with your card or someone else's
|
|
(on the same network segment) --
|
|
<P>
|
|
It is possible that some ether card on your segment
|
|
is broken and "chattering" (generating spurious
|
|
signals which corrupt the data frames (network layer
|
|
"packets") from other cards. This is likely to
|
|
show symptoms across the entire segment (all the machines
|
|
will be affected). It is also possible that any
|
|
particular card is damaged. It is also possible for
|
|
the problem to be in a particular wire (are you using
|
|
10BaseT, coax/thin net, or (heaven forbid!) thicknet?),
|
|
or even a particular port on one of your hubs (repeater,
|
|
concentrator, whatever the "term du jour" for that
|
|
thingie-me-bob is). It could be as simple as "someone
|
|
kinked the wire by running it over with their chair
|
|
wheel."
|
|
<P>
|
|
A good way to test for this is to get an ethernet
|
|
"cross over" cable (sort of a "null modem" for 10BaseT)
|
|
and plug it between the problem system and a known
|
|
good one. This bypasses all the intervening components
|
|
to help isolate the problem.
|
|
<P>
|
|
(Basic troubleshooting 101: identify all components,
|
|
eliminate as many as possible for testing, continue
|
|
simplifying the configuration -- and possibly the tests
|
|
-- until something works, re-add components back until
|
|
failure. That isolates the problem.)
|
|
<P>
|
|
<li>bad driver or configuration --
|
|
If this has never worked under Linux (or under the
|
|
specific kernel your working with) you should boot
|
|
under some other OS and use whatever diagnostic
|
|
utilities HP provides. If those work and Linux
|
|
still fails it suggests a software configuration
|
|
or driver problem. If you had an older kernel that
|
|
did work without a problem, try booting with it
|
|
and running your tests -- it's always possible that
|
|
the card is broken in someway that only shows up
|
|
under conditions that don't occur from DOS or Win '95.
|
|
It's also possible that something in your kernel is
|
|
broken.
|
|
<P>
|
|
Naturally you'll also want to try a 2.0.33 or 2.0.34
|
|
kernel to see if that helps.
|
|
</ol>
|
|
As I've pointed out -- you need to do basic troubleshooting
|
|
in situations like this. You also want to ask yourself:
|
|
"Have I provided enough information for anyone (short of a
|
|
psychic) to answer this question?"
|
|
<P>
|
|
--Jim
|
|
|
|
<p><hr><p>
|
|
<!--================================================================-->
|
|
|
|
<a name="angel"></a>
|
|
<h3><img align=bottom alt=" " src="../gx/ques.gif">
|
|
Cthugha
|
|
</h3>
|
|
<P> <B>
|
|
From: kim angel, <A HREF="mailto:angelk@cadvision.com">
|
|
angelk@cadvision.com</A>
|
|
</B> <P><B>
|
|
Could you please tell me when Cthungha will be available for Win95?
|
|
Thanks!<BR>
|
|
Kim Angel
|
|
</B> <P>
|
|
<img align=bottom alt=" " src="../gx/ans2.gif">
|
|
Sorry. Can't be much help there.
|
|
I presume you mean Cthugha (no 'n') which would be
|
|
the audio/video amusement (turn your $3K multi-media
|
|
system into a $40 "discoteque" light).
|
|
<P> <B>
|
|
<img align=bottom alt=" " src="../gx/ques.gif">
|
|
Hmm....I detect a tad of dissatisfaction with the product!
|
|
</B> <P>
|
|
<img align=bottom alt=" " src="../gx/ans2.gif">
|
|
I've never run it. I have a lack of interest in the
|
|
class of software. I had to look it up in the LSM
|
|
(software map) to remember what it was -- since I
|
|
mis-remembered it as a "game").
|
|
<P>
|
|
I have no idea if or when it would be available for Win '95
|
|
-- or even why anyone would port it. However, I'd contact
|
|
the author/maintainer (should find his/her/their name(s)
|
|
in the man pages or docs).
|
|
<P> <B>
|
|
<img align=bottom alt=" " src="../gx/ques.gif">
|
|
What I am seeking is a program that is capable of applying digitized
|
|
animation choreographed to audio sequences. Could you help me with
|
|
this?
|
|
</B> <P>
|
|
<img align=bottom alt=" " src="../gx/ans2.gif">
|
|
I'm the "Linux Answer Guy" (or, to be more specific and
|
|
a little less pretentious, the "Linux Gazette Answer Guy").
|
|
<P>
|
|
It appears that Cthugha *is* just what you want -- for Linux.
|
|
I'm not the "Windows '95 Answer Guy." A role which I probably
|
|
would be wholly inadequate at since I don't run it on any of
|
|
my systems and I don't like what little of it I've had to run.
|
|
<P>
|
|
Despite this I can offer you a pretty simple piece of advice:
|
|
<blockquote>
|
|
Ask the author.
|
|
</blockquote>
|
|
Another possibility is that you could try the port yourself.
|
|
I'm not sure what the licensing of Cthugha and its sources is
|
|
-- but it's probably GPL. That license lets you port it to
|
|
any OS or platform you like -- or pay anyone else to perform
|
|
the port to your specs.
|
|
<P>
|
|
If you should find that the port to native Windows API's is
|
|
too difficult you could try DESQview/X (which offers X Windows
|
|
API's over DOS) or you could try OpenNT (from Softway Systems
|
|
at www.softway.com). OpenNT offers reasonably complete Unix
|
|
API's -- and some X Windows if I heard correctly -- and runs
|
|
under NT. I have also heard of several developers tools that
|
|
purport to compile Unix/X Windows code into native MS Windows
|
|
API's. However I don't have any experience with them, nor any
|
|
personal interest in them.
|
|
<P>
|
|
-- Jim
|
|
|
|
<p><hr><p>
|
|
<!--================================================================-->
|
|
|
|
<a name="login"></a>
|
|
<h3><img align=bottom alt=" " src="../gx/ques.gif">
|
|
xdm Login doesn't!
|
|
</h3>
|
|
<P> <B>
|
|
From: Cesar Augusto Kant Grossmann, <A HREF="mailto:ckant@fazenda.gov.br">
|
|
ckant@fazenda.gov.<BR></A>
|
|
</B> <P><B>
|
|
I run my Linux Box in the "graphics mode" (changing inittab accordling) =
|
|
bu I can't login as normal user. When I try to login as normal user, the =
|
|
screen flickers like a logout in the X, and the login screen comes back.
|
|
</B> <P>
|
|
<img align=bottom alt=" " src="../gx/ans2.gif">
|
|
This is also referred to as "using 'xdm'" (X Display Manager)
|
|
which provides a GUI login to X.
|
|
<P>
|
|
You don't mention what sort of system you have (which distribution
|
|
what architecture/platform, what packages you've installed or
|
|
updated, etc). You also don't mention whether you can login via
|
|
a text mode console (VC/VT) or via telnet or a serial line.
|
|
<P>
|
|
If you can, the problem is likely to be a mismatch between your
|
|
'xdm' binary and the authentication model/settings that you
|
|
have for your other 'login' modes.
|
|
<P>
|
|
This is one area where the FreeBSD crowd definitely had a
|
|
better model. Under Linux you can use the old-fashioned
|
|
(traditional -- and insecure) authentication mode where
|
|
the hashes of your passwords are stored in the /etc/passwd.
|
|
Alternatively you can install or enable some variation of the
|
|
"shadow" suite. This removes the password hashes from the
|
|
/etc/passwd file and stores them in a different file -- one which
|
|
is only accessible to privileged (SUID) programs -- and not
|
|
readable by normal users.
|
|
<P>
|
|
The purpose of all that is to make the system more resistant
|
|
to dictionary and cryptanalytic (brute force or otherwise)
|
|
attacks. In other words using the 'shadow' options is more
|
|
secure than allowing normal users to just snarf the hashes
|
|
up, and copy them to a machine running 'crack'.
|
|
<P>
|
|
The problem is that there are many programs that authenticate
|
|
users under Unix/Linux. In addition to login there's xdm,
|
|
ftpd, xlock, vlock, screen's lock feature, popd, imapd, the
|
|
passwd command etc. In FreeBSD they modified the libraries
|
|
-- and ensured that all the programs were linked against the
|
|
same shared library. This hides the details -- because the
|
|
library calls that "getpwent()" (get password file entries)
|
|
automatigically merge the passwd hash from the shadow file
|
|
(called /etc/pwdb.master? or somethine like that -- in
|
|
FreeBSD) if that file exists and is readable.
|
|
<P>
|
|
Thus unprivileged files on a shadow enabled get pw entries
|
|
with an "obscured" password field (usually just a "x")
|
|
while privileged (SUID) program get a merged one that's
|
|
suitable for comparison to a properly crypted/hashed
|
|
password as provided by an alleged user.
|
|
<P>
|
|
The other advantage to the FreeBSD method is that changing
|
|
the hashing algorithm (from the traditional 56-bit DES on
|
|
a string of zeros -- to a MD5 sum) is relatively easy --
|
|
only has to be supported in one place (the shared libraries)
|
|
and doesn't require that all the other programs be changed.
|
|
(Another feature of the FreeBSD password/account management
|
|
libraries is that they support dbm hashes of the account
|
|
names -- meaning that *huge* lists of accounts are possible
|
|
without suffering a "linear" increase in login/authentication
|
|
response times)
|
|
<P>
|
|
For now Linux has three different, and partially incompatible
|
|
account/authentication schemes:
|
|
<ul>
|
|
<li>Traditional /etc/passwd files
|
|
<li>Shadow suite (still with flat text files)
|
|
<li>PAM and libpwdb (dbm files and modular authentication
|
|
model).
|
|
</ul>
|
|
The frustrating thing is that these can all work together
|
|
do some degrees -- a pwdb system maintains a set of text
|
|
flatfiles that are sync'd to the dbm/hash tables (these hashes
|
|
are the indexed/search type -- as opposed to the cryptographic
|
|
variety that I referred to earlier -- like 56-DES and MD5).
|
|
<P>
|
|
Although Red Hat has shipped their last 2 or three releases
|
|
with PAM -- it isn't quite all there yet. The most recent
|
|
version of PAM is about 0.63 (beta). However -- if you installed
|
|
a recent Red Hat Linux (4.2 or 5.0 with patches)
|
|
you should be able to use its xdm and all of their stock utils
|
|
without trouble.
|
|
<P>
|
|
If you compiled your own 'xdm' or fetched it from somewhere
|
|
you should consider recompiling it -- but looking for
|
|
options that relate to "shadow" support.
|
|
<P> <B>
|
|
<img align=bottom alt=" " src="../gx/ques.gif">
|
|
What seems to happen? Where I can find more informations about these? A
|
|
FAQ or something like...
|
|
</B> <P>
|
|
<img align=bottom alt=" " src="../gx/ans2.gif">
|
|
I'd start by reading the Shadow HOWTO. I'd also suggest a
|
|
web search on PAM (pluggable authentication modules):
|
|
Here's some URL's I have for them:
|
|
<ul>
|
|
<li>Andrew Morgan's Page:
|
|
http://www.kernel.org/pub/linux/libs/pam/
|
|
<li>The Linux-PAM System Administrators' Guide:
|
|
http://www.math.muni.cz/linux/Linux-PAM/html/pam.html
|
|
<li>PAM - Pluggable Authentication:
|
|
http://www.redhat.com/linux-info/pam/
|
|
<li>PAM specs -- OSF RFC 86.0:
|
|
http://sysadm.sorosis.ro/devel/pam/rfc86.0.txt
|
|
</ul>
|
|
It's a good idea to read about PAM since several other
|
|
Unix flavors are also moving towards it (currently appearing
|
|
in Solaris and HP-UX, at least).
|
|
<P> <B>
|
|
<img align=bottom alt=" " src="../gx/ques.gif">
|
|
Sorry for my bad English, but I think it's better than your
|
|
Portuguese...
|
|
</B> <P>
|
|
<img align=bottom alt=" " src="../gx/ans2.gif">
|
|
Undoubtedly your English is better than my Portugese --
|
|
or even my French (I've never studied the former and only
|
|
had a couple of high school years of the latter).
|
|
|
|
--Jim
|
|
|
|
<!--================================================================-->
|
|
<P> <hr> <P>
|
|
<center><H5>Copyright © 1998, James T. Dennis <BR>
|
|
Published in <I>Linux Gazette</I> Issue 26 March 1998</H5></center>
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
<A HREF="./index.html"><IMG SRC="../gx/indexnew.gif" ALT="[ TABLE OF
|
|
CONTENTS ]"></A> <A HREF="../index.html"><IMG SRC="../gx/homenew.gif"
|
|
ALT="[ FRONT PAGE ]"></A>
|
|
<A HREF="lg_bytes26.html"><IMG SRC="../gx/back2.gif" ALT=" Back "></A>
|
|
<A HREF="./clueless.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
|
|
|
<H4>
|
|
"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
|
</H4>
|
|
|
|
<P> <HR> <P>
|
|
<!--===================================================================-->
|
|
<center><H2>Clueless at the Prompt</H2>
|
|
<H4>By Mike List,
|
|
<a href="mailto:troll@net-link.net">troll@net-link.net</a></H4>
|
|
</center>
|
|
<P> <HR> <P>
|
|
<center><IMG ALIGN=MIDDLE SRC = "../gx/list/gnub.jpg" ></center><p>
|
|
|
|
<h4>Welcome to installment 6 of Clueless at the Prompt,</h4>
|
|
|
|
<p>
|
|
Here's this month's account of the triumphs, trials and
|
|
tribulations that I caused myself or encountered since the last
|
|
time, and a couple tips that may come in handy and increase your
|
|
understanding of linux.
|
|
|
|
<hr><p><h4>
|
|
*Splitvt and Screen:</h4> Last month, I suggested splitvt as a substitute
|
|
for virtual consoles when using a serial terminal. I still recommend
|
|
splitvt since you can work in two separate windows that are in sight of
|
|
each other- cut and paste with gpm is a snap for scavenging previously
|
|
written scripts or....
|
|
But several people wrote to tell me about screen, which is an even better
|
|
substitute for virtual consoles when using that dumb terminal. I'm still
|
|
working on making screen work fluidly, Alt-F* took a little
|
|
getting used to at first. Instead of the A-F* combination you use the
|
|
C-a* keys to open a new window. There are some other features that I have
|
|
only read about, the only difference between screen and virtual consoles
|
|
is that each new screen is already logged on.
|
|
<p>
|
|
Like I said, I'm not familiar with all of screen's features, but to use
|
|
it, basically you type:
|
|
<pre>
|
|
screen progname
|
|
</pre>
|
|
and your screen session is started in VT0.
|
|
To add more VTs you can use:
|
|
<pre>
|
|
Ctrl-a c
|
|
</pre>
|
|
and to change from one screen to another:
|
|
<pre>
|
|
Ctrl-a 0-9
|
|
</pre>
|
|
and you can change from screen to screen, depending on how many you have
|
|
opened. Note that the screens are numbered 0-9 rather than 1-10,
|
|
the only clumsy feature of this program, IMHO.
|
|
<hr><p><h4>
|
|
*Back to basics:</h4> Some friends of mine, the nefarious UGD folks
|
|
have a page <a href="http://www.geocities.com/SiliconValley/Pines/1703/docs/dog/">
|
|
"User Guide Dog"</a>which details many, if not
|
|
most of the usual commands that a new user might find useful but not
|
|
clearly documented. I don't have to tell you that man pages can be pretty
|
|
hostile to a gnubee (ever wonder what that picture was?), but if you
|
|
check them out after using the programs to do the things you most commonly
|
|
need to do, you will most likely achieve enlightenment - the information
|
|
is suddenly much more clear. The UGD Project is shaping up as a good
|
|
vehicle for this journey, if you can take the ride. Bring along your sense
|
|
of humor, one of the guys is a Canadian from out on the tundra ; ).
|
|
<hr><p><h4>
|
|
*Some stuff you may not hear anywhere else (so basic they forgot
|
|
to tell you):</h4>
|
|
<ul>Here's some stuff you probably already know
|
|
about, if you've been into Linux (or other unices)for a while.
|
|
<li><h4>Filename Completion</h4>: If you aren't an enthusiastic
|
|
typist, you'll find this of value. Just type enough of the filename
|
|
to make it unique, then hit
|
|
<pre>tab</pre>
|
|
it will complete the filename so you can get on with your life
|
|
and file manipulation.Play with this feature, if you haven't
|
|
typed enough of the name to be unique, it will sit and stare at
|
|
you, try another character or two.Likewise, if you specified the
|
|
wrong directory,you'll get nada.
|
|
<li><h4>Quick cd</h4>: Another keystroke saving apparatus
|
|
is:
|
|
<pre>..</pre>
|
|
and its close relative
|
|
<pre>.</pre>
|
|
The details for
|
|
a quick cd areas follows: as you may be already aware, the dots
|
|
represent your current directory(single dot) and parent directory
|
|
(double dot).By CDing to
|
|
<pre>..</pre>
|
|
you will be magically transported to the parent directory, ie
|
|
from /usr/bin to /usr.You can use:
|
|
<pre>cd -</pre>
|
|
to return to the previous directory,
|
|
and to go up two or more levels:
|
|
<pre>../../and so on</pre>
|
|
will work. The single dot is not as useful in terms of cd, but it
|
|
does have its use. If you are in a directory that's not in your
|
|
path, or dont have
|
|
<pre>.</pre>
|
|
in your path statement, you must
|
|
give a path to run an executable file. This is easily accomplished
|
|
by typing:
|
|
<pre>./execuname</pre>
|
|
which will give the relative pathname, allowing it to be found and
|
|
run.
|
|
There are a few good reasons why using the single
|
|
dot in your path statement isn't a good idea, suffice to say, if
|
|
you'd like more info on that subject, you should read up on system
|
|
security.
|
|
<li><h4>GPM</h4>: This has been so basic to my linux experience
|
|
that I would be crippled without it, in fact once when I flubbed
|
|
an installation and didn't have it running, it became my first
|
|
priority to correct that little oversight. The mere fact that the
|
|
non unix OS seem not to have this is reason to upgrade to Linux,
|
|
although I found a dos program that allows a similar use of the
|
|
mouse on simtelnet. In a related matter, if you dual boot(most
|
|
home boxes, I'd imagine)you might find yourself using
|
|
<pre>ls -aF</pre>
|
|
when you actually meant to type
|
|
<pre>dir</pre>
|
|
or
|
|
<pre>cp</pre>
|
|
when what you wanted was
|
|
<pre>copy</pre>
|
|
you can create batch files(like shell scripts) named for your
|
|
favorite unix commands, using your favorite switches. Not as
|
|
cool as dosemu or just plain staying in Linux, but ya gotta do
|
|
what ya gotta do.
|
|
</ul>
|
|
<hr><p><h4>
|
|
*Errata:</h4> No I don't really do "make dev" when I make a kernel
|
|
(maybe I could blame it on my keyboard)make dep is what I meant.
|
|
<hr><p>
|
|
If you have a subject that you would like to see covered or have
|
|
any corrections, comments or flames let me know, and I'll look
|
|
into the matter.
|
|
<a href="mailto:troll@net-link.net">troll@net-link.net</a><p>
|
|
<b>See you next month!</b></center>
|
|
<!--===================================================================-->
|
|
<P> <hr> <P>
|
|
<center><H5>Copyright © 1998, Mike List<BR>
|
|
Published in Issue 26 of <i>Linux Gazette</i>, March 1998</H5></center>
|
|
|
|
<!--===================================================================-->
|
|
<P> <hr> <P>
|
|
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
|
|
ALT="[ TABLE OF CONTENTS ]"></A>
|
|
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
|
|
ALT="[ FRONT PAGE ]"></A>
|
|
<A HREF="./lg_answer26.html"><IMG SRC="../gx/back2.gif"
|
|
ALT=" Back"></A>
|
|
<A HREF="./marsden.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
|
<P> <hr> <P>
|
|
|
|
<H4>
|
|
"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
|
</H4>
|
|
|
|
<P> <HR> <P>
|
|
<!--===================================================================-->
|
|
|
|
|
|
|
|
|
|
<center>
|
|
<h1>EMACSulation</h1>
|
|
<h4>by
|
|
<a href="mailto:emarsden@mail.dotcom.fr">Eric Marsden</a>
|
|
</h4>
|
|
</center>
|
|
|
|
<P> <HR> <P>
|
|
|
|
<blockquote><small>
|
|
|
|
This column is devoted to making the best use of Emacs, text editor
|
|
extraordinaire. Each issue I plan to present an Emacs extension
|
|
which can improve your productivity, make the sun shine more brightly
|
|
and the grass greener.
|
|
|
|
</small></blockquote>
|
|
|
|
|
|
|
|
<h2>Internet-ready!</h2>
|
|
|
|
<p> You've probably heard the hype about ``Internet-ready'' operating
|
|
systems where you can access the Internet with a click of your mouse.
|
|
Well, users of the customizable <a
|
|
href="http://www.jimpick.com/gnome/ui-proposal/">Emacs user
|
|
interface</a> have had the Net only a keypress away since as early as
|
|
1989!
|
|
|
|
<p> Emacs has built-in networking capability, which it uses for connecting
|
|
to news or SMTP servers and for web browsing. To illustrate its use,
|
|
here is a bit of code which opens a TCP connection to port 13 of your
|
|
local machine to request the current time :
|
|
|
|
<pre>
|
|
;; usage: M-x display-date
|
|
(defun display-date ()
|
|
(interactive)
|
|
(let ((stream (open-network-stream "DAYTIME" nil "localhost" "daytime")))
|
|
(set-process-filter stream 'my-process-filter))
|
|
|
|
(defun my-process-filter (proc string)
|
|
(message "Current date is %s" (substring string 0 -1)))
|
|
</pre>
|
|
|
|
<p> This code --which assumes you're running inetd-- should display
|
|
something like the format of <code>date</code> in the minibuffer. The
|
|
rich set of primitives and the integrated error management provided by
|
|
Emacs make it easy to program useful utilities; consider how many
|
|
lines of code would have been required to provide the equivalent
|
|
functionality in C.
|
|
|
|
|
|
<h3>Ange-ftp</h3>
|
|
|
|
<p> <b>Ange-ftp</b> is a package by <a
|
|
href="http://hplbwww.hpl.hp.com/people/ange/">Andy Norman</a> which
|
|
allows Emacs to see the entire Internet as a virtual filesystem. It
|
|
adds remote editing capability by mapping requests for remote files to
|
|
FTP commands. For example, if you ask Emacs to open a file named
|
|
|
|
<pre>
|
|
/marsden@ondine.cict.fr:~/.emacs
|
|
</pre>
|
|
|
|
<p> then ange-ftp will spawn an FTP process, connect to the host
|
|
<tt>salines.cict.fr</tt> as user <tt>marsden</tt>, CWD to my home
|
|
directory, GET my Emacs initialization file and display the file as if
|
|
it were on your local filesystem. If ange-ftp needs a password it will
|
|
read one from the minibuffer. If you make changes to the file and save
|
|
it, it will be PUT back to the server for you. You can even copy files
|
|
from one remote machine to another by typing <code>M-x copy-file RET
|
|
/user1@host1:/path/to/file1 RET /user2@host2:/path/file2</code> ;
|
|
ange-ftp looks after opening two ftp connections for you.
|
|
|
|
<p> Ange-ftp comes pre-installed with Emacs (XEmacs features <b>efs</b>, a
|
|
complete rewrite by the same author). The only customization you might
|
|
need to make is to configure a gateway, if you don't have direct
|
|
Internet access. You can use <tt>~/.netrc</tt> to configure default
|
|
logins for oft used hosts in the traditional way (and even passwords if
|
|
you're foolhardy).
|
|
|
|
<p> Perhaps the most elegant feature of ange-ftp is its seamless
|
|
integration with Emacs; the only visible change it introduces is the
|
|
extended filename syntax. Filename completion (by pressing <tt>TAB</tt>
|
|
in the minibuffer) is available on remote hosts in the same way as on
|
|
your local machine. Ange-ftp works well with Dired, the directory
|
|
editor, allowing you to browse though distant machines, operate on
|
|
several remote files at once, etc. It also works with <a
|
|
href="http://www.cl.cam.ac.uk/texinfodoc/emacs_14.html#SEC71">bookmarks</a>,
|
|
so you can memorize an interesting spot on your favorite ftp server,
|
|
and jump back to the same spot next week with ease. Take a typical
|
|
usage: ask Emacs to open the following directory (with <code>C-x
|
|
C-f</code> or from the Files menubar) :
|
|
|
|
<pre>
|
|
/anonymous@ftp.kernel.org:/pub/linux/kernel/
|
|
</pre>
|
|
|
|
<p> You will be presented with a directory listing many different releases
|
|
of Linux kernels (if you have a line like <code>default login anonymous
|
|
password user@site</code> in <tt>~/.netrc</tt> then ange-ftp can infer
|
|
the <tt>anonymous@</tt> for you automatically). Type <code>C-x r
|
|
m</code> to bookmark the location. There's more on bookmarks in Jesper
|
|
Pedersen's <a
|
|
href="http://www.linuxgazette.com/issue01to08/emacs_mar96.html">article</a>
|
|
in issue 7 of the <i>Linux Gazette</i>.
|
|
|
|
|
|
|
|
<h3>Web browsing</h3>
|
|
|
|
<p> <a href="http://www.cs.indiana.edu/elisp/w3/docs.html">Emacs-w3</a>
|
|
(also referred to by some as <i>Gnuscape</i>) is a web browser written
|
|
by William Perry in Emacs Lisp. It is fairly sophisticated in certain
|
|
respects, having been the first production browser to support cascading
|
|
style sheets. It understands tables, and can display images inline
|
|
under <a href="http://www.XEmacs.org/">XEmacs</a>, or by invoking
|
|
external viewers when hosted by GNU Emacs. Its author notes that
|
|
Emacs-w3 is yet another reason never to leave the comfort of the One
|
|
True Editor, but to me it serves more as a reminder of the deficiencies
|
|
of Emacs Lisp : it is slow, and has a tendency to block while waiting
|
|
on a slow link (unfortunately Emacs is not multi-threaded, though you
|
|
can set the variable <tt>url-be-asynchronous</tt> to t to reduce this
|
|
annoyance). If you want to try it out get the latest version from the
|
|
<a href="ftp://ftp.cs.indiana.edu/pub/elisp/w3/.betas/">betas
|
|
directory</a>, which has many improvements over the version distributed
|
|
on most Linux CDROMs.
|
|
|
|
<p> <b>browse-url</b> is an nifty Emacs extension which can dispatch
|
|
references to URLs to Mozilla or to Emacs-w3. It does this by using
|
|
Netscape's <a
|
|
href="http://home.netscape.com/newsref/std/x-remote.html">remote
|
|
invocation protocol</a>, which as a side note even works when you're
|
|
running the browser on a distant machine (the implementation uses the
|
|
X11 inter-application communication protocol). Emacs features its own
|
|
remote control mechanism which lets you send commands to a running Emacs
|
|
(even on another machine), called gnuserv/emacsclient, which I might
|
|
talk about another time.
|
|
|
|
<p> Recent versions of Emacs are set up to use browse-url in mail and news
|
|
reading modes. URLs should be highlighted when you pass the mouse over
|
|
them, and you can click on them with the middle mouse button to invoke
|
|
your favorite browser. Here's how you can set up browse-url to use
|
|
Mozilla when you're running X11 and Emacs-w3 otherwise :
|
|
|
|
<pre>
|
|
(if (eq window-system 'x)
|
|
(setq browse-url-browser-function 'browse-url-netscape
|
|
browse-url-new-window-p t)
|
|
(setq browse-url-browser-function 'browse-url-w3))
|
|
</pre>
|
|
|
|
<p> Another more indirect use of browse-url is <a
|
|
href="http://nwv.www.media.mit.edu/people/nwv/projects/webjump/">WebJump</a>
|
|
by Neil W. Van Dyke. This Emacs plugin provides a programmable hotlist
|
|
of interesting web sites with which to feed your browser. Perhaps its
|
|
most interesting feature is the ability to send a query to Internet
|
|
search engines such as <a
|
|
href="http://www.altavista.digital.com/">AltaVista</a> and <a
|
|
href="http://www.yahoo.com/">Yahoo!</a> without having to load the
|
|
first page of ads, but it also includes features for dispatching
|
|
searches to FAQ and RFC archives, to the <a
|
|
href="http://www.m-w.com/dictionary.htm">online Webster</a> or <a
|
|
href="http://www.thesaurus.com/">Thesaurus</a>, or to bring up an
|
|
appropriate page of the Java API. Naturally (this is Emacs) you can
|
|
extend it to include your own favorite sites. You might find yourself
|
|
using it more than your browser's bookmarks.
|
|
|
|
|
|
<h3>Files at your Fingertips</h3>
|
|
|
|
<p> <b>ffap</b> is a powerful package which extends the
|
|
<code>find-file</code> command (the one which prompts for a file name
|
|
in the minibuffer, normally bound to <code>C-x C-f</code>). It searches
|
|
the text around the cursor position for something which might represent
|
|
a filename -- a file in the current directory, a C #included file, a
|
|
newsgroup reference, an ange-ftp style reference to a file on a remote
|
|
machine or an URL -- and prompts you either to open that file, or to
|
|
send the URL to a browser (via browse-url). Once experiencing this you
|
|
quickly get sick of typing filenames into the minibuffer, and may find
|
|
yourself inserting ``hyperlinks'' in strategic places in your files to
|
|
save typing. ffap is distributed with both Emacs and XEmacs; I bind it
|
|
to the F3 key as follows :
|
|
|
|
<pre>
|
|
(autoload 'find-file-at-point "ffap" nil t)
|
|
(define-key global-map [(f3)] 'find-file-at-point)
|
|
</pre>
|
|
|
|
<p> or if you prefer you can simply override the traditional
|
|
<tt>find-file</tt> by saying
|
|
|
|
<pre>
|
|
(autoload 'find-file-at-point "ffap" nil t)
|
|
(define-key global-map [(control x) (control f)] 'find-file-at-point)
|
|
</pre>
|
|
|
|
<p> ffap is pretty good at determining interesting filenames; it even knows
|
|
how to recognize RFC names, and from which server they may be obtained.
|
|
It goes to the trouble of pinging remote machines to determine whether
|
|
they are alive, and can naturally be extended to recognize personal
|
|
types of filename references. To conclude on filename shortcuts, you
|
|
might enjoy Noah Friedman's <a
|
|
href="http://www.splode.com/users/friedman/software/emacs-lisp/index.html#fff">fff</a>
|
|
(Fast File Finder) which helps you find files hidden somewhere deep in
|
|
inode-space by querying your <tt>locate</tt> database (part of the GNU
|
|
findutils).
|
|
|
|
|
|
|
|
<h2>Feedback</h2>
|
|
|
|
<p> Several people wrote to me with comments on last month's article on
|
|
<b>jka-compr</b>. <a href="mailto:cbbrowne@hex.net">Chistopher B.
|
|
Browne</a> told me he prefers <a
|
|
href="ftp://archive.cis.ohio-state.edu/pub/gnu/emacs/elisp-archive/misc/crypt++.el.Z">crypt++</a>,
|
|
which provides on-the-fly decryption and encryption as well as
|
|
automatic compression and decompression. Whereas jka-compr trusts the
|
|
filename extension, crypt++ reads the first few bytes of the file to
|
|
determine its type. The package also has functions for dealing with
|
|
DOS-style linefeeds which you might find useful if you have to exchange
|
|
files with other operating systems, although you could just as well say
|
|
<code>(standard-display-ascii 13 "")</code>, which simply hides those
|
|
<tt>^M</tt> characters. Crypt++ is not a standard part of Emacs (it's
|
|
not included in the GNU Emacs distribution, though it is bundled with
|
|
XEmacs). I haven't tested its cryptographic capabilities, because
|
|
|
|
<blockquote>
|
|
<tt><POLITICS></tt> <br>
|
|
|
|
As a French citizen I am <a
|
|
href="http://cwis.kub.nl/~frw/people/koops/cls2.htm#fr">prohibited</a>
|
|
from using any form of encryption. In France encryption requires
|
|
authorization from the <a
|
|
href="http://www.elysee.fr/pdt/pdt.htm">President</a>, which is
|
|
accorded only to large military companies and to financial institutions
|
|
(and then only if the keys are held in escrow). These laws are <a
|
|
href="http://www.uwsg.indiana.edu/hypermail/linux/kernel/9611/0396.html">one
|
|
of the reasons</a> holding back the incorporation of kernel-level
|
|
support for encryption in Linux. Before accusing France of being
|
|
backward, please consider the fact that countries such as Iran, China
|
|
and Russia impose similar restrictions on the freedom of their
|
|
citizens.
|
|
|
|
<br> <tt></POLITICS></tt>
|
|
</blockquote>
|
|
|
|
<p> If you're using the latest version of XEmacs (20.3 stable as of this
|
|
writing), the suggestion I make last month for enabling
|
|
<b>jka-compr</b> won't work. The XEmacs maintainers have decided that
|
|
the behaviour of your editor shouldn't be modified by loading an
|
|
extension module, but by calling an appropriate initialization
|
|
function. The correct way of enabling jka-compr is to say
|
|
<code>(toggle-auto-compression 1 t)</code>. Sorry 'bout that, folks.
|
|
|
|
|
|
|
|
<h2>Next time ...</h2>
|
|
|
|
<p> In the next issue I'll review ediff, a powerful interface to diff
|
|
and patch. Don't hesitate to contact me at
|
|
<tt><emarsden@mail.dotcom.fr></tt> with comments, corrections or
|
|
suggestions (what's <em>your</em> favorite couldn't-do-without Emacs
|
|
extension package?). <code>C-u 1000 M-x hail-emacs</code> !
|
|
|
|
<p> <b>PS</b> : Emacs isn't in any way limited to Linux, since
|
|
implementations exist for many other operating systems. However, as one
|
|
of the leading bits of <a
|
|
href="http://earthspace.net/~esr/open-source.html">open-source</a>
|
|
software, one of the most powerful, complex and customizable, I feel it
|
|
has its place in the <i>Linux Gazette</i>.
|
|
|
|
|
|
<!--===================================================================-->
|
|
<P> <hr> <P>
|
|
<center><h5>Copyright © 1998, Eric Marsden<br>
|
|
Published in Issue 26 of <i>Linux Gazette</i>, March 1998</H5></center>
|
|
|
|
<!--===================================================================-->
|
|
<P> <hr> <P>
|
|
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
|
|
ALT="[ TABLE OF CONTENTS ]"></A>
|
|
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
|
|
ALT="[ FRONT PAGE ]"></A>
|
|
<A HREF="./clueless.html"><IMG SRC="../gx/back2.gif"
|
|
ALT=" Back "></A>
|
|
<A HREF="./gm.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
|
<P> <hr> <P>
|
|
|
|
<H4>
|
|
"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
|
</H4>
|
|
|
|
<P> <HR> <P>
|
|
<!--===================================================================-->
|
|
|
|
<!-- =============================================================
|
|
This Page Designed by Michael J. Hammel.
|
|
Permission to use all graphics and other content for private,
|
|
non-commerical use is granted provided you give me (or the
|
|
original authors/artists) credit for the work.
|
|
|
|
CD-ROM distributors and commercial ventures interested in
|
|
providing the Graphics Muse for a fee must contact me,
|
|
Michael J. Hammel (mjhammel@csn.net), for permission.
|
|
============================================================= !--><!-- The Button box as a client side imagemap --> <MAP NAME="nav-main"><AREA SHAPE="rect" HREF="#mews" coords="20,18 185,40"><AREA SHAPE="rect" HREF="#webwonderings" coords="10,60 185,83"><AREA SHAPE="rect" HREF="#musings" coords="90,102 185,130"><AREA SHAPE="rect" HREF="#resources" coords="70,152 185,180"></MAP>
|
|
<TABLE BORDER=0 COLS=2 WIDTH="100%" >
|
|
<TR>
|
|
<TD><IMG SRC="../gx/hammel/gm3.gif" ALT="Welcome to the Graphics Muse" NOSAVE HEIGHT=216 WIDTH=441 ALIGN=LEFT></TD>
|
|
|
|
<TD VALIGN=BOTTOM>
|
|
<CENTER><FONT SIZE=-1>Set your browser as wide as you'd like now.
|
|
I've fixed the Muse to expand to fill the aviailable space!</FONT></CENTER>
|
|
|
|
<CENTER><FONT SIZE=-2>© 1998 by <A HREF="mailto:mjhammel@csn.net">mjh</A> </FONT></CENTER>
|
|
</TD>
|
|
</TR>
|
|
</TABLE>
|
|
|
|
<HR WIDTH="100%">
|
|
<TABLE BORDER=0 COLS=2 WIDTH="100%" >
|
|
<TR>
|
|
<TD WIDTH="185"><IMG SRC="../gx/hammel/muse-image-map.gif" BORDER=0 ALT="Button Bar" USEMAP="#nav-main" HEIGHT=200 WIDTH=185 ALIGN=LEFT></TD>
|
|
|
|
<TD VALIGN=TOP><B><FONT SIZE=+1>muse:</FONT></B>
|
|
<OL>
|
|
<LI>
|
|
<I>v;</I> to become absorbed in thought </LI>
|
|
|
|
<LI>
|
|
<I>n;</I> [ fr. Any of the nine sister goddesses of learning and the arts
|
|
in Greek Mythology ]: a source of inspiration </LI>
|
|
</OL>
|
|
<IMG SRC="../gx/hammel/w.gif" ALT="W" HEIGHT=28 WIDTH=36 ALIGN=BOTTOM>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.
|
|
<CENTER><FONT SIZE=-1>[<A HREF="#mews">Graphics Mews</A>][<A HREF="#webwonderings">WebWonderings</A>][<A HREF="#musings">Musings</A>]
|
|
[<A HREF="#resources">Resources</A>]</FONT></CENTER>
|
|
</TD>
|
|
</TR>
|
|
</TABLE>
|
|
|
|
<BR><IMG SRC="../gx/hammel/t.gif" ALT="T" HEIGHT=28 WIDTH=26 ALIGN=LEFT>his column
|
|
is dedicated to the use, creation, distribution, and discussion of computer
|
|
graphics tools for Linux systems.
|
|
<BR>
|
|
<BR>Not much to say this month. I've been very busy working on some
|
|
things for Linux Journal and a few other projects. I did manager
|
|
to get the reviews done that I had promised last month. Well, 2 out
|
|
of 3 of them. Thats better than I usually do.
|
|
|
|
<P> In this months column I'll be covering
|
|
the following:
|
|
<UL>
|
|
<LI>
|
|
XeoMenu, a Java based menuing program</LI>
|
|
|
|
<LI>
|
|
an update on X server support for 3D cards and the X Input Extension</LI>
|
|
|
|
<LI>
|
|
VRWave, a VRML browser for Linux</LI>
|
|
</UL>
|
|
<A NAME="mews"></A>
|
|
<BR>
|
|
<TABLE BORDER=0 COLS=1 WIDTH="100%" >
|
|
<TR>
|
|
<TD><IMG SRC="../gx/hammel/mews.gif" ALT="Graphics Mews" HEIGHT=53 WIDTH=242 ALIGN=LEFT></TD>
|
|
</TR>
|
|
</TABLE>
|
|
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.
|
|
<BR>
|
|
<TABLE BORDER=0 COLS=3 WIDTH="100%" >
|
|
<TR>
|
|
<TD COLSPAN="3" WIDTH="100%" BGCOLOR="#000000"><IMG SRC="../gx/hammel/cleardot.gif" ALT="indent" HSPACE=30 VSPACE=2 HEIGHT=1 WIDTH=1 ALIGN=LEFT></TD>
|
|
|
|
<TD></TD>
|
|
</TR>
|
|
|
|
<TR>
|
|
<TD WIDTH="50%">
|
|
<H2>
|
|
XFPovray 1.3</H2>
|
|
<A HREF="mailto:mallozzir@cspar.uah.edu">Robert Mallozzi </A>announces
|
|
a new version (1.3) of his XForms interface to the ray tracer POV-Ray.
|
|
If you have ever used POV-Ray from the command line, you might find this
|
|
program useful. Check
|
|
|
|
<P> <A HREF="http://cspar.uah.edu/~mallozzir/">http://cspar.uah.edu/~mallozzir/</A>
|
|
|
|
<P>Source code is available in tgz, bzip2, and rpm formats.
|
|
|
|
<P>Robert S. Mallozzi
|
|
<BR>University of Alabama
|
|
<BR>http://cspar.uah.edu/~mallozzir/</TD>
|
|
|
|
<TD ROWSPAN="3" WIDTH="2" BGCOLOR="#000000"><IMG SRC="../gx/hammel/cleardot.gif" ALT="indent" HSPACE=1 HEIGHT=1 WIDTH=1></TD>
|
|
|
|
<TD WIDTH="49%">
|
|
<H2>
|
|
XMRM 2.0 (Alpha release)</H2>
|
|
The Institute of Computer Graphics at Vienna University of Technology,
|
|
Austria, announce the release of XMRM 2.0alpha
|
|
|
|
<P>XMRM (multi resolution morphing for X) is an image morphing program
|
|
written for XWindows. A special feature of this program, which is not found
|
|
in other morphing packages, is the ability to control the morphing speed
|
|
of details in relation to the morphing speed of big features.
|
|
|
|
<P>Check out the XMRM homepage:
|
|
<BR><A HREF="http://www.cg.tuwien.ac.at/research/ca/mrm/">http://www.cg.tuwien.ac.at/research/ca/mrm/</A>
|
|
|
|
<P>For a few animated GIFs visit the Online manual:
|
|
<BR><A HREF="http://www.cg.tuwien.ac.at/~xmrm/">http://www.cg.tuwien.ac.at/~xmrm/</A>
|
|
|
|
<P>For download got to:
|
|
<BR><A HREF="ftp://ftp.cg.tuwien.ac.at/pub/linux/xmrm/">ftp://ftp.cg.tuwien.ac.at/pub/linux/xmrm/</A>
|
|
|
|
<P>Greetings, The XMRM-Team <<A HREF="mailto:xmrm@cg.tuwien.ac.at">xmrm@cg.tuwien.ac.at</A>>
|
|
<BR> </TD>
|
|
</TR>
|
|
|
|
<TR>
|
|
<TD BGCOLOR="#000000"><IMG SRC="../gx/hammel/cleardot.gif" HSPACE=1 HEIGHT=1 WIDTH=1></TD>
|
|
|
|
<TD BGCOLOR="#000000"><IMG SRC="../gx/hammel/cleardot.gif" HSPACE=1 HEIGHT=1 WIDTH=1></TD>
|
|
</TR>
|
|
|
|
<TR>
|
|
<TD>
|
|
<H2>
|
|
FREETYPE 1.0 The FREE TrueType Font Engine</H2>
|
|
Copyright (C) 1996-1998 The FreeType Development Team
|
|
|
|
<P>The FreeType engine is a free and portable TrueType font rendering engine,
|
|
available in ANSI C and Pascal source code. It has been
|
|
developed to provide TrueType support to a great variety
|
|
of platforms and environments.
|
|
<BR>
|
|
<BR>Notice that FreeType is a <I>library</I>. It is not
|
|
a font server for your preferred environment, even though it
|
|
has been designed to be the basis of many high-level
|
|
libraries, tools and font servers.
|
|
|
|
<P>It's a clean-room implementation that is not
|
|
derived from the original TrueType engine developed by
|
|
Apple and Microsoft, though it matches it regarding rendering
|
|
quality. To our knowledge, it's the only royalty-free complete
|
|
TrueType engine available.
|
|
|
|
<P>For more information, please visit the Freetype web site at:
|
|
<BR><A HREF="http://www.physiol.med.tu-muenchen.de/~robert/freetype.html">http://www.physiol.med.tu-muenchen.de </A>
|
|
<BR><A HREF="http://www.physiol.med.tu-muenchen.de/~robert/freetype.html">/~robert/freetype.html</A>
|
|
<BR> </TD>
|
|
|
|
<TD>Thats its. Not much in the way of announcments this month.
|
|
I had a few more, but lost them pasting them into my XPostitPlus program.
|
|
Thats the first time its crashed in that manner - where I lost the data.
|
|
Bummer.</TD>
|
|
</TR>
|
|
|
|
<TR>
|
|
<TD COLSPAN="3" WIDTH="100%" BGCOLOR="#000000"><IMG SRC="../gx/hammel/cleardot.gif" HSPACE=1 HEIGHT=1 WIDTH=1></TD>
|
|
</TR>
|
|
</TABLE>
|
|
<!--
|
|
-- Did You Know Section
|
|
-->
|
|
<H4>
|
|
Did You Know?</H4>
|
|
...there is a OpenGL widget for GTK? Take a look at <A HREF="ftp://ftp.gimp.org/pub/gtk/contrib/glgtk-demo.971104.tgz">ftp://ftp.gimp.org/pub/gtk/contrib/glgtk-demo.971104.tgz.</A>
|
|
<BR><!--
|
|
-- Q and A Section
|
|
-->
|
|
<H4>
|
|
<B><FONT SIZE=+0>Q and A</FONT></B></H4>
|
|
<I>Q:</I> <I>How do you use anti-aliasing with POV-Ray?
|
|
Do higher values cause more anti-aliasing?</I>
|
|
|
|
<P>A: Ron Parker responded on the IRTC-L discussion list:
|
|
Whenever POV-Ray detects a sufficient change, the <I>threshold</I>, in
|
|
colour from one pixel to it's neighbour, it will calculate the in-between
|
|
color pixels by shooting multiple rays into the scene, rather than just
|
|
one, to determine the colour. The higher the "+A" number is (from
|
|
0 to 1), the more rays will be shot into the scene, and the smaller a difference
|
|
in colour from one pixel to the next will be needed to cause the anti-aliasing
|
|
to be brought into effect. Anti-aliasing is triggered when the threshold
|
|
between two pixels is reached. The number of rays is controlled by +R,
|
|
and the "spread" is controlled by +J. Setting +A0.1 will trigger
|
|
on smaller color differences than +A0.3, so it actually anti-aliases more
|
|
than higher values of +A. All this is the description for +AM=1.
|
|
Adaptive supersampling (+AM=2) works somewhat differently.
|
|
|
|
<P>For more information, see section 6.2.5.4 of the POV documentation.
|
|
|
|
<P>Ron Parker * <A HREF="mailto:parkerr@mail.fwi.com">parkerr@mail.fwi.com</A>
|
|
* <A HREF="http://www2.fwi.com/~parkerr">http://www2.fwi.com/~parkerr</A>
|
|
|
|
<P><I>Q: I took an image to a printer today who requested that I bring
|
|
back the image when I have increased the resolution from 72 pixels/inch
|
|
to 300 pixels /inch. I cant locate how to do this with the GIMP. Any pointers?</I>
|
|
|
|
<P>A: You can scale the image, but that will decrease the quality
|
|
of the image. The best way to deal with images you plan to print is to
|
|
plan to <I>create</I> them using the correct resolution. For example,
|
|
if you want an 8.5" by 11" image at 300pixels/inch:
|
|
<UL><B><FONT SIZE=-1>width: 8.5*300 = 2550 pixels</FONT></B>
|
|
<BR><B><FONT SIZE=-1>height: 11*300 = 3300 pixels</FONT></B></UL>
|
|
So you need to start with an image window that is 2550x3300 and work from
|
|
there. Keep in mind - doing this sort of image manipulation (with
|
|
such large image sizes) is better suited to:
|
|
<OL>
|
|
<LI>
|
|
faster CPU's.</LI>
|
|
|
|
<LI>
|
|
tons of memory</LI>
|
|
|
|
<LI>
|
|
lots of disk space</LI>
|
|
</OL>
|
|
As to "can I convert from 72 to 300 pixels from my original image": yes,
|
|
use the scale option (image->scale) and set the correct size. But
|
|
remember - scaling up will reduce image quality, especially going from
|
|
72dpi to 300dpi.
|
|
<BR>
|
|
<TABLE BORDER=0 COLS=1 WIDTH="100%" BGCOLOR="#000000" NOSAVE >
|
|
<TR>
|
|
<TD><IMG SRC="../gx/hammel/cleardot.gif" HEIGHT=3 WIDTH=1></TD>
|
|
</TR>
|
|
</TABLE>
|
|
|
|
<H2>
|
|
Reader Mail</H2>
|
|
An unnamed reader sent the following information:
|
|
<UL>I've recently written 3 Perl scripts which help to distribute the task
|
|
of rendering with povray between several CPU's. One script is for
|
|
SMP (multiple processor) machines. It will break an image into halves
|
|
and start a separate process for each. This utilizes both CPU's in
|
|
a dual processor machine, and nearly halves the rendering time. The
|
|
other two scripts work together to utilize multiple machines on a network.
|
|
The server script tells each client script how much of an image to render
|
|
(also sending the .pov file and any necessary files to each client).
|
|
|
|
<P>These scripts were created using Perl 5.004, Linux 2.0.32, and POVRay
|
|
3.0. I'd be honored if you would like to include a link from your excellent
|
|
graphics site to my page at <A HREF="http://www.frozenwave.com/~hixson/projects.html">http://www.frozenwave.com/~hixson/projects.html</A>.</UL>
|
|
<FONT COLOR="#993300"><B><I>'Muse</I></B>:</FONT> I really need to
|
|
update the LGH and UGU pages. Anyway, if any of my readers tries
|
|
these scripts, let me know what you think of them. I don't have any
|
|
multiprocessor boxes, although I do have a network. I just don't
|
|
have time right now to experiment with these scripts.
|
|
|
|
<P><A HREF="mailto:slogan@cts.com">Syd Logan</A>, Senior Software Engineer
|
|
@ NetManage, Inc., writes:
|
|
<UL>I was perusing an old copy of <A HREF="http://www.linuxjournal.com">The
|
|
Linux Journal</A> in preparation to do an article or two for them on the
|
|
X Image Extension when I came across your article in the November 1996
|
|
issue. This isn't so much about the article, but I just thought I'd drop
|
|
you a line to make you aware of my home page which is devoted to XIE at
|
|
<A HREF="http://www.users/cts.com/crash/s/slogan">http://www.users/cts.com/crash/s/slogan.</A>
|
|
Feel free to point any queries you may hear about or receive regarding
|
|
XIE or XIElib to my home page, or to me directly at <A HREF="mailto:slogan@cts.com">slogan@cts.com</A>.</UL>
|
|
'<B><I><FONT COLOR="#993300">Muse: </FONT></I></B> Thanks for the
|
|
note. While working for Xi Graphics I had read the XIE specification
|
|
and wondered why it hadn't been used much. Perhaps its like X Input
|
|
- it just needed a market to drive its use. Well, the exposure Linux
|
|
will give X Windows may be that driving force. We'll have to wait
|
|
and see.
|
|
|
|
<P><A HREF="mailto:tvaughan@mail.diac.com">Thomas Vaughan</A> writes:
|
|
<UL>My work involves writing code in Iris GL and OpenGL. I am particularly
|
|
interested in accelerated 3D graphics, as I just bought a ViRGE 3D accelerator
|
|
for my home PC which runs linux 24 hours a day. I have played with
|
|
Mesa, but there is apparently no real free hardware support yet.</UL>
|
|
<B><I><FONT COLOR="#993300">'Muse:</FONT></I></B> No free support,
|
|
but <A HREF="http://www.xi.com">Xi Graphics</A> has recently announced
|
|
ViRGE 3D support in their commercial Accelerated X server.
|
|
<UL>The GGI project sounds interesting, but I don't really know whether
|
|
it's worth investigating seriously yet.</UL>
|
|
<B><I><FONT COLOR="#993300">'Muse:</FONT></I></B> I don't really
|
|
like the idea of GGI, partly because I don't think sticking the graphics
|
|
driver in the kernel is a good idea but also because I don't want to see
|
|
the desktop interface splintered into seperate camps. X is just really
|
|
coming into its own on the desktop and I'd like to see it continue.
|
|
<UL>At work my supervisor has, on my advice, just made a capital request
|
|
for a graphics card based on the 3D Labs Permedia chip which comes with
|
|
accelerated OpenGL support for Windows NT. In the back of my mind,
|
|
I am hoping that I can convince people at work to give linux a serious
|
|
look as a low-cost alternative to the SGI platform. After all, even with
|
|
GNU/Win32, the NT platform is not nearly as nice as real Linux. Unfortunately,
|
|
however, this seems just a little out-of-reach at the moment, because of
|
|
the apparent lack of 3D hardware support on Linux. Any news on this
|
|
front would be heartily appreciated, and I would love to write bug reports
|
|
and use either machine as a test platform.</UL>
|
|
<B><I><FONT COLOR="#993300">'Muse:</FONT></I></B> I got a similar
|
|
request from <A HREF="mailto:anand@noodle.med.yale.edu">Anand Rangarajan</A>:
|
|
<UL>I noticed that SuSE <A HREF="http://www.suse.de/XSuSE/XSuSE_E.html">http://www.suse.de/XSuSE/XSuSE_E.html</A>
|
|
has developed a bunch of drivers for the ELSA Gloria family of 3D graphics
|
|
cards. Will their drivers accelerate Open GL or Mesa? Also, these drivers
|
|
are free and will be integrated into the XFree 4 release.</UL>
|
|
<B><I><FONT COLOR="#993300">'Muse:</FONT></I></B> Well, I thought
|
|
it was about time I did a little survey of the various graphics card vendors.
|
|
See the <A HREF="#update_servers">X Server Update</A> article below.
|
|
|
|
<P><A HREF="mailto:mjensen@metronet.com">Marc S. Jensen</A> writes to the
|
|
<A HREF="http://www.gimp.org">GIMP User mailing list:</A>
|
|
<UL>When I run xscanimage, it complains about my system not having a /dev/scanner
|
|
device. So, here's my question: What do I do to my Red Hat
|
|
5.0 system to get a /dev/scanner device installed. I'm using an Adaptec
|
|
2940 SCSI adapter, and my kernel is compiled with SCSI support. What's
|
|
wrong here?</UL>
|
|
<B><I><FONT COLOR="#993300">'Muse:</FONT></I></B> Assuming your scanner
|
|
is the only deviced attached to your scsi card:
|
|
<CENTER><B><FONT SIZE=-1>ln -s /dev/sga /dev/scanner</FONT></B></CENTER>
|
|
|
|
|
|
<P>and you're all set. If you have more than one device connected
|
|
to the scsi bus (re: cable) then you'll need to figure out which one of
|
|
the /dev/sg[x] devices maps to your scanner. Then link that one to
|
|
/dev/scanner.
|
|
|
|
<P><A HREF="mailto:jlbec@ocala.cs.miami.edu">Joel Becker</A> also wrote
|
|
to the GIMP User mailing list:
|
|
<UL>Just a quick question. What is a reccomened drawing tablet, for
|
|
best use and easiest XInput setup? I think I heard the Wacom ArtPad
|
|
thrown around here. Also, what is a good scanner to work with SANE?
|
|
I mean ease of setup as well as quality of image.</UL>
|
|
<B><I><FONT COLOR="#993300">'Muse:</FONT></I></B> Can't answer about
|
|
the tablet, but I just happened to install a scanner recently. I
|
|
bought a Adaptec 2940 SCSI card and a UMAX 1200S scanner. The Adaptec
|
|
dropped right in on my Pentium 200MMX board with no hardware config necessary.
|
|
The RH 4.2 distribution I use already had the necessary scsi module prebuilt
|
|
in /lib/modules (the module name is aic7xxx.o). I ran <B><FONT SIZE=-1>insmod
|
|
aic7xxx</FONT></B> and up it came.
|
|
|
|
<P>The scanner I chose from the list of scanners I reviewed last year for
|
|
my <A HREF="http://www.graphics-muse.org/muse/muse.html">Graphics Muse</A>
|
|
column in the Linux Gazette. I first tried a 610s, but it only worked
|
|
in greyscale modes. So I exchanged it for the more expensive (about
|
|
$250) 1200s. Works quite well with the Umax drivers. Image
|
|
quality is excellent. I've been scanning hardware (twisted pair and
|
|
thinnet cables), and my hand once, and the scans were quite good although
|
|
very dark. I just brightened them up with xv and the GIMP and all
|
|
was well.
|
|
|
|
<P>However, I haven't tried the scanner and drivers in conjunction with
|
|
SANE.
|
|
|
|
<P>Marco Iannacone wrote:
|
|
<UL>First of all I want to say thanks for all the great stuff you wrote
|
|
(and still write) about Linux & Graphics.</UL>
|
|
<B><I><FONT COLOR="#993300">'Muse:</FONT></I></B> No problem.
|
|
<UL>Since a friend of mine uses Photoshop on Mac, I wanted to show how
|
|
powerfull is Linux, so I installed RedHat 5.0 on a Pentium 166 with 64Mb
|
|
of RAM, with a Matrox Mystique. When I showed him GIMP he was REALLY
|
|
impressed but he found it quite slowly compared to Photoshop. I told him
|
|
that the reason was probably that XFree86 was using the generic SuperVGA
|
|
driver since it doesn't have a native driver for it.</UL>
|
|
<B><I><FONT COLOR="#993300">'Muse:</FONT></I></B> Possibly, but that
|
|
would only make a difference in screen updates. The majority of the
|
|
GIMP's processing is done before it updates the screen.
|
|
<UL>Is that true or maybe GIMP is only slower that Photoshop?</UL>
|
|
<B><I><FONT COLOR="#993300">'Muse:</FONT></I></B> Define "slower"?
|
|
Slower loading the same file? Slower in computing a new brightness
|
|
or contrast? Slower how?
|
|
|
|
<P>What he might be talking about is the use of tiles, which may appear
|
|
to update slowly, wherease in Photoshop they may all appear almost at once
|
|
(I've never used Photoshop, so I don't know if this is true or not).
|
|
So before I can answer "is GIMP slower than Photoshop" I need to know by
|
|
what means you've been measuring the two.
|
|
<UL>More than this I was not able to open any GIF, JPG or TIFF coming from
|
|
Photoshop... do you know the reason?</UL>
|
|
<B><I><FONT COLOR="#993300">'Muse:</FONT></I></B> You may not have
|
|
installed the proper image libraries. Download the <A HREF="ftp://ftp.ctd.comsat.com/pub/linux/ELF">libgr</A>
|
|
package and install it, then try again. You may want to build the
|
|
GIMP from the sources, after you install the libraries in the libgr package.
|
|
Or, if you installed GIMP from one of the distributions (Red Hat, Debian,
|
|
etc) you may want to verify you installed all the graphics libraries that
|
|
came with that distribution too.
|
|
|
|
<P><A HREF="mailto:ta3153@turkuamk.fi">Tero Auvinen</A> wrote:
|
|
<UL>In a past Graphics Muse you wrote:
|
|
<UL>...from the archive of shaders from Guido Quaroni. This archive includes
|
|
shaders from the RenderMan Companion by Steve Upstill, from Texturing and
|
|
Modeling by Ebert, Musgrave, et al, Larry Gritz, and various other places.</UL>
|
|
Where could I get this semi-wonderous package? Found one link from BMRT
|
|
homepage, but it was defunct (anonymous ftp access denied). If you'd happen
|
|
to have it somewhere, I'd appreciate a copy, otherways I'll just go and
|
|
grab everything from the aforementioned fellows homepages etc.</UL>
|
|
<B><I><FONT COLOR="#993300">'Muse: </FONT></I></B> If the link from
|
|
Larry's page (<A HREF="http://www.seas.gwu.edu/student/gritz/bmrt.html">the
|
|
BMRT home page</A>) is not working I'm not certain where this package can
|
|
be found. Try the Renderman Repository: <A HREF="http://rmr.spinne.com/">http://rmr.spinne.com/</A>.
|
|
<UL>Also hmm, I might've missed it, highly possible, but I remember that
|
|
you 'promised' a 3 part BMRT special, seen 2 so far(issues 15&17),
|
|
maybe in march issue?</UL>
|
|
<B><I><FONT COLOR="#993300">'Muse:</FONT></I></B> No, there wasn't
|
|
a third part. I wanted to do one but I'm not that experienced with
|
|
it and I had too many other things come up. I've never had a chance
|
|
to go back and revisit it.
|
|
<UL>Re: Modellers: I can't seem to find one GOOD one, if it's nice
|
|
to look and use at, then it won't export RIB, or does it in a silly way,
|
|
using polygons and whatnot, one'd prefer RMan primitives huh? Sure I can
|
|
do the basic primitives in a non-wysiwyg way, the ascii way. But anything
|
|
more complex, no thanks.</UL>
|
|
<B><I><FONT COLOR="#993300">'Muse:</FONT></I></B> No modellers are
|
|
available for Linux which export RIB primitives. All of the ones
|
|
I know of export polygons only.
|
|
<UL>I've been thinking on getting another computer, running only MSWindows,
|
|
networked together with linux, I could edit [3D models] using Rhino or
|
|
equivalent free Win95/NT modeler and render in Linux. (oh yeah, now there's
|
|
Win32 port of BMRT even...but Linux I will NOT leave, Windows generally
|
|
drives me nuts). Only if I had the money.</UL>
|
|
<B><I><FONT COLOR="#993300">'Muse:</FONT></I></B> You couldn't pay
|
|
me to run MS on anything. But thats just me.
|
|
<UL>You happen to know what Larry uses for modeling? (besides Alias on
|
|
SGI sighs..)</UL>
|
|
<B><I><FONT COLOR="#993300">'Muse:</FONT></I></B> I think he's got
|
|
some big boxes, SGI's and Sun's probably. I'm sure Pixar feeds him
|
|
well. On Linux he may be using AC3D (as do I). Its a pretty
|
|
good modeller, but still exports everything as polygons only. It
|
|
does import 3DS and Lightwave files, though. Thats quite useful for
|
|
using the canned models from the various model sites and CDs that are available.
|
|
AC3D - <A HREF="http://www.comp.lancs.ac.uk/computing/users/andy/ac3dlinux.html">http://www.comp.lancs.ac.uk/computing/users/andy/ac3dlinux.html</A>.
|
|
|
|
<P><A HREF="mailto:marsel@lex.infi.net">Marsel Osipov</A> writes:
|
|
<UL>I am starting a project called Virtuoso. It's a 3D Modeling/Animation/Rendering
|
|
package for Linux. I am sure that I would not be able to create
|
|
a high quality package by myself, so if you would like to join, visit my
|
|
home page for more info. <A HREF="http://www.geocities.com/SiliconValley/Lakes/7705/">http://www.geocities.com/SiliconValley/Lakes/7705/</A></UL>
|
|
<B><I><FONT COLOR="#993300">'Muse: </FONT></I></B> We can never have
|
|
too many modellers.
|
|
<BR>
|
|
|
|
<P>
|
|
<HR WIDTH="100%">
|
|
<BR><A NAME="webwonderings"></A>
|
|
<BR><IMG SRC="../gx/hammel/webwonderings.jpg" HEIGHT=57 WIDTH=246>
|
|
<H2>
|
|
XeoMenu 1.1</H2>
|
|
One of the problems with pages based around standard HTML constructs is
|
|
the inability to easily modify navigation aides. A navigation aid
|
|
can be a set of text links, a set of images with individual links or it
|
|
can be an image map using hot spots for links. These tools allow
|
|
readers of a page to move around a Web site easily. Properly done,
|
|
they can remove the linearity (the hierarchical structure) of a Web site
|
|
and allow the reader to move freely between pages.
|
|
|
|
<P>Adding an text links is fairly easy to do and updating them simply requires
|
|
editing the HTML. But text links lack pizazz. Images used as
|
|
text links are better, but aside from using JavaScript to do image rollovers,
|
|
the images are fairly static. They lack the feel of a real user interface.
|
|
Image maps are no better and, in fact, don't even allow rollover changes
|
|
as easily making them even more static than individual images used as links.
|
|
|
|
<P>Fortunately, issues such as this is part of why Java exists. Java
|
|
allows for more programmatic interfaces. These interfaces can take
|
|
on the more familiar menu-based interfaces that readers will be accustomed
|
|
to. Although it can be argued that such interfaces are not any better
|
|
than static image maps, for the sake of this article we'll assume that
|
|
menuing systems are a good thing.
|
|
|
|
<P><B><FONT COLOR="#CC6600">XeoMenu</FONT></B> is a simple Java program
|
|
from Patrick Chan at Xeo (<A HREF="http://www.xeo.com">www.xeo.com</A>)
|
|
that overlays a menuing system over an image in a Web page. The program
|
|
is run as an applet and is used by embedding it within HTML source code.
|
|
Readers can retrieve a copy from <A HREF="http://java.sun.com:81/share/classes/menu/source/source.html">http://java.sun.com:81/share/classes/menu/source/source.html.
|
|
</A>Java source code is included, along with an example HTML file, sample
|
|
images, a users manual (a sort of man page in HTML) and the compiled Java
|
|
byte code. There is also a second version of the code, called horizMenu,
|
|
that permits menus to be layed out horizontally instead of vertically.
|
|
Since I can't seem to get Java working on my Red Hat 4.2 system (neither
|
|
through the javac compiler nor through my version of Vibe - something about
|
|
my CLASSPATH is not set up right I think), I won't be able to provide information
|
|
on compiling the source in this article. If I do get javac and/or
|
|
Vibe working, I'll start talking about how to compile Java programs.
|
|
If anyone has a write up of what I need to do to get my stock RH 4.2 version
|
|
of the Java compilers working, please drop me a line.
|
|
|
|
<P>To use XeoMenu you need to first create an image that contains two parts:
|
|
The menu as it is displayed without the mouse over the image and the image
|
|
as it would look if the mouse were over different parts of the original.
|
|
For our example, we'll use the following image:
|
|
|
|
<P><IMG SRC="./gx/hammel/xeomenu-1.gif" HSPACE=5 VSPACE=5 BORDER=2 HEIGHT=200 WIDTH=300 ALIGN=LEFT>
|
|
The image is divided into 2 halves. The left half is the image as
|
|
it displays without the mouse over it. The image is actually going
|
|
to be subdivided into a top (Linux) and bottom (Gazette) section.
|
|
The right side, then, shows how each section will be displayed when the
|
|
mouse is over that section. For example, if the mouse is over the
|
|
word Linux in the image then the blue Linux text will be displayed.
|
|
By default, the red colors (the left half of the image) is displayed.
|
|
|
|
<P>Now, in order not to annoy readers without Java support, you need to
|
|
move to the <A HREF="xeomenu.html">next section of this article,</A> which
|
|
will show how the Java application is used and what it looks like when
|
|
it runs. You will need a Java compatible browser to view this part
|
|
of the article.
|
|
<H4>
|
|
<BR>
|
|
<BR clear="both">
|
|
<A NAME="xeomenu-summary"></A></H4>
|
|
|
|
<H4>
|
|
Summary</H4>
|
|
This was just a simple example. XeoMenu itself comes with a more
|
|
sophisticated example, but there is no real explanation (ie documentation)
|
|
of what is going on in the code. Hopefully, between that example,
|
|
the user manual, and this article you'll be able to do something useful
|
|
with XeoMenu. The <A HREF="http://java.sun.com/applets/index.html">main
|
|
applet page</A> for Java.sun.com shows an example of the horizontal
|
|
version of XeoMenu running and its quite slick. Although the interface
|
|
uses a fairly large number of optional parameters and the format for menu
|
|
descriptions is less than ideal, it is still a useful tool that takes only
|
|
a little getting used to in order to make a very usable menu-based interface
|
|
for your Web pages.
|
|
<BR>
|
|
<HR WIDTH="100%">
|
|
|
|
<P><A NAME="musings"></A>
|
|
<BR>
|
|
<TABLE BORDER=0 COLS=1 WIDTH="100%" >
|
|
<TR>
|
|
<TD><IMG SRC="../gx/hammel/musings.gif" ALT="Musings" HEIGHT=52 WIDTH=247 ALIGN=LEFT></TD>
|
|
</TR>
|
|
</TABLE>
|
|
|
|
<BR>
|
|
<BR>
|
|
<TABLE BORDER=0 COLS=1 WIDTH="100%" BGCOLOR="#000000" NOSAVE >
|
|
<TR NOSAVE>
|
|
<TD NOSAVE><IMG SRC="../gx/hammel/cleardot.gif" HEIGHT=3 WIDTH=3></TD>
|
|
</TR>
|
|
</TABLE>
|
|
|
|
<TABLE BORDER=0 COLS=3 WIDTH="100%" NOSAVE >
|
|
<TR NOSAVE>
|
|
<TD VALIGN=TOP WIDTH="49%" NOSAVE>
|
|
<H2>
|
|
<A NAME="update_servers"></A>X Server Update</H2>
|
|
I've been doing this column now for over a year and writing
|
|
for Linux Journal on and off for another year. In that time
|
|
I haven't really addressed one of the more obvious topics related to doing
|
|
graphics on Linux - the X server. Part of the reason for that is
|
|
that I don't have the resources to test a bunch of different server configurations.
|
|
If I got paid to do this it would be a different story, but this column
|
|
is born from whatever time and system resources I can spare each month.
|
|
|
|
<P> Still, I get requests fairly often asking for information
|
|
about what 3D video cards are supported under Linux and which ones support
|
|
various hardware extensions such as the X Input Extension. Most of
|
|
the questions specifically ask "which are supported under XFree86".
|
|
But some readers ask about support in general, either free or commercial.
|
|
|
|
<P> Well, I thought it was time I sent a query to the various
|
|
vendors and find out where things stand. The email I sent was fairly
|
|
generic. It read as follows:
|
|
<BR>
|
|
<ADDRESS>
|
|
Do you have any information which I may use in my column related to your
|
|
current or planned support for 3D hardware acceleration (specifically related
|
|
to OpenGL/Mesa, but not necessarily so)? What about support for alternative
|
|
input devices via the X Input Extension. The GIMP, and its X toolkit
|
|
Gtk, both make use of X Input if available and I expect many other tools
|
|
will do so as well in the near future.</ADDRESS>
|
|
|
|
|
|
<P>This query was sent out around the 12th of this month to <A HREF="http://www.xig.com">Xi
|
|
Graphics</A>, <A HREF="http://www.metrolink.com">Metro Link</A>, <A HREF="http://www.suse.de">SuSE</A>,
|
|
and the <A HREF="http://www.xfree86.org">XFree86</A> project. I received
|
|
responses from all 4, however Metro Link did not receive my query immediately
|
|
and so their response came in too late for this article. I will cover
|
|
Metro Link's response next month. Please note that this article
|
|
is intended to <I>list</I> which servers support what features/devices
|
|
and is not intended to explain how to use those features.
|
|
|
|
<P>The responses have been edited to remove what appeared to be editorial
|
|
comments, where recognizable. I will refrain from editorializing
|
|
on these responses in this article as well.
|
|
|
|
<P> The first reply was nearly immediate and came from <A HREF="mailto:hohndel@suse.de">Dirk
|
|
H Hohndel</A> at SuSE. He sent two emails, one as the Vice President
|
|
of The XFree86 Project, Inc. and one as the Lead Developer, S.u.S.E. GmbH.
|
|
Dirk wears both hats, and therefore his comments are considered official
|
|
responses, one from each organization. Both responses were direct
|
|
and to the point. First his XFree86 response:
|
|
<BR>
|
|
<CENTER><TABLE BORDER=0 COLS=1 WIDTH="95%" NOSAVE >
|
|
<TR NOSAVE>
|
|
<TD NOSAVE>Well, XSuSE and XFree86 are mostly identical. As far as legally
|
|
possible, all work done on XSuSE is integrated into the next XFree86 version.
|
|
XFree86 in itself focuses on the X Window System and 2D support for the
|
|
different cards. While they are not actively pursuing 3D support, they
|
|
are in contact with several groups working in that area.
|
|
|
|
<P>I do not speak for Metro Link, but I can tell you that Metro Link and
|
|
XFree86 are in very positive cooperation on the 2D side of servers.
|
|
Metro Link donated lots of code to XFree86 recently, and Metro Link and
|
|
XFree86 are working together on many aspects of the design of our future
|
|
X servers.
|
|
<BR> </TD>
|
|
</TR>
|
|
</TABLE></CENTER>
|
|
Because Dirk's response came quickly, and because responses from the other
|
|
vendors provided more detailed information, I thought I should offere XFree86
|
|
a chance to expand their reply. When asked to comment on architectural
|
|
details and XFree86's relationship to the commercial vendors, Dirk responded:
|
|
<BR>
|
|
<CENTER><TABLE BORDER=0 COLS=1 WIDTH="95%" NOSAVE >
|
|
<TR NOSAVE>
|
|
<TD NOSAVE>Why would I bore you or anyone else with architectural details
|
|
that no one really cares about.
|
|
<BR> </TD>
|
|
</TR>
|
|
</TABLE></CENTER>
|
|
He followed up his XFree86 reply with a response from SuSE:
|
|
<BR>
|
|
<CENTER><TABLE BORDER=0 COLS=1 WIDTH="95%" NOSAVE >
|
|
<TR NOSAVE>
|
|
<TD NOSAVE>SuSE is working on hardware 3D support, but there is no release
|
|
date for that, yet.
|
|
|
|
<P>The 2D drivers from SuSE are intended to be integrated into XFree86-4.0,
|
|
but we are currently running into some legal problems with that for one
|
|
of them (3DLabs GLINT), as some of the docs are under NDA and we have not
|
|
been able to get the permission to release sources, yet. We are working
|
|
on it, though. All the other drivers from SuSE have already been
|
|
included into XFree86-3.3.2</TD>
|
|
</TR>
|
|
</TABLE></CENTER>
|
|
|
|
|
|
<P>The other replies came from Xi Graphics. Both Thomas Roell, President
|
|
of Xi Graphics and technical architect for their servers, and Jeremy Chatfield
|
|
responded.
|
|
|
|
<P>Thomas wrote:
|
|
<BR>
|
|
<CENTER><TABLE BORDER=0 COLS=1 WIDTH="95%" NOSAVE >
|
|
<TR NOSAVE>
|
|
<TD NOSAVE>Our next generation X-Server will support additional new input
|
|
devices for the XInputExtension. The extension itself is supported since
|
|
Accelerated-X 4.1. Planned devices are mainly CAD oriented input systems,
|
|
like Tablets, Touchscreens and Space-Balls. As for Hardware 3D, you
|
|
can bet that the next generation will have that.</TD>
|
|
</TR>
|
|
</TABLE></CENTER>
|
|
|
|
|
|
<P>Jeremy Chatfield followed up with the following (edited partially for
|
|
length):
|
|
<BR>
|
|
<CENTER><TABLE BORDER=0 COLS=1 WIDTH="95%" NOSAVE >
|
|
<TR NOSAVE>
|
|
<TD NOSAVE>Accelerated-X 4.1 supports the XInputExtension, using a small
|
|
and fixed list of devices, with very limited device management. Future
|
|
releases will support a wider range of devices.
|
|
|
|
<P>We've been evolving Accelerated-X ever since 1994, to take advantage
|
|
of 3D hardware acceleration. Examples of the technology introductions
|
|
and the reason for needing them for 3D support:
|
|
<UL>
|
|
<LI>
|
|
Memory allocation and buffer management. 3D uses a lot of memory.
|
|
Standard malloc() (as of 1994, when we started this work) did not permit
|
|
programs to decrease in size, tended to thrash memory when freeing and
|
|
sometimes when allocating, and exhibited other behaviors that were not
|
|
suitable to long running processes with a mix of temporary and long term
|
|
storage in a wide variety of data sizes. We do things like lazy buffer
|
|
allocation, only allocating stencil buffers when needed, and so on.
|
|
This improves speed and reduces system impact, seen in total Server size,
|
|
and paging demand.</LI>
|
|
</UL>
|
|
</TD>
|
|
</TR>
|
|
</TABLE></CENTER>
|
|
|
|
<CENTER></CENTER>
|
|
|
|
<CENTER><A HREF="#next-column">-Top of next column-</A></CENTER>
|
|
</TD>
|
|
|
|
<TD WIDTH="1%" BGCOLOR="#000000" NOSAVE><IMG SRC="../gx/hammel/cleardot.gif" HEIGHT=3 WIDTH=3></TD>
|
|
|
|
<TD VALIGN=TOP WIDTH="49%" NOSAVE>
|
|
<TABLE BORDER=0 COLS=1 WIDTH="100%" NOSAVE >
|
|
<TR>
|
|
<TD><LH><A NAME="next-column"></A><B>More Musings...</B> </LH>
|
|
<LI>
|
|
<A HREF="vrwave.html">VRWave 0.9</A></LI>
|
|
|
|
<BR>--</TD>
|
|
</TR>
|
|
|
|
<TR NOSAVE>
|
|
<TD BGCOLOR="#000000" NOSAVE><IMG SRC="../gx/hammel/cleardot.gif" HEIGHT=3 WIDTH=3></TD>
|
|
</TR>
|
|
|
|
<TR NOSAVE>
|
|
<TD NOSAVE>
|
|
<CENTER><TABLE BORDER=0 COLS=1 WIDTH="95%" NOSAVE >
|
|
<TR NOSAVE>
|
|
<TD NOSAVE>
|
|
<UL>
|
|
<LI>
|
|
Coprocessor locking. When using the host processor, graphics engine
|
|
and 3D engine, all writing in the same memory areas, and when using both
|
|
system memory (via AGP) and graphics board memory, fast and correct mutex
|
|
locking is essential. [Without locking] this will cause problems
|
|
when all three processors (or more) attempt to handle the same memory.
|
|
We have continued to refine our mutex locking for several years, though
|
|
this is not visible in any product other than multihead, at present. </LI>
|
|
</UL>
|
|
|
|
<UL>
|
|
<LI>
|
|
Asynchronous I/O When X Servers with high levels of hardware acceleration
|
|
are handling buffered drawing requests, keyboard and mouse input is put
|
|
into the end of the queue. This results in sluggish response, and
|
|
in mouse and keyboard data being handled in bursts. Mouse acceleration
|
|
can be triggered inappropriately, so mouse motion becomes very hard to
|
|
control, and sequential single button clicks can be misinterpreted as double
|
|
clicks. We introduced the "Velvet Mouse" mechanism to permit input
|
|
even while the Server was in heavy rendering, as will be typical of 3D
|
|
dynamic applications. </LI>
|
|
</UL>
|
|
|
|
<UL>
|
|
<LI>
|
|
Overlays. Many 3D applications on workstations rely on the presence
|
|
of overlays. [Overlays] also benefit from the memory management and
|
|
other architectural changes in Accelerated-X.</LI>
|
|
</UL>
|
|
</TD>
|
|
</TR>
|
|
</TABLE></CENTER>
|
|
Xi Graphics recently announce support for ViRGE 3D (see the <A HREF="http://www.graphics-muse.org">February
|
|
1998 Graphics Muse</A>).
|
|
|
|
<P>Beyond these two vendors, there is also 3D hardware support available
|
|
for Mesa for the following video hardware:
|
|
<UL>
|
|
<LI>
|
|
3Dfx Voodoo - Cards based on the 3Dfx Voodoo chipset (such as Diamond Monster
|
|
3D and Orchid - Righteous 3D) are supported under Linux and Windows 95.
|
|
Look <A HREF="http://www-hmw.caribel.pisa.it/fxmesa/index.shtml">here</A>
|
|
for the latest info. This is the best supported 3-D hardware for Linux
|
|
at this time. </LI>
|
|
</UL>
|
|
|
|
<UL>
|
|
<LI>
|
|
3Dfx Voodoo Rush (rendering into window) - Supported under Windows. Linux
|
|
support is underway. </LI>
|
|
</UL>
|
|
|
|
<UL>
|
|
<LI>
|
|
GLINT-based boards - Look <A HREF="http://fantasia.eng.clemson.edu:80/~adamsk/glint_index.html">here</A>
|
|
for the latest info. </LI>
|
|
</UL>
|
|
|
|
<UL>
|
|
<LI>
|
|
Cirrus Mondello - No longer supported- download Mesa 1.2.8 if you're interested
|
|
in this driver. </LI>
|
|
</UL>
|
|
This information was taken directly from the <A HREF="http://www.ssec.wisc.edu/~brianp/Mesa.html">Mesa
|
|
Web pages. </A>I ignored any cards for which Linux was not mentioned
|
|
except the Cirrus Mondello. I don't know if its for Linux or Windows.
|
|
Also, I don't know exactly how Mesa makes use of this hardware without
|
|
actually being part of the X server. You will have to investigate
|
|
the Mesa pages and its links for more information in that area.
|
|
|
|
<P>So, now you should know as much as I do with respect to 3D and X Input
|
|
support from XFree86/SuSE and Xi Graphics. In summary, most of the
|
|
3D work seems to be planned and under development, but no word on when
|
|
the support (at least for wide spread 3D support) will be available.
|
|
Neither XFree86/SuSE nor Xi specifically mentioned any 3D boards being
|
|
supported, although Xi did have the announcement for the ViRGE 3D last
|
|
month. Xi stated they support the X Input Extension in their Accelerated-X
|
|
4.1 release. Although XFree86 didn't mention it, I know that X Input
|
|
is supported in their product as well. Don't forget: I'll be
|
|
covering Metro Link's responses to my query next month.
|
|
|
|
<P>I should mention again that I have worked for Xi Graphics in the past,
|
|
and in fact worked with both Thomas and Jeremy at Dell computer and with
|
|
Jeremy at Information Foundation (a USL source code licensee back around
|
|
1993 or so). I have made every attempt to remove all editorial comments,
|
|
both my own and any from the respondents, from this article.
|
|
<H4>
|
|
Contact Information</H4>
|
|
<B>XFree86</B>:
|
|
<UL>
|
|
<LI>
|
|
Announcements: <A HREF="news:comp.os.linux.announce">comp.os.linux.announce</A>
|
|
and other announcement groups</LI>
|
|
|
|
<LI>
|
|
Web site: <A HREF="http://www.xfree86.org">http://www.xfree86.org</A></LI>
|
|
|
|
<LI>
|
|
Support: <A HREF="mailto:XFree86@XFree86.Org">XFree86@XFree86.Org</A></LI>
|
|
|
|
<LI>
|
|
Business: <A HREF="mailto:BOD@XFree86.Org">BOD@XFree86.Org</A></LI>
|
|
|
|
<BR><A HREF="http://www.xfree86.org"></A> </UL>
|
|
<B>S.u.S.E</B>.:
|
|
<UL>
|
|
<LI>
|
|
Announcements: <A HREF="news:comp.os.linux.announce">comp.os.linux.announce</A></LI>
|
|
|
|
<LI>
|
|
Web site: <A HREF="http://www.suse.de/XSuSE/XSuSE_E.html">http://www.suse.de/XSuSE/XSuSE_E.html</A></LI>
|
|
|
|
<LI>
|
|
Support: <A HREF="mailto:x@suse.de">x@suse.de</A></LI>
|
|
|
|
<LI>
|
|
Business: <A HREF="mailto:x@suse.de">x@suse.de</A></LI>
|
|
</UL>
|
|
Dirk reports: In both cases we try to keep the web pages up to date
|
|
and XFree86 has a FAQ online that contains workarounds for known bugs.
|
|
|
|
<P><B>Xi Graphics</B>:
|
|
<UL>
|
|
<LI>
|
|
Announcements: <A HREF="mailto:accelx-announce-request@xig.com">accelx-announce-request@xig.com
|
|
</A>with the one word message "subscribe"</LI>
|
|
|
|
<LI>
|
|
Web: <A HREF="http://www.xig.com">http://www.xig.com</A></LI>
|
|
|
|
<LI>
|
|
User-to-User mailing list: <A HREF="mailto:accelx-users-request@xig.com">accelx-users-request@xig.com</A>
|
|
with the one word message "subscribe"</LI>
|
|
|
|
<LI>
|
|
Email: <A HREF="mailto:sales@xig.com">sales@xig.com</A>
|
|
- automated initial response, but a human reader.</LI>
|
|
|
|
<LI>
|
|
Phone: +1 800 946-7433 (US), +1 303 298-7478 (Int'l).</LI>
|
|
|
|
<LI>
|
|
Fax: +1 303 298-1406</LI>
|
|
</UL>
|
|
Jeremy added: We keep the web site up to date.</TD>
|
|
</TR>
|
|
</TABLE>
|
|
</TD>
|
|
</TR>
|
|
</TABLE>
|
|
|
|
<TABLE BORDER=0 COLS=1 WIDTH="100%" BGCOLOR="#000000" NOSAVE >
|
|
<TR NOSAVE>
|
|
<TD NOSAVE><IMG SRC="../gx/hammel/cleardot.gif" HEIGHT=3 WIDTH=3></TD>
|
|
</TR>
|
|
</TABLE>
|
|
|
|
<TABLE BORDER=0 COLS=1 WIDTH="100%" >
|
|
<TR>
|
|
<TD><IMG SRC="../gx/hammel/resources.gif" ALT="Resources" HEIGHT=57 WIDTH=246 ALIGN=LEFT></TD>
|
|
</TR>
|
|
</TABLE>
|
|
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.
|
|
<BR>
|
|
<TABLE BORDER=0 COLS=2 WIDTH="100%" NOSAVE >
|
|
<TR NOSAVE>
|
|
<TD NOSAVE><A HREF="http://www.csn.net/~mjhammel/linux/lgh.html">Linux
|
|
Graphics mini-Howto</A>
|
|
<BR><A HREF="http://www.csn.net/~mjhammel/ugu/ugu.html">Unix Graphics Utilities</A>
|
|
<BR><A HREF="http://www.digiserve.com/ar/linux-snd/">Linux Multimedia Page</A>
|
|
|
|
<P>Some of the Mailing Lists and Newsgroups I keep an eye on and where
|
|
I get much of the information in this column:
|
|
|
|
<P><A HREF="http://www.gimp.org">The Gimp User and Gimp Developer Mailing
|
|
Lists</A>.
|
|
<BR><A HREF="http://www.irtc.org">The IRTC-L discussion list</A>
|
|
<BR><A HREF="news:comp.graphics.rendering.raytracing">comp.graphics.rendering.raytracing</A>
|
|
<BR><A HREF="news:comp.graphics.rendering.renderman">comp.graphics.rendering.renderman</A>
|
|
<BR><A HREF="news:comp.graphics.api.opengl">comp.graphics.api.opengl</A>
|
|
<BR><A HREF="news:comp.os.linux.announce">comp.os.linux.announce</A> </TD>
|
|
|
|
<TD><IMG SRC="../gx/hammel/gmuse.jpg" HSPACE=10 HEIGHT=270 WIDTH=190></TD>
|
|
</TR>
|
|
</TABLE>
|
|
<A NAME="future"></A>
|
|
<H2>
|
|
Future Directions</H2>
|
|
Next month: Unknown. I've got some prior obligations
|
|
(paying ones, that is) that I absolutely <B><I>must</I></B> get done.
|
|
And soon.
|
|
|
|
<P><A HREF="mailto:mjhammel@csn.net">Let me know what you'd like to hear
|
|
about!</A>
|
|
|
|
<P>
|
|
<HR WIDTH="100%">
|
|
<DIV ALIGN=right><FONT SIZE=-1>© 1998 <A HREF="mailto:mjhammel@csn.net">Michael
|
|
J. Hammel</A></FONT></DIV>
|
|
|
|
<!--===================================================================-->
|
|
<P> <hr> <P>
|
|
<center><H5>Copyright © 1998, Michael J. Hammel <BR>
|
|
Published in Issue 26 of <i>Linux Gazette</i>, March 1998</H5></center>
|
|
|
|
<!--===================================================================-->
|
|
<P> <hr> <P>
|
|
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
|
|
ALT="[ TABLE OF CONTENTS ]"></A>
|
|
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
|
|
ALT="[ FRONT PAGE ]"></A>
|
|
<A HREF="./marsden.html"><IMG SRC="../gx/back2.gif"
|
|
ALT=" Back "></A>
|
|
<A HREF="./kapok/kapok-nonote.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
|
<P> <hr> <P>
|
|
<!-- =============================================================
|
|
This Page Designed by Michael J. Hammel.
|
|
Permission to use all graphics and other content for private,
|
|
non-commerical use is granted provided you give me (or the
|
|
original authors/artists) credit for the work.
|
|
|
|
CD-ROM distributors and commercial ventures interested in
|
|
providing the Graphics Muse for a fee must contact me,
|
|
Michael J. Hammel (mjhammel@csn.net), for permission.
|
|
============================================================= !--><A NAME="musings"></A>
|
|
<TABLE BORDER=0 NOSAVE >
|
|
<TR NOSAVE>
|
|
<TD NOSAVE>
|
|
<H2>
|
|
More...</H2>
|
|
<IMG SRC="../gx/hammel/musings.gif" ALT="Musings" HEIGHT=52 WIDTH=247 ALIGN=LEFT> </TD>
|
|
</TR>
|
|
</TABLE>
|
|
|
|
<TABLE>
|
|
<TR>
|
|
<TD></TD>
|
|
</TR>
|
|
</TABLE>
|
|
<IMG SRC="../gx/hammel/cleardot.gif" ALT="indent" VSPACE=5 HEIGHT=1 WIDTH=1 ALIGN=LEFT>
|
|
<TABLE BORDER=0 WIDTH="100%" NOSAVE >
|
|
<TR NOSAVE>
|
|
<TD ALIGN=RIGHT WIDTH="100%" NOSAVE><FONT SIZE=-2>© 1998 <A HREF="mailto:mjhammel@csn.net">Michael
|
|
J. Hammel</A> </FONT></TD>
|
|
</TR>
|
|
|
|
<TR>
|
|
<TD VALIGN=TOP BGCOLOR="#000000" cellpadding="0" cellspacing="0"><IMG SRC="../gx/hammel/cleardot.gif" ALT="indent" ALIGN=LEFT></TD>
|
|
</TR>
|
|
</TABLE>
|
|
|
|
<H2>
|
|
VRWave 0.9</H2>
|
|
Quite some time ago a reader, a fellow named Paulo, had sent me email asking
|
|
if I had taken a look at <B><FONT COLOR="#CC6600">VRWave</FONT></B> yet.
|
|
This is a VRML 2.0 browser available from the Institute for Information
|
|
Processing and Computer Supported New Media (IICM), GrazUniversity of Technology,
|
|
Austria. The program is freely available for private use and includes
|
|
source code. The current version, 0.9, includes a Java-based port
|
|
of the code, although all rendering code is still in C using either OpenGL
|
|
or Mesa.
|
|
|
|
<P>Looking through my backlog of things to do for the Muse, I decided to
|
|
take a look at VRWave. At a minimum I wanted to see if I could simply
|
|
get it to run. Hopefully, I would be able to say something intelligent
|
|
about the source code and build environment as well. I jumped on
|
|
the Internet and went off to grab a copy of the package from a US mirror
|
|
of the VRWave Home Page (<A HREF="http://www.iicm.edu/vrwave">http://www.iicm.edu/vrwave</A>).
|
|
The first thing I noticed was that there were both source and binary distributions
|
|
available. The binary distributions cover a few flavors of Unix,
|
|
including ports for Linux 2.0. There are actually two versions of
|
|
the binary distribution - a Java 1.1.3 based version and a Mesa version
|
|
which uses Java 1.0.2. These are actually the platform specific libraries
|
|
needed by VRWave. I grabbed both along with the gzipped Common tar
|
|
file which must accompany any binary version that is downloaded.
|
|
The Mesa version is not compiled with any of the hardware accelerated drivers
|
|
available for Mesa. If you want to use those drivers you need to
|
|
recompile the source with the Mesa package properly built with the drivers
|
|
of interest. Also, the Mesa code is statically linked into the platform
|
|
specific libraries, so you shouldn't need any other libraries or files
|
|
outside of those contained in the Common tar file and the platform
|
|
specific tar file.
|
|
|
|
<P>The directions say to unpack the Common file first, then cd into the
|
|
vrwave-0.9 directory this process creates and unpack the platform specific
|
|
files. The first time I did this I didn't do it in the right order
|
|
and got myself confused. So I redid the unpacking, following the
|
|
directions. Its true - men never read the directions. The instructructions
|
|
in the INSTALLATION file for running VRWave are quite complete so I won't
|
|
rehash them here. Just be sure you actually read the file!
|
|
In my environment I use Java 1.0.2, the default installation of Java on
|
|
Red Hat 4.2, so I set my CPU environment variable to LINUX_ELF. You
|
|
may need to set it to LINUX_J113 if you have the Java 1.1.3 package installed
|
|
on your system.
|
|
|
|
<P>Once you set up a couple of environment variables you're ready to start
|
|
vrwave. Since VRWave uses your Java runtime environment, be sure
|
|
your CLASSPATH is set correctly first. On my Red Hat 4.2 system
|
|
I have it set as follows:
|
|
<UL><B><FONT SIZE=-1>CLASSPATH=/usr/lib/java/lib:/usr/lib/java/lib/classes:/home/mjhammel/src/graphics/vrwave-0.9/classes</FONT></B></UL>
|
|
Type <B>vrwave </B>and the interface opens a window. On my system
|
|
I got messages like the following:
|
|
|
|
<P><B>java.lang.InternalError: unsupported screen depth</B>
|
|
<BR><B>VRwave: could not load icons at /home/mjhammel/src/graphics/vrwave2/vrwave-0.9/icons.gif</B>
|
|
<BR><B>VRwave: could not load logo at /home/mjhammel/src/graphics/vrwave2/vrwave-0.9/logo.gif</B>
|
|
<BR><B>java.lang.InternalError: unsupported screen depth</B>
|
|
<BR><B> at sun.awt.image.ImageRepresentation.setPixels(ImageRepresentation.java:170)</B>
|
|
<BR><B> at sun.awt.image.InputStreamImageSource.setPixels(InputStreamImageSource.java:459)</B>
|
|
<BR><B> at sun.awt.image.GifImageDecoder.sendPixels(GifImageDecoder.java:243)</B>
|
|
<BR><B> at sun.awt.image.GifImageDecoder.readImage(GifImageDecoder.java:295)</B>
|
|
<BR><B> at sun.awt.image.GifImageDecoder.produceImage(GifImageDecoder.java:155)</B>
|
|
<BR><B> at sun.awt.image.InputStreamImageSource.doFetch(InputStreamImageSource.java:215)</B>
|
|
<BR><B> at sun.awt.image.ImageFetcher.run(ImageFetcher.java:98)</B>
|
|
<BR><B> at sun.awt.image.ImageRepresentation.setPixels(ImageRepresentation.java:170)</B>
|
|
<BR><B> at sun.awt.image.InputStreamImageSource.setPixels(InputStreamImageSource.java:459)</B>
|
|
<BR><B> at sun.awt.image.GifImageDecoder.sendPixels(GifImageDecoder.java:243)</B>
|
|
<BR><B> at sun.awt.image.GifImageDecoder.readImage(GifImageDecoder.java:295)</B>
|
|
<BR><B> at sun.awt.image.GifImageDecoder.produceImage(GifImageDecoder.java:155)</B>
|
|
<BR><B> at sun.awt.image.InputStreamImageSource.doFetch(InputStreamImageSource.java:215)</B>
|
|
<BR><B> at sun.awt.image.ImageFetcher.run(ImageFetcher.java:98)</B><B></B>
|
|
|
|
<P>These may be due to either an incorrect Java configuration on my system
|
|
or because the Java 1.0.2 libraries do not support the TrueColor (24 bit
|
|
depth) visual I'm running with my X server. In either case it didn't
|
|
seem to matter, as the window opened and I was able to begin playing with
|
|
VRWave. Also, during all my experimentation I had no display
|
|
or color problems at all.
|
|
|
|
<P>The first thing I should say at this point is that I know very little
|
|
about VRML other than its a language for describing navigable 3D worlds.
|
|
VRML 2.0 includes features such as spatial sound, where the sound of an
|
|
object in the distance can grow louder as the object is moved closer.
|
|
To my knowledge VRWave does not yet support sounds, but I didn't test any
|
|
VRML worlds in which sound was availalble. In any case, what I'll
|
|
describe here is what an casual user might encounter, what someone who
|
|
is just beginning to explore VRML might find interesting and useful.
|
|
Also please note that the slight blur in the images is due to reducing
|
|
them from the screen captures in order to fit the image in a 640 pixel
|
|
wide Web browser.
|
|
<H4>
|
|
The interface</H4>
|
|
|
|
<CENTER>
|
|
<H4>
|
|
<IMG SRC="./gx/hammel/vrwave-1.jpg" HSPACE=10 VSPACE=10 HEIGHT=370 WIDTH=459></H4></CENTER>
|
|
|
|
|
|
<P>The image above show the initial window if no input file is provided
|
|
on the command line. You can specify any VRML file as an input file.
|
|
These carry the .<B>wrl </B>extension in the file name and you can find
|
|
numerous example in the <B><FONT SIZE=-1>examples</FONT></B> directory
|
|
in the distribution. Scene files are ordinary text files, not
|
|
unlike the POV-Ray programming language in a sense. The look like
|
|
the sample code below, which is the code for the convexify.wrl example:
|
|
<UL>#VRML V2.0 utf8
|
|
|
|
<P># sample for applying perface materials onto non-convex shape
|
|
<BR># kwagen/mpichler
|
|
|
|
<P>Viewpoint
|
|
<BR>{
|
|
<BR> position 5 5.25 10
|
|
<BR> orientation -0.6 0.8 0.1 0.5
|
|
<BR>}
|
|
<BR>Shape
|
|
<BR>{
|
|
<BR> geometry IndexedFaceSet
|
|
<BR> {
|
|
<BR> coord Coordinate
|
|
<BR> {
|
|
<BR> point [ 0 0 1, 1 0 1, 3 4 1, 2 4 1,
|
|
1 2 1, 1 4 1, 0 4 1,
|
|
<BR>
|
|
0 0 0, 1 0 0, 3 4 0, 2 4 0, 1 2 0, 1 4 0, 0 4 0 ]
|
|
<BR> }
|
|
<BR> coordIndex
|
|
<BR> [
|
|
<BR> 0 1 2 3 4 5 6 -1 # front,
|
|
lt. green
|
|
<BR> 0 7 8 1 -1
|
|
# red
|
|
<BR> 1 8 9 2 -1
|
|
# blue
|
|
<BR> 2 9 10 3 -1
|
|
# yellow
|
|
<BR> 3 10 11 4 -1
|
|
# cyan
|
|
<BR> 4 11 12 5 -1
|
|
# magenta
|
|
<BR> 5 12 13 6 -1
|
|
# dk. cyan
|
|
<BR> 6 13 7 0 -1
|
|
# dk. magenta
|
|
<BR> 13 12 11 10 9 8 7 # back, dk.
|
|
green
|
|
<BR> ]
|
|
<BR> color Color { color [ 0 1 0, 1 0 0, 0 0 1, 1 1 0,
|
|
0 1 1, 1 0 1, 0 0.5 0.5, 0.5 0 0.5, 0 0.5 0 ] }
|
|
<BR># colorIndex [ 8 7 6 5 4 3 2 1 0 ] # reverse color
|
|
binding
|
|
<BR> colorPerVertex FALSE
|
|
<BR> convex FALSE
|
|
<BR> }
|
|
<BR>}</UL>
|
|
|
|
|
|
<P>The following table summarizes most of the features in the VRWave main
|
|
window:
|
|
<BR>
|
|
<CENTER><TABLE BORDER COLS=2 WIDTH="100%" NOSAVE >
|
|
<TR BGCOLOR="#FFCC00" NOSAVE>
|
|
<TD WIDTH="20%" NOSAVE><B><FONT SIZE=+1>Window Feature</FONT></B></TD>
|
|
|
|
<TD><B><FONT SIZE=+1>Description</FONT></B></TD>
|
|
</TR>
|
|
|
|
<TR NOSAVE>
|
|
<TD BGCOLOR="#33CCFF" NOSAVE>File </TD>
|
|
|
|
<TD>Basic file input/output functions, plus camera information.</TD>
|
|
</TR>
|
|
|
|
<TR NOSAVE>
|
|
<TD BGCOLOR="#33CCFF" NOSAVE>Navigate </TD>
|
|
|
|
<TD>Set mode for movement through VRML world; reset and align functions
|
|
for current view.</TD>
|
|
</TR>
|
|
|
|
<TR NOSAVE>
|
|
<TD BGCOLOR="#33CCFF" NOSAVE>Display </TD>
|
|
|
|
<TD>Lighting, rendering (static and interative) methods, colors, background,
|
|
transparency, etc.</TD>
|
|
</TR>
|
|
|
|
<TR NOSAVE>
|
|
<TD BGCOLOR="#33CCFF" NOSAVE>Help </TD>
|
|
|
|
<TD>HTML based help system that relies on Netscape. Netscape must
|
|
be in your path for this to function properly.</TD>
|
|
</TR>
|
|
|
|
<TR NOSAVE>
|
|
<TD BGCOLOR="#33CCFF" NOSAVE>Flip</TD>
|
|
|
|
<TD>Navigation mode; Scene translation around origin and zoom.</TD>
|
|
</TR>
|
|
|
|
<TR NOSAVE>
|
|
<TD BGCOLOR="#33CCFF" NOSAVE>Walk</TD>
|
|
|
|
<TD>Navigation mode; move forward, backwards, sideways pan and move
|
|
"eyes".</TD>
|
|
</TR>
|
|
|
|
<TR NOSAVE>
|
|
<TD BGCOLOR="#33CCFF" NOSAVE>Fly To</TD>
|
|
|
|
<TD>Navigation mode; sets a Point of Interest from which all other
|
|
movements in this mode are relative.</TD>
|
|
</TR>
|
|
|
|
<TR NOSAVE>
|
|
<TD BGCOLOR="#33CCFF" NOSAVE>Heads Up</TD>
|
|
|
|
<TD>Places a "heads up display" in the center of the viewing area;
|
|
3 navigation types in display: eyes, body and pan. These correspond
|
|
to the same types of movements that Walk provides but gives visual cues
|
|
to movement settings.</TD>
|
|
</TR>
|
|
|
|
<TR NOSAVE>
|
|
<TD BGCOLOR="#33CCFF" NOSAVE>Behaviour</TD>
|
|
|
|
<TD>Purpose unknown</TD>
|
|
</TR>
|
|
|
|
<TR NOSAVE>
|
|
<TD BGCOLOR="#33CCFF" NOSAVE>Interaction</TD>
|
|
|
|
<TD>Purpose unknown</TD>
|
|
</TR>
|
|
</TABLE></CENTER>
|
|
|
|
<H4>
|
|
Navigation</H4>
|
|
In the following example, the sample scene <B><FONT SIZE=-1>examples/office2.wrl</FONT></B>
|
|
was opened (File->Open) into the default window (ie the window was not
|
|
resized or adjusted in any way). To move around this scene you can
|
|
use the mouse or keyboard. Keyboard bindings are described in the
|
|
<B><FONT SIZE=-1>help/mouse.html </FONT></B>file, which will also give
|
|
you a little more information about what kind of movements within a scene
|
|
are available.
|
|
|
|
<P>An example of movement through this scene would be to hold down the
|
|
middle mouse button (with the Flip button pressed as it is in the example
|
|
image below) and drag it around the viewing area. This would rotate
|
|
the entire room and its contents around the origin, which is positioned,
|
|
but not visible, in the middle of the viewing area. When this movement
|
|
is started the image will change to a wireframe view to speed processing.
|
|
The use of wireframe, flat shaded, smooth shaded and textured objects during
|
|
navigation and static display (when you aren't moving the scene around)
|
|
can be controlled from the <B>Display</B> option in the menu bar.
|
|
<BR>
|
|
<CENTER><IMG SRC="./gx/hammel/vrwave-3.jpg" HSPACE=10 VSPACE=10 HEIGHT=416 WIDTH=516><BR clear="both"></CENTER>
|
|
|
|
<CENTER><B>examples/office2.wrl example scene</B></CENTER>
|
|
|
|
<CENTER><IMG SRC="./gx/hammel/vrwave-4.jpg" HSPACE=10 VSPACE=10 HEIGHT=412 WIDTH=510><BR clear="both"></CENTER>
|
|
|
|
<CENTER><B>examples/office2.wrl example scene in wireframe mode</B></CENTER>
|
|
|
|
|
|
<P>This scene is probably the nicest image, asthetically speaking, of all
|
|
the examples. The image fills the viewable area and is a complete
|
|
room. If you navigate around the room you quickly learn that the
|
|
walls to the room disappear if you're viewing area would be blocked by
|
|
those walls For example, tilt the room down, then rotate it to the
|
|
left. You're view of the room is now outside of the right wall, but
|
|
in order to view the inside of the room the right wall is not drawn.
|
|
You can change this behaviour by using the <B><FONT SIZE=-1>Display->Two-sided
|
|
Polygons</FONT></B> option and setting this option <I>"On"</I>. The
|
|
default setting, <I>Auto</I>, will not display the wall if it gets in your
|
|
way. Turning this option on causes the back sides of the walls to
|
|
become visible, and so your view inside the room is blocked.
|
|
<CENTER><IMG SRC="./gx/hammel/vrwave-2.jpg" HSPACE=10 VSPACE=10 HEIGHT=412 WIDTH=510><BR clear="both"></CENTER>
|
|
|
|
<CENTER><B>examples/sensors/touchsensor.wrl, with the Display->Background</B></CENTER>
|
|
|
|
<CENTER><B>set to gray and the Heads Up Navigation button set.</B></CENTER>
|
|
|
|
|
|
<P>In this next example the Heads Up option is selected and you can see
|
|
the three view functions displayed in the middle of the viewing area.
|
|
These small boxes don't move with the rest of the scene as you drag it
|
|
around the viewing window. They stay centered in that window.
|
|
A red line is drawn from the center of one of these boxes to the current
|
|
cursor location showing direction and speed (longer lines give faster speed).
|
|
|
|
<P>The movement of the small sphere in this image is managed through the
|
|
use of the left mouse button, but only when the cursor is over the large
|
|
green box. Moving the cursor, left mouse button held down, moves
|
|
the sphere around the viewing area. If the mouse leaves the area
|
|
of the box then the sphere stops moving. Note that the area of the
|
|
box does not mean just a side of the box - it means what ever region of
|
|
the box is actually visible to the user.
|
|
<BR>
|
|
<BR>If you have a fast enough computer and enough memory you can turn on
|
|
interactive texturing. This allows you to view the the objects in
|
|
the scene with their full textures displayed while you move the scenes
|
|
and objects around the viewing area. Although I can't show this
|
|
feature here, I can show you another example scene which has a texture
|
|
map applied to the sides of a cube. The first example shows the texturing
|
|
on a cube with Two-sided Polygons turned off. The next example, which
|
|
is a full sized capture so you can see the details a little better, shows
|
|
the same image with Two-sided Polygons turned on.
|
|
<CENTER><IMG SRC="./gx/hammel/vrwave-5.jpg" HSPACE=10 VSPACE=10 NOSAVE HEIGHT=416 WIDTH=516><BR clear="both"></CENTER>
|
|
|
|
<CENTER><B>examples/isub/cube.wrl, with static texturing turned on</B></CENTER>
|
|
|
|
<CENTER>
|
|
<H4>
|
|
<IMG SRC="./gx/hammel/vrwave-6.jpg" HSPACE=10 VSPACE=10 HEIGHT=330 WIDTH=348><BR clear="both"></H4></CENTER>
|
|
|
|
<CENTER><B>Same image, but with two sided polygons turned on so</B></CENTER>
|
|
|
|
<CENTER><B>you can see the transparent parts of the image better.</B></CENTER>
|
|
|
|
<H4>
|
|
Visiting VRML 2.0 URLs</H4>
|
|
VRWave's beta Netscape plug-in does not work with Netscape 4.0 due to changes
|
|
from 3.0 to 4.0 in Netscapes security code. Since I use the
|
|
4.03 release at home I was not able to test the plug-in. Also, since
|
|
all of the VRML sites I visited used VRML embedded in HTML, and
|
|
since those pages caused my 4.03 version of Netscape to crash when I tried
|
|
to load them, I wasn't able to test the mime/type installation that would
|
|
launch VRWave as an external viewer. I also tried to download a newer
|
|
version of Netscape, but my connection kept timing out during the download
|
|
(its about 10Mb now). This is what I get for waiting till the last
|
|
few days before my deadline for this column before trying to get this all
|
|
working. Its my fault - not VRWaves.
|
|
<H4>
|
|
Getting Help and other information</H4>
|
|
There is a Help option in the menu bar at the top of the interface.
|
|
This requires that Netscape be in your path so that VRWave can launch it.
|
|
If Netscape is already running, it won't matter, since VRWave still needs
|
|
to try to run Netscape first, so it still must be in your PATH before
|
|
running VRWave. I'm not sure if I prefer this or would rather see
|
|
them use the NetHelp inteface for Netscape. I think I prefer
|
|
the latter, although NetHelp may not be accessible from Java (I use
|
|
an Xlib based API for it).
|
|
|
|
<P>The README file that comes with the binary distribution states that
|
|
an online users guide for VRWeb (VRWave's predecessor) is available from
|
|
http://www.iicm.edu/vrweb/help. However, this link doesn't seem to
|
|
work any more. I browsed the main VRWave web site and found
|
|
a link to <A HREF="http://www.iicm.edu/vrwave/release">http://www.iicm.edu/vrwave/release</A>,
|
|
which contains various online documentation. Unfortunately, I didn't
|
|
find a users guide per se. The best printed help available
|
|
will be the help/install.html and help/mouse.html files in the runtime
|
|
directories from the binary distribution. In particular, the mouse.html
|
|
file contains detailed information about mouse and keyboard bindings for
|
|
scene navigation.
|
|
<H4>
|
|
Compiling from source</H4>
|
|
The bad news here is that my Java development environment just doesn't
|
|
seem to be working and so I can't talk intelligently about building VRWave
|
|
from the source distribution. I had my Java environment marginally
|
|
working in Denver, but when I moved to Dallas I must have changed something
|
|
because neither javac nor Vibe seem to be working any more. It may
|
|
be time to upgrade to Red Hat 5.0 anyway, so maybe I'll fix it then.
|
|
<BR>
|
|
<H4>
|
|
To Wave or not to Wave</H4>
|
|
The question remains: is VRWave a good tool for viewing and learning
|
|
about VRML? Yes, absolutely. Its still early in its development
|
|
but the tool is very stable, it didn't crash at all on any test files I
|
|
loaded (although I was only able to use the example files in the distribution).
|
|
Some things I'd like to see is a little better help system or at least
|
|
one that can allow me to configure where Netscape is (since I used to upgrade
|
|
often I didn't have it in my path, I have a script that knows
|
|
how to find it). The URL feature is handy but it would be nice
|
|
to be able to select from a list of URLs. Such a feature is more
|
|
the realm of a browser than a VRML viewer. I suppose it depends
|
|
on which VRWave wants to be in the long run.
|
|
|
|
<P>If you are just getting started with VRML and would just like to
|
|
look at a few examples, this is a good place to start. You will need
|
|
to have a working Java environment - one that can run Java applets if not
|
|
compile Java code. Other than that, installation is a breeze and
|
|
there are enough example files to keep you at least midly entertained until
|
|
you can write your own VRML worlds.
|
|
<BR>
|
|
<TABLE WIDTH="100%" >
|
|
<TR>
|
|
<TD VALIGN=TOP COLSPAN="4" BGCOLOR="#000000" cellpadding="0" cellspacing="0"><IMG SRC="../gx/hammel/cleardot.gif" ALT="indent" ALIGN=LEFT></TD>
|
|
</TR>
|
|
</TABLE>
|
|
|
|
<TABLE WIDTH="100%" >
|
|
<TR>
|
|
<TD ALIGN=RIGHT><FONT SIZE=-2>© 1998 by <A HREF="mailto:mjhammel@csn.net">Michael
|
|
J. Hammel</A> </FONT></TD>
|
|
</TR>
|
|
</TABLE>
|
|
|
|
<!-- =============================================================
|
|
This Page Designed by Michael J. Hammel.
|
|
Permission to use all graphics and other content for private,
|
|
non-commerical use is granted provided you give me (or the
|
|
original authors/artists) credit for the work.
|
|
|
|
CD-ROM distributors and commercial ventures interested in
|
|
providing the Graphics Muse for a fee must contact me,
|
|
Michael J. Hammel (mjhammel@csn.net), for permission.
|
|
============================================================= !--><A NAME="musings"></A>
|
|
<TABLE>
|
|
<TR>
|
|
<TD>
|
|
<H2>
|
|
More...</H2>
|
|
<IMG SRC="../gx/hammel/musings.gif" ALT="Musings" HEIGHT=52 WIDTH=247 ALIGN=LEFT> </TD>
|
|
</TR>
|
|
</TABLE>
|
|
|
|
<TABLE>
|
|
<TR>
|
|
<TD></TD>
|
|
</TR>
|
|
</TABLE>
|
|
<IMG SRC="../gx/hammel/cleardot.gif" ALT="indent" VSPACE=5 HEIGHT=1 WIDTH=1 ALIGN=LEFT>
|
|
<TABLE WIDTH="100%" >
|
|
<TR>
|
|
<TD ALIGN=RIGHT WIDTH="100%"><FONT SIZE=-2>© 1998 <A HREF="mailto:mjhammel@csn.net">Michael
|
|
J. Hammel</A> </FONT></TD>
|
|
</TR>
|
|
|
|
<TR>
|
|
<TD VALIGN=TOP BGCOLOR="#000000" cellpadding="0" cellspacing="0"><IMG SRC="../gx/hammel/cleardot.gif" ALT="indent" ALIGN=LEFT></TD>
|
|
</TR>
|
|
</TABLE>
|
|
|
|
<H4>
|
|
...XeoMenu (continued)</H4>
|
|
<APPLET CODEBASE="." CODE="XeoMenu" WIDTH=150 HEIGHT=200><PARAM NAME=copyright VALUE="(c) 1997 Sun Microsystems Inc. All Rights Reserved."><PARAM NAME=author value="Patrick Chan. www.xeo.com"><PARAM NAME=bg-color value="206 114 28"><PARAM NAME=image VALUE="./gx/hammel/xeomenu-1.gif"><PARAM NAME=separator VALUE="|"><PARAM NAMe=newline VALUE="^"><PARAM NAME=font VALUE="Helvetica"><PARAM NAME=font-height VALUE="18"><PARAM NAME=marginh VALUE=2><PARAM NAME=marginv VALUE=2><PARAM name=fg-menu-color value="0 0 0"><PARAM name=bg-menu-color value="206 114 28"><PARAM name=fg-hi-menu-color value="232 221 18"><PARAM name=bg-hi-menu-color value="206 114 28"><!-- param name=target value="_self" --><PARAM NAME=menu0
|
|
VALUE="0 0 150 100|151 0 150 100|0 0|d|/path/to/file-1.html|What is Linux?|/path/to/file-2.html|How can I get it?|/path/to/file-3.html"><PARAM NAME=menu1 VALUE="0 101 150 100|151 101 150 100|0 101|d|/path/to/file-4.html"></APPLET>
|
|
|
|
<P>This first example shows the basic workings of XeoMenu. Note that
|
|
when you place the mouse over either word in the image it changes colors
|
|
and shifts slightly in position. The latter was originally just a
|
|
typo but I liked it the effect so much I left it in. The "Linux"
|
|
text also provides a drop down menu when you place your cursor over it.
|
|
The menu contains two simple entries. Moving the mouse over either
|
|
entry would take you to another page (although the links in this source
|
|
are fictitious - they don't really exist).
|
|
|
|
<P>The applet code for this first example looks like this:
|
|
<UL><B><FONT SIZE=-1><APPLET CODEBASE="." CODE="XeoMenu" WIDTH=150 HEIGHT=200></FONT></B>
|
|
<BR><B><FONT SIZE=-1><PARAM NAME=copyright VALUE="(c) 1997 Sun Microsystems
|
|
Inc. All Rights Reserved."></FONT></B>
|
|
<BR><B><FONT SIZE=-1><PARAM NAME=author value="Patrick Chan. www.xeo.com"></FONT></B>
|
|
<BR><B><FONT SIZE=-1><PARAM NAME=bg-color value="206 114 28"></FONT></B>
|
|
<BR><B><FONT SIZE=-1><PARAM NAME=image VALUE="./gx/hammel/xeomenu-1.gif"></FONT></B>
|
|
<BR><B><FONT SIZE=-1><PARAM NAME=separator VALUE="|"></FONT></B>
|
|
<BR><B><FONT SIZE=-1><PARAM NAMe=newline VALUE="^"></FONT></B>
|
|
<BR><B><FONT SIZE=-1><PARAM NAME=font VALUE="Helvetica"></FONT></B>
|
|
<BR><B><FONT SIZE=-1><PARAM NAME=font-height VALUE="18"></FONT></B>
|
|
<BR><B><FONT SIZE=-1><PARAM NAME=marginh VALUE=2></FONT></B>
|
|
<BR><B><FONT SIZE=-1><PARAM NAME=marginv VALUE=2></FONT></B>
|
|
<BR><B><FONT SIZE=-1><param name=fg-menu-color value="0 0 0"></FONT></B>
|
|
<BR><B><FONT SIZE=-1><param name=bg-menu-color value="206 114 28"></FONT></B>
|
|
<BR><B><FONT SIZE=-1><param name=fg-hi-menu-color value="232 221 18"></FONT></B>
|
|
<BR><B><FONT SIZE=-1><param name=bg-hi-menu-color value="206 114 28"></FONT></B>
|
|
<BR><B><FONT SIZE=-1><!-- param name=target value="_self" --></FONT></B>
|
|
|
|
<P><B><FONT SIZE=-1><PARAM NAME=menu0</FONT></B>
|
|
<BR><B><FONT SIZE=-1> VALUE="0 0 150 100|151 0 150 100|0 0|d|/path/to/file-1.html|What
|
|
is Linux?|/path/to/file-2.html|How can I get it?|/path/to/file-3.html"></FONT></B>
|
|
|
|
<P><B><FONT SIZE=-1><PARAM NAME=menu1</FONT></B>
|
|
<BR><B><FONT SIZE=-1> VALUE="0 101 150 100|151 101 150 100|0
|
|
101|d|/nav/new/index.html"></FONT></B>
|
|
|
|
<P><B><FONT SIZE=-1></APPLET></FONT></B></UL>
|
|
We'll step through these one time to explain briefly what each line does.
|
|
The first line starts the applet code and establishes the current directory
|
|
(the one from which this page was taken) as the location for the applet
|
|
code. The CODE argument gives the name of the Java program.
|
|
Note that you don't have to include the ".class" extension (all Java programs,
|
|
once compiled, have a .class extension in the filename). The width
|
|
and height arguments give the dimensions in which the applet will live
|
|
in the page. Note that this code was placed right after a table,
|
|
inside the BODY section of the HTML document. After this line come
|
|
the set of applet parameters, each of which is specified using the HTML
|
|
PARAM tag.
|
|
|
|
<P>The next two lines give the copyright and program author, giving credit
|
|
to Sun Microsystems and Patrick Chan for this code. Sun paid Xeo
|
|
for its development, I believe, for use on the Java Web site.
|
|
|
|
<P>The next line gives a background color to use in the transparent regions
|
|
of the image. This particular example does not have any transparent
|
|
areas, however the next one does.
|
|
|
|
<P>The image to use is specified with the image parameter line. The
|
|
VALUE can be any valid URL.
|
|
|
|
<P>The seperator is a single character used to delimit fields in the menu
|
|
parameters. The menu parameters are the last two PARAM entries which
|
|
we'll cover in a moment. For now, just note that the seperator is
|
|
used in the VALUE argument for the menu parameters.
|
|
<BR>
|
|
<BR>Menu items can have multiple lines using this program. In order
|
|
for XeoMenu to recognize a line break, the text uses a caret (^) to denote
|
|
a newline. These are not used in these examples, but the caret would
|
|
be embedded in the menu text in the menu parameters.
|
|
|
|
<P>The next two lines specify the font and font height to use for the menu
|
|
text. According to the man page for XeoMenu there are only 3 possible
|
|
font types: Helvetica, TimesRoman, and Courier. This is probably
|
|
a limitation in the early Java class libraries, but I'm not certain of
|
|
that.
|
|
|
|
<P>Marginh and marginv are used to pad the region around the menu text
|
|
with empty space. The values are given in pixels.
|
|
|
|
<P>Now come the text color parameters. First are the foreground and
|
|
background colors to use for the text when the cursor has not been moved
|
|
over the text, ie the default text colors. The latter two specify
|
|
the colors to use when the cursor is placed over a menu entry. Note
|
|
that in the first example the background colors are the same but the foreground
|
|
colors are changed. This isn't a recommended method - the results
|
|
are somewhat unappealing - but it does give you an idea of how the colors
|
|
can provide variations of effects.
|
|
|
|
<P>The last line before the two menu parameteers is actually commented
|
|
out, but is given for the sake of completeness. This parameter is
|
|
recognized by XeoMenu as the frame to display a menu items targe URL if
|
|
it is selected.
|
|
|
|
<P>Finally, we have the two menu parameters. XeoMenu recognizes any
|
|
parameter prefixed with the word "menu" and suffixed with a numeric value
|
|
as a menu item. This parameters value field contains a set of seperator
|
|
delimited values that define the display location, contents, and URLs for
|
|
each menu. The first set of 4 numbers is the <I>hotspot</I>.
|
|
This is the region, specified by an x,y location and its width and height,
|
|
in which the mouse must enter for XeoMenu to begin handling the menu features
|
|
of the image. The next 4 numbers specify a secondary region of the
|
|
image to overlay on the image when the mouse enters the hotspot.
|
|
The next two numbers specify the offset into the image to place the overlay.
|
|
In this example the offsets are specified so the overlay is place over
|
|
the hotspot, blotting it out as it were. This is not the only way
|
|
to use this feature, since the overlay can be placed anywhere on the image.
|
|
Note that all of the x,y coordinates are given as pixel coordinates in
|
|
the image.
|
|
|
|
<P>After the offset comes a single character. This can either be
|
|
a "d" or a "u". The "d" is used to post menus in a downward direction
|
|
and the "u" draws them upward. The location of the upper left corner
|
|
for the downward menus (and the lower left corner for upperward menus)
|
|
is also the offsets specified for the overlay location (ie the two numbers
|
|
that preceeded the "d" or "u").
|
|
|
|
<P>Next comes the default URL. This is the URL that will be used
|
|
if the user simply clicks in the hotspot without actually using a menu.
|
|
After this comes the menu definitions. These are the text of the
|
|
menu entries paired with a URL that follows immediately after it.
|
|
Note that in the second menu parameter there is only one URL specified
|
|
- the default URL. That means that no drop down menus are displayed
|
|
when you place the mouse over the Gazette hotspot, but the overlay is still
|
|
used.
|
|
|
|
<P>In this next example, both regions of text use menus. One uses
|
|
an upward menu and the other uses an overlay that is not directly over
|
|
the original hotspot. Also, this image has a transparent region.
|
|
Can you guess how to create this example? Try it first, before looking
|
|
at the <A HREF="applet.txt">source code</A>.
|
|
<BR>
|
|
<BR> <APPLET CODEBASE="." CODE="XeoMenu" WIDTH=150 HEIGHT=200><PARAM NAME=copyright VALUE="(c) 1997 Sun Microsystems Inc. All Rights Reserved."><PARAM NAME=author value="Patrick Chan. www.xeo.com"><PARAM NAME=bg-color value="206 114 28"><PARAM NAME=image VALUE="./gx/hammel/xeomenu-2.gif"><PARAM NAME=separator VALUE="|"><PARAM NAMe=newline VALUE="^"><PARAM NAME=font VALUE="Helvetica"><PARAM NAME=font-height VALUE="14"><PARAM NAME=marginh VALUE=2><PARAM NAME=marginv VALUE=2><PARAM name=fg-menu-color value="0 0 0"><PARAM name=bg-menu-color value="206 114 28"><PARAM name=fg-hi-menu-color value="232 221 18"><PARAM name=bg-hi-menu-color value="206 114 28"><!-- param name=target value="_self" --><PARAM NAME=menu0 VALUE="0 0 150 100|151 0 150 100|0 0|u|/path/to/file-1.html|What is Linux?|/path/to/file-2.html|How can I get it?|/path/to/file-3.html"><PARAM NAME=menu1 VALUE="0 101 150 100|151 101 150 100|0 70|d|/path/to/file-4.html|To Err is Human^To Forgive, Devine|/path/to/file-5.html|I think|/path/to/file-6.html"></APPLET>
|
|
|
|
<P><A HREF="./gm.html#xeomenu-summary">Back to the main Muse page.</A>
|
|
<BR>
|
|
<TABLE WIDTH="100%" >
|
|
<TR>
|
|
<TD VALIGN=TOP COLSPAN="4" BGCOLOR="#000000" cellpadding="0" cellspacing="0"><IMG SRC="../gx/hammel/cleardot.gif" ALT="indent" ALIGN=LEFT></TD>
|
|
</TR>
|
|
</TABLE>
|
|
|
|
<TABLE WIDTH="100%" >
|
|
<TR>
|
|
<TD ALIGN=RIGHT><FONT SIZE=-2>© 1998 by <A HREF="mailto:mjhammel@csn.net">Michael
|
|
J. Hammel</A> </FONT></TD>
|
|
</TR>
|
|
</TABLE>
|
|
|
|
|
|
<H4>
|
|
"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
|
</H4>
|
|
|
|
<P> <HR> <P>
|
|
<!--===================================================================-->
|
|
|
|
<A NAME="tex2html3" HREF="./kapok/node1.html"><IMG WIDTH=37 HEIGHT=24
|
|
ALIGN=BOTTOM ALT="next"
|
|
SRC="http://wwwcn.cern.ch/icons/next_motif.gif"></A> <IMG WIDTH=26
|
|
HEIGHT=24 ALIGN=BOTTOM ALT="up"
|
|
SRC="http://wwwcn.cern.ch/icons/up_motif_gr.gif"> <IMG WIDTH=63 HEIGHT=24
|
|
ALIGN=BOTTOM ALT="previous"
|
|
SRC="http://wwwcn.cern.ch/icons/previous_motif.gif"> <BR>
|
|
<B> Next:</B> <A NAME="tex2html4" HREF="./kapok/node1.html">Characteristics and
|
|
chipset</A>
|
|
<BR> <P>
|
|
|
|
<b>Linux on a Kapok 7200</b> <BR> 4.2.98 version 1.0
|
|
<P>
|
|
|
|
<P>
|
|
Alessandro Usseglio Viretta <BR> Lab for EM 1 <BR>
|
|
Schmelzbergstrasse 7, CH-8092 Zurich
|
|
<BR> e-mail: <A HREF="mailto:usseglio@biol.ethz.ch">usseglio@biol.ethz.ch</A>
|
|
<BR> Fax + 41 1 6321103
|
|
<P>
|
|
<H3 CLASS=ABSTRACT>Abstract:</H3>
|
|
<P CLASS=ABSTRACT>The Kapok 7200 is a portable computer, Intel-based,
|
|
manufactured by
|
|
Kapok - <i>http://www.kapok.com.tw</i> - in Taiwan. It is sold under a
|
|
variety of names is USA and Europe. BSI
|
|
<i>http://www.bsicomputer.com</i>,
|
|
ATC <i>http://www.at-computers.com</i>, NewChip
|
|
<i>http://www.newchip.it</i>,
|
|
AJP <i>http://www.ajp.co.uk</i>, JET <i>http://www.jet.ch</i>,
|
|
A&O <i>http://www.aocomputer.com</i>, Computer Direct <i>
|
|
http://www.direct.ch</i>, Gericom <i>http://www.gericom.com</i>, Pro
|
|
Star<i> http://www.pro-star.com</i>, Megashop <i>http://www.megashop.ch</i>
|
|
are just a few vendors of this computer. It's a bulky and heavy
|
|
computer, but it's provided with a big nice TFT screen - up to 14.1"
|
|
-
|
|
and a easily upgradable Pentium MMX processor. It is usually
|
|
delivered with Windows 95 already installed. The aim of this
|
|
document is to explain
|
|
how to install Linux on such a machine. If you want to keep Windows,
|
|
please refer to the HOWTOs available, for example, at
|
|
<i>http://sunsite.unc.edu/pub/Linux/docs/</i>. This document is
|
|
aimed to absolute beginners and is not intended to provide a deep
|
|
insight into the Linux operating system. After reading it, the newby
|
|
should be ready to successfully install a RedHat Linux system on
|
|
his/her laptop and start working with it.
|
|
</P><P>
|
|
<P>
|
|
<BR> <HR>
|
|
<UL><A NAME="CHILD_LINKS"> </A>
|
|
<LI> <A NAME="tex2html5"
|
|
HREF="./kapok/node1.html#SECTION00010000000000000000">Characteristics and
|
|
chipset</A>
|
|
<LI> <A NAME="tex2html6"
|
|
HREF="./kapok/node2.html#SECTION00020000000000000000">Installing Linux</A>
|
|
<UL>
|
|
<LI> <A NAME="tex2html7"
|
|
HREF="./kapok/node3.html#SECTION00021000000000000000">Where to get RedHat Linux</A>
|
|
<LI> <A NAME="tex2html8"
|
|
HREF="./kapok/node4.html#SECTION00022000000000000000">Partitions</A>
|
|
<LI> <A NAME="tex2html9"
|
|
HREF="./kapok/node5.html#SECTION00023000000000000000">Which packages?</A>
|
|
</UL>
|
|
<LI> <A NAME="tex2html10" HREF="./kapok/node6.html#SECTION00030000000000000000">X
|
|
Window</A>
|
|
<UL>
|
|
<LI> <A NAME="tex2html11"
|
|
HREF="./kapok/node7.html#SECTION00031000000000000000">XF86Config</A>
|
|
<LI> <A NAME="tex2html12"
|
|
HREF="./kapok/node8.html#SECTION00032000000000000000">Which window manager?</A>
|
|
</UL>
|
|
<LI> <A NAME="tex2html13"
|
|
HREF="./kapok/node9.html#SECTION00040000000000000000">XDM</A>
|
|
<LI> <A NAME="tex2html14"
|
|
HREF="./kapok/node10.html#SECTION00050000000000000000">PCMCIA</A>
|
|
<LI> <A NAME="tex2html15"
|
|
HREF="./kapok/node11.html#SECTION00060000000000000000">Networking</A>
|
|
<UL>
|
|
<LI> <A NAME="tex2html16"
|
|
HREF="./kapok/node12.html#SECTION00061000000000000000">Ethernet</A>
|
|
<LI> <A NAME="tex2html17"
|
|
HREF="./kapok/node13.html#SECTION00062000000000000000">PPP</A>
|
|
</UL>
|
|
<LI> <A NAME="tex2html18"
|
|
HREF="./kapok/node14.html#SECTION00070000000000000000">Kernel</A>
|
|
<LI> <A NAME="tex2html19"
|
|
HREF="./kapok/node15.html#SECTION00080000000000000000">Copyright notice and
|
|
disclaimer</A>
|
|
<LI> <A NAME="tex2html20" HREF="./kapok/node16.html#SECTION00090000000000000000">
|
|
About this document ... </A>
|
|
</UL>
|
|
|
|
|
|
<!--===================================================================-->
|
|
<P> <hr> <P>
|
|
<center><H5>Copyright © 1998, Alessandro Usseglio Viretta <BR>
|
|
Published in Issue 26 of <i>Linux Gazette</i>, March 1998</H5></center>
|
|
|
|
<!--===================================================================-->
|
|
<P> <hr> <P>
|
|
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
|
|
ALT="[ TABLE OF CONTENTS ]"></A>
|
|
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
|
|
ALT="[ FRONT PAGE ]"></A>
|
|
<A HREF="./gm.html"><IMG SRC="../gx/back2.gif"
|
|
ALT=" Back "></A>
|
|
<A HREF="./dubs.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
|
<P> <hr> <P>
|
|
|
|
<H4>
|
|
"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
|
</H4>
|
|
|
|
<P> <HR> <P>
|
|
<!--===================================================================-->
|
|
|
|
<center>
|
|
<H2>Low Cost Macintosh-Linux Networking at Home</H2>
|
|
<H4>by <A HREF="mailto:rld@erols.com">Dr. Richard L. Dubs</A></H4>
|
|
</center>
|
|
<P> <HR> <P>
|
|
<H3>Contents:</H3>
|
|
<ul>
|
|
<li><a HREF="./dubs.html#intro">I. Introduction</A>
|
|
<li><a HREF="./dubs.html#network">II. Network Overview</A>
|
|
<li><a HREF="./dubs.html#hardware">III. Network Hardware and Software</a>
|
|
<li><a HREF="./dubs.html#setup">IV. Setting Up</A>
|
|
<li><a HREF="./dubs.html#oper">V. Operations</A>
|
|
<li><a HREF="./dubs.html#final">VI. Final Comments</A>
|
|
</ul>
|
|
|
|
<A name="intro"></A>
|
|
<H3>I. Introduction</H3>
|
|
<P>
|
|
Only one hour after I taught my wife, Lois, how to access the Internet
|
|
with our Macintosh Quadra 605, I knew that my dream of having a Linux-based
|
|
home network would be realized. Surely, I reasoned, it would now be
|
|
unacceptable for me to "hog" our Internet connection and prevent Lois from
|
|
tracking down Star Trek Collector's Cards online. Fortunately I had used
|
|
Linux IP Masquerading in a previous life as a LAN administrator and knew
|
|
that a Linux solution would allow us both to be on the Internet at the same
|
|
time with only a single modem connection and IP address from our Internet
|
|
Service Provider.
|
|
<P>
|
|
There were a couple of constraints, however. First, there was no space in
|
|
my family room for another computer; any additional system would have to be
|
|
set up in the basement. Second, our Mac did not have an Ethernet card, nor
|
|
was I inclined to pull Ethernet cable through my house. Third, any
|
|
solution would have to be achieved on a shoestring budget (Did you hear the
|
|
one about the guy whose wife had her credit cards stolen, and the guy
|
|
didn't report it because the thief spent less than the wife?)
|
|
<P>
|
|
This article describes the Linux networking solution I came up with - it
|
|
consists of my Mac, a Linux Box and a low cost dos-based router. It is not
|
|
"state of the art", but it is a solution that works within the constraints
|
|
I imposed, it is relatively simple, and it is one that many people haven't
|
|
heard about before. As you will see, it heavily leverages software and
|
|
information available on the Internet. Mac, DOS, and Linux users will all
|
|
find something of interest in the material presented herein.
|
|
<P>
|
|
The remainder of this article is organized as follows: Section II
|
|
presents an overview of my home network; Section III describes the network
|
|
hardware and software; Section IV addresses setting up; Section V describes
|
|
operations; and Section VI presents final comments, including things to
|
|
try.
|
|
|
|
<A name="network"></A>
|
|
<H3>II. Network Overview</H3>
|
|
<P>
|
|
<center><img src="./gx/dubs/schematic.gif"></center>
|
|
<P>
|
|
Figure 1 presents a schematic of my home network. My Macintosh (family
|
|
room) has connectivity to my Linux box (basement) through a low cost
|
|
dos-based router (also basement). The Macintosh-router segment is
|
|
LocalTalk and the router-Linux box segment is Ethernet (thinnet). The
|
|
Linux box provides the dialup PPP connection to my Internet Service
|
|
Provider (ISP) and runs IP Masquerading which allows the Macintosh and the
|
|
Linux box to use the Internet at the same time through the single dialup
|
|
connection.
|
|
|
|
<A name="hardware"></A>
|
|
<H3>III. Network Hardware and Software</H3>
|
|
|
|
<H4>LocalTalk</H4>
|
|
<P>
|
|
LocalTalk seemed the best way to establish connectivity between my family
|
|
room (Mac) and my basement (PC's) for two reasons:
|
|
<ul>
|
|
<li>LocalTalk support is already built into every Macintosh. I didn't have
|
|
to buy additional hardware for my Mac.
|
|
<li>A LocalTalk network can be run over ordinary phone lines. I used the
|
|
free pair of wires in the existing telephone line in my house for the
|
|
localtalk segment of my LAN.
|
|
</ul>
|
|
<P>
|
|
Some people might say that LocalTalk, at 230 KB/sec is too slow to be
|
|
useful for networking. (Ethernet, in comparison, is 10MB/sec). However, my
|
|
modem connection is only 14.4 KB/sec (57.6 KB/sec maximum throughput)
|
|
making LocalTalk seem more than adequate.
|
|
|
|
<H4>Router</H4>
|
|
<P>
|
|
Having a LocalTalk connection from my Mac to my basement still didn't help
|
|
me connect to my Linux box. Linux does offer AppleTalk support, but it
|
|
does not yet offer support for LocalTalk (although I understand the hooks
|
|
for LocalTalk are now built into the AppleTalk code).
|
|
|
|
<H4>Figure 1. Schematic of My Mac-Linux Home Network</H4>
|
|
<P>
|
|
That's where the free router software, PCROUTE by Vance Morrison, comes
|
|
in. PCROUTE is dos-based software available on the Internet (PCRTE224.ZIP
|
|
at http://www.nova.edu/Inter-Links/simtel/network.html) that routes TCP/IP
|
|
packets between LocalTalk and Ethernet networks. PCROUTE can run on a PC
|
|
XT or better ( and it doesn't require an AppleTalk - IP Gateway like the
|
|
LocalTalk packet driver-based routers such as KA9Q). Once PCROUTE is set
|
|
up correctly, you don't even need a keyboard or monitor if your computer
|
|
can boot without them. I run PCROUTE on an old 386 PC with 1Meg of Ram and
|
|
a 5.25 inch floppy drive.
|
|
<P>
|
|
PCROUTE comes with excellent instructions on how to compile and configure
|
|
it as a LocalTalk/Ethernet router. Of course the router needs both a
|
|
LocalTalk PC card and an Ethernet card. The latter I already had and the
|
|
former I bought for $27 + shipping from MacResource Computers, a
|
|
Texas-based company I found on the Internet
|
|
(<A
|
|
HREF="http://www.mac-resource.com/mac-resource/">http://www.mac-resource.com/mac-resource/</A>).
|
|
<P>
|
|
Some more comments about the LocalTalk connection between my Mac and the
|
|
router. To use phone lines for LocalTalk, both my Mac and the router
|
|
required LocalTalk/RJ-11 adapters. The 8 pin mini-din variety is available
|
|
at any computer superstore, however, the LocalTalk PC board required the
|
|
older 9 pin variety. Those are easy enough to find for sale on the
|
|
Internet, but I found the circuit itself on the Internet instead
|
|
(http://www.jura2.uni-hamburg.de/~kai/LAM_HTME/cap1.htm)! It turns out
|
|
that you can build the 8 or 9 pin variety with only 5 resistors, 2
|
|
capacitors, and some miscellaneous parts - and it all fits in a 35mm film
|
|
canister! I built one for my router and it works great. (One word of
|
|
caution - the pinouts for the 9 pin adapter or left/right backward in the
|
|
figure provided with the circuit.)
|
|
<P>
|
|
I have a single phone line in my house; it uses the inner red and green
|
|
wires of the modular phone plug for the telephone connection. The outer
|
|
black and yellow wires are available for LocalTalk. Fortunately,
|
|
LocalTalk/RJ-11 adapters are already wired to use the outer wires.
|
|
|
|
<H4>Linux</H4>
|
|
<P>
|
|
My Linux box is a 486DX33 PC with 16Megs of Ram, a 270MB hard disk, and a
|
|
14.4 baud Modem. It uses a thinnet Ethernet connection to the router. The
|
|
only unusual part of installing Linux was that my 486 does not have a
|
|
CD-ROM drive. To load the Linux software, I decided I needed to get the
|
|
software on the DOS partition of my 486 so I could install Linux from
|
|
there.
|
|
<P>
|
|
To accomplish this I temporarily installed the LocalTalk PC card in the
|
|
486 and loaded the software that came with the card. The software allows
|
|
you to mount Macintosh folders as letter drives (e.g. f:) on your PC. I
|
|
simply copied the Linux installation software off the CD-ROM into a folder
|
|
on my Macintosh hard disk, mounted that folder over the LocalTalk network
|
|
as drive f: on the 486, and used XCOPY to move all the LINUX software to my
|
|
486 (e.g. XCOPY f:*.* c: /s /e).
|
|
|
|
<A name="setup"></A>
|
|
<H3>IV. Setting Up</H3>
|
|
<P>
|
|
I followed RFC 1597, which allocates certain IP addresses for private
|
|
networks, and internally assigned 192.168.1.x for my LocalTalk segment and
|
|
192.168.2.x for my Ethernet segment. In the next three sections, I provide
|
|
specific instructions for configuring the network.
|
|
|
|
<H4>Macintosh Setup</H4>
|
|
<P>
|
|
The Macintosh setup is straightforward. Select MacTCP from the control
|
|
panel. In the first MACTCP window, select the "More" button. In the second
|
|
window, set the server to "Manual" and the gateway IP to 192.168.1.1 (This
|
|
is the IP address for the router's LocalTalk PC card). I leave the DNS
|
|
servers the same as I use to access the Internet directly with my Mac's
|
|
modem.
|
|
<P>
|
|
Click "OK" to return to the first MacTCP screen. On the first screen,
|
|
change the Mac's IP address to 192.168.1.2 and select the LocalTalk icon.
|
|
Make sure that LocalTalk is turned on in the Chooser.
|
|
|
|
<H4>Router Setup</H4>
|
|
<P>
|
|
PCROUTE comes with excellent documentation which I will not repeat here.
|
|
I set up the LocalTalk interface with an IP address of 192.168.1.1 and the
|
|
Ethernet interface with an IP address of 192.168.2.1. For the Ethernet
|
|
interface I have successfully compiled and run two different configurations
|
|
of PCROUTE, one that uses a direct interface to an 8 bit WD8003 Ethernet
|
|
card and one that uses an Ethernet packet driver interface. The nice
|
|
feature of the packet driver interface is that it allows you to use any
|
|
Ethernet card for which a packet driver exists. I have successfully used
|
|
PCROUTE with both the WD8003 card and a 16-bit NE2000 compatible card using
|
|
packet drivers.
|
|
<P>
|
|
In the router, I set a static default route to 192.168.2.2 (the Linux box)
|
|
so that any IP address not recognized by the router (e.g. www sites from my
|
|
Mac intended for the Internet) will be routed by default to the Linux box.
|
|
<P>
|
|
A neat feature of PCROUTE is that it allows you to designate the Linux box
|
|
as a syslogd host that logs status messages from the router. When the
|
|
router starts up, and approximately every 15 minutes thereafter, the router
|
|
sends the Linux box a "Router is up" message that is recorded in a file on
|
|
the Linux box that you specify.
|
|
|
|
<H4>Linux Setup</H4>
|
|
<P>
|
|
I set the IP address for the Linux Ethernet interface to 192.168.2.2 and
|
|
designated the router (192.168.2.1) as the gateway for packets addressed to
|
|
the LocalTalk segment (192.168.1.x).
|
|
<P>
|
|
To log syslog messages from the router, edit the /etc/syslog.conf file as
|
|
described in the PCROUTE documentation. Then reboot Linux or type kill
|
|
-HUP <pid>, where pid is the syslogd process id obtained by typing ps -x.
|
|
|
|
<H4>IP Masquerading</H4>
|
|
<P>
|
|
As stated earlier, I use IP Masquerading to give my Mac and Linux box
|
|
simultaneous access to the Internet through a single PPP connection to my
|
|
ISP. However, because I use Linux 1.2.13, the IP Masquerading capability
|
|
has to be built into the kernel as a patch. Fortunately, IP Masquerading
|
|
comes with excellent instructions for applying the patch.
|
|
<P>
|
|
To configure IP masquerading, I use:
|
|
<pre>
|
|
ipfw a m all from 192.168.2.0/24 to 0.0.0.0/0
|
|
ipfw a m all from 192.168.1.0/24 to 0.0.0.0/0
|
|
</pre>
|
|
<P>
|
|
These steps will automatically masquerade my Mac and any future computer I
|
|
add to either my LocalTalk segment or my Ethernet segment. If you don't
|
|
want to retype these lines each time you reboot your computer, add the
|
|
steps to one of the startup scripts executed from the /etc/rc.d
|
|
directory.
|
|
<P>
|
|
I will not describe setting up a PPP connection from my Linux box to my
|
|
ISP; good instructions are already provided in the Linux How-To documents.
|
|
When the PPP link is up and running and IP Masquerading is set up as
|
|
described, my routing table (obtained by typing "route -n") looks like:
|
|
<pre>
|
|
Destination Gateway Genmask Iface
|
|
207.96.96.102 * 255.255.255.255 ppp0
|
|
192.168.2.0 * 255.255.255.0 eth0
|
|
192.168.1.0 192.168.2.1 255.255.255.0 eth0
|
|
127.0.0.0 * 255.0.0.0 lo
|
|
default 207.96.96.102 * ppp0
|
|
</pre>
|
|
|
|
<A name="oper"></A>
|
|
<H3>V. Operations</H3>
|
|
<P>
|
|
My setup works great! I can initiate a PPP connection to my ISP by
|
|
logging into my Linux box, either by walking down the basement, or
|
|
telnetting to the Linux box from my Mac. Best of all, thanks to IP
|
|
Masquerading, my wife and I can now both use the Internet at the same time!
|
|
<P>
|
|
With my new LAN setup, my Internet programs (e.g. my web browser) run
|
|
slightly faster now because my Mac no longer has to simultaneously maintain
|
|
a modem connection and run MacPPP. Further, when I have to reboot my Mac
|
|
(yes, it does happen occasionally with Macs) I don't have to redial my ISP
|
|
because the connection is maintained by my Linux box; as soon as I reboot,
|
|
I'm back online.
|
|
|
|
<A name="final"></A>
|
|
<H3>VI. Final Comments</H3>
|
|
|
|
<H4>Things to Try</H4>
|
|
<P>
|
|
I have not tried to optimize the performance of my Mac-Linux LAN. However,
|
|
since Ethernet packets can be almost 3 times larger than LocalTalk packets,
|
|
one thing to try is to move the burden of reducing the packet size from the
|
|
router to the Linux box by reducing the MTU parameter of the Linux Ethernet
|
|
interface. (For example, to change the MTU size to 500, type "ifconfig
|
|
eth0 mtu 500.") Another interesting thing to try is IRQTUNE which lets you
|
|
give the serial port on the Linux box higher processing priority so that it
|
|
has less chance of dropping packets (http://www.best.com/~cae/irqtune). I
|
|
have not tried IRQTUNE yet, but it might be a good thing to run for anyone
|
|
using a modem with a Linux box.
|
|
<P>
|
|
One of the things I'd like to try is accessing my Linux box using X-server
|
|
software on my Mac. I'll have to make sure that the X-server software can
|
|
run over LocalTalk.
|
|
|
|
<H4>Summary</H4>
|
|
<P>
|
|
This article has described a low cost way of creating a Mac - Linux
|
|
network at home. I hope that Mac, DOS, and Linux users have all found
|
|
something of interest in the setup I've described.
|
|
<P>
|
|
I would be happy to hear from anyone with comments or questions.
|
|
|
|
<!--===================================================================-->
|
|
<P> <hr> <P>
|
|
<center><H5>Copyright © 1998, Dr. Richard L. Dubs <BR>
|
|
Published in Issue 26 of <i>Linux Gazette</i>, March 1998</H5></center>
|
|
|
|
<!--===================================================================-->
|
|
<P> <hr> <P>
|
|
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
|
|
ALT="[ TABLE OF CONTENTS ]"></A>
|
|
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
|
|
ALT="[ FRONT PAGE ]"></A>
|
|
<A HREF="./kapok/kapok-nonote.html"><IMG SRC="../gx/back2.gif"
|
|
ALT=" Back "></A>
|
|
<A HREF="./ayers.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
|
<P> <hr> <P>
|
|
|
|
<H4>
|
|
"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
|
</H4>
|
|
|
|
<P> <HR> <P>
|
|
<!--===================================================================-->
|
|
|
|
<center>
|
|
<H1>Tcd and Gtcd</H1>
|
|
<h4>by <a href="mailto: layers@marktwain.net">Larry Ayers</a></h4>
|
|
</center>
|
|
<P> <HR> <P>
|
|
|
|
|
|
<center><h3>Introduction</h3></center>
|
|
|
|
<p>CD-players for Linux abound these days, with both curses-based console
|
|
programs and X programs available in a variety of degrees of usefulness,
|
|
complexity, and polish. There are even command-line players, though with the
|
|
current CDROM drives (with their built-in controls) a player is no longer
|
|
strictly necessary. The main advantage of using a dedicated CD-player program
|
|
is the possibility of using a database containing titles and track names,
|
|
as well as play-lists, auto-repeating and other user conveniences.
|
|
|
|
<p>Xmcd is one of the more popular X-windows players; it's a freely
|
|
available program but does require the proprietary Motif libs for compilation
|
|
from source, though statically-linked binaries are available. One reason for
|
|
its popularity is the internet database of CD titles and tracklists which is
|
|
accessible from within the program. This database is remarkably complete, and
|
|
once you start using it only the most obscure titles should ever have to be
|
|
entered manually. This database project has really mushroomed; originally Ti
|
|
Kan (author of Xmcd) created the database format for use in his program, and
|
|
distributed database files made up of user contributions. The files began to
|
|
become excessively large and cumbersome, so the idea of making them
|
|
directly accessible via the internet arose. Ti Kan recruited Steve Scherf to
|
|
write a protocol which would make possible quick retrieval of individual
|
|
queries, and Steve found sites which agreed to become servers. There are now
|
|
CDDB servers distributed across the planet, and the databases are even
|
|
accessible from behind firewalls from many HTTP servers. Information on
|
|
incorporating the protocol into a CD-player program is available from
|
|
<a href="http://www.cddb.com">the cddb website</a>; this material is freely
|
|
available, and assistance is offered for freeware and shareware developers.
|
|
|
|
<p>Unfortunately, I never have been able to get Xmcd to work consistently on
|
|
my system; there is something in the way my ATAPI drive works which causes
|
|
problems. Xmcd was originally written with SCSI drives in mind, and although
|
|
ATAPI IDE drive support has been added it didn't seem to care for my drive's
|
|
peculiarities.
|
|
|
|
<center><h3>Tcd and Gtcd</h3></center>
|
|
|
|
<p>I've been using Tim Gerla's simple but useful console-mode player tcd for
|
|
several months, and have become quite adept at quickly typing in disc and
|
|
track information. Recently Tim introduced a new version. and after unpacking
|
|
it I was surprised and pleased to see that not only had he produced a
|
|
GTK-based X version, but the program now supports the CDDB protocol. So one
|
|
day I was on the internet, downloading some beta software, and started up the
|
|
new tcd version. I was playing a disc which I hadn't entered into the
|
|
program's database, and I happened to see a notice on the screen which said
|
|
"[D] Download CDDB data". I gave it a try, thinking that it would probably
|
|
take awhile, and that the particular CD I was playing probably wasn't even
|
|
listed. Within two seconds the title and track data was displayed on the
|
|
screen, which startled and impressed me.
|
|
|
|
<p>This newly released version, 2.0b, is a beta, though I haven't encountered
|
|
any but the most minor bugs. The GTK version doubtless will be revised, as
|
|
GTK is still under active development. Here's a screenshot of the interface:
|
|
<br>
|
|
<center><p><img alt="Gtcd" src="./gx/ayers/gtcd.gif"></center>
|
|
|
|
<p>It's a nice-looking interface, with that distinctive GTK look made familiar
|
|
by the Gimp. When the CDDB button is clicked a window opens with the default
|
|
server and port displayed in entry fields, which can then be edited depending
|
|
on your location. A convenient drop-down menu of track titles (invoked by
|
|
clicking the <em>Goto</em> button) is a feature not found on many players.
|
|
|
|
<p>Most of tcd's features can be found on other X-windows players, though the
|
|
only others which are CDDB-enabled (as far as I know) are Xmcd and the KDE
|
|
CD-player Kscd, written by Johannes Wuebben. The last-mentioned is a very
|
|
usable and well-done application, but requires the KDE and Qt libraries in
|
|
order to function. Gtcd only needs gtk+-0.99.3, which is also needed by the
|
|
Gimp.
|
|
|
|
<p>An unusual feature is the existence of both console and X executables which
|
|
share the same features, configuration, and database. I use X about
|
|
two-thirds of the time, shutting it down when I'm compiling large applications
|
|
or just writing in an editor, and it's nice to be able to use the same
|
|
CD-player in each environment.
|
|
|
|
<center><h3>Availability</h3></center>
|
|
|
|
<p>As I write this, the source and binary distributions are still in the
|
|
incoming directory at <a href="ftp://sunsite.unc.edu/pub/Linux/Incoming"
|
|
>Sunsite</a>, with the filenames prefixed by tcd-2.0b; an alternate site is
|
|
<a href="http://flow.ml.org/tcd/">here</a>.
|
|
|
|
<!--===================================================================-->
|
|
<P> <hr> <P>
|
|
<center><H5>Copyright © 1998, Larry Ayers <BR>
|
|
Published in Issue 26 of <i>Linux Gazette</i>, March 1998</H5></center>
|
|
|
|
<!--===================================================================-->
|
|
<P> <hr> <P>
|
|
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
|
|
ALT="[ TABLE OF CONTENTS ]"></A>
|
|
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
|
|
ALT="[ FRONT PAGE ]"></A>
|
|
<A HREF="./dubs.html"><IMG SRC="../gx/back2.gif"
|
|
ALT=" Back "></A>
|
|
<A HREF="./kunz.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
|
<P> <hr> <P>
|
|
|
|
<H4>
|
|
"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
|
</H4>
|
|
|
|
<P> <HR> <P>
|
|
<!--===================================================================-->
|
|
|
|
<center>
|
|
<h1>Setting up Your In-Home (or In-Office) Network</h1>
|
|
<H4>By <a href="mailto:tkunz@redeemer.rutgers.edu">Tom Kunz</a></H4>
|
|
</center>
|
|
<P> <HR> <P>
|
|
<H3>Contents:</H3>
|
|
<ul>
|
|
<li><a HREF="./kunz.html#intro">What Does This Article Cover?</A>
|
|
<li><a HREF="./kunz.html#begin">Before You Begin - Have a Working
|
|
Network!</A>
|
|
<li><a HREF="./kunz.html#config">Configuring Your Local Network</A>
|
|
<li><a HREF="./kunz.html#diald">Installing diald</A>
|
|
<li><a HREF="./kunz.html#pppd">Installing pppd</A>
|
|
<li><a HREF="./kunz.html#kernel">Kernel Configuration</A>
|
|
<li><a HREF="./kunz.html#fire">Configuring IP Forwarding Firewall</A>
|
|
<li><a HREF="./kunz.html#pppd2">Configuring pppd</A>
|
|
<li><a HREF="./kunz.html#diald2">Configuring diald</A>
|
|
<li><a HREF="./kunz.html#time">Setting Time-Outs and Other Options</A>
|
|
<li><a HREF="./kunz.html#app">Application Notes</A>
|
|
<li><a HREF="./kunz.html#final">Conclusion</A>
|
|
</ul>
|
|
|
|
<A name="intro"></A>
|
|
<h3>What Does This Article Cover?</h3><br>
|
|
<P>
|
|
Well, this article covers a couple of topics that you've probably seen
|
|
discussed before in <i>Linux Gazette</i> and/or <i>Linux Journal</i>.
|
|
Let's say you have 2 or more computers, maybe in an office, maybe at
|
|
home, and you want to have one of them be the "gateway" for the
|
|
other(s). If your ISP charges by the minute (or in 5/10/15 minute
|
|
increments), which many of them do for corporate accounts, then you
|
|
don't want to spend excessive amounts of time on the line to your ISP.
|
|
You also don't want to risk <b><i>forgetting</i></b> that you are
|
|
connected and running up a bill while doing nothing! So what you want
|
|
is a way to get your local network onto and off of the Internet with
|
|
ease, and with a minimum of extraneous cost. This includes
|
|
demand-dialing, IP forwarding, IP Masquerading, PPP configuration, and
|
|
some basics of networking. Sounds like a lot (and believe me, it
|
|
<b><i>can be</i></b>!), but it's not so bad when you find out that,
|
|
for
|
|
the most part, you don't necessarily <i>need</i> all the power and
|
|
flexibility that the packages involved in this setup have.<p>
|
|
|
|
Please note that while I will be detailing how to set up your Internet
|
|
gateway in Linux, that does not imply that your entire network needs
|
|
to be running Linux. You can have one Linux box acting as the
|
|
gateway, while the rest of the network is a mix of other platforms.
|
|
You can have any kind of hardware and software on the network,
|
|
provided that the systems have a TCP/IP stack. Any mix of DOS, Mac,
|
|
Win95, or unix workstation can be applied to a network configured in
|
|
this way.<p>
|
|
|
|
This kind of arrangement is extremely useful for a number of reasons.
|
|
If WWW browsers are going to be used heavily, this kind of network is
|
|
ideal. WWW browsers open transient TCP connections for operation,
|
|
which download chunks of information in spurts, usually not remaining
|
|
connected for more than a few seconds. While someone reads a web
|
|
page, the browser generates no (or very little) network traffic, thus
|
|
leaving the connection idle, and allowing someone else to share the
|
|
unused bandwidth to full potential. Another reason for installing
|
|
this kind of arrangement is so that users don't tie up valuable phone
|
|
lines for extended periods. Recently, I installed a similar
|
|
arrangement for a small company whose employees were frequently on the
|
|
Internet from their PC's, each using their own phone line at their
|
|
desk. Of the few and costly phone lines they had, usually half of
|
|
them were doing dial-up connections, while the other half could handle
|
|
voice calls. By the arrangement that I prescribe here, they limited
|
|
it to one phone line, and everybody was able to access the Internet
|
|
while using the phone line at their desk for voice.<p>
|
|
|
|
To describe what I've done here, I'm working from the reference frame
|
|
of having installed a fresh copy of Red Hat 4.2, with the option of
|
|
installing everything set. From what I've seen, 5.0 isn't incredibly
|
|
different (for this stuff, anyway), and I'll also be pointing out the
|
|
differences between setting this up on Red Hat and setting this up on
|
|
Slackware 3.3.<p>
|
|
|
|
|
|
<A name="begin"></A>
|
|
<h3>Before You Begin - Have a Working Network!</h3><br>
|
|
<P>
|
|
First and foremost, I would recommend some other documents for your
|
|
perusal before engaging in setting up a working LAN. These would be:
|
|
<ul>
|
|
<li><a href="http://www.linuxresources.com/LDP/LDP/nag/nag.html">The
|
|
Network Administrator's Guide</a>
|
|
<li><a
|
|
href="http://www.linuxresources.com/LDP/LDP/sag/index.html">Linux
|
|
System Administrator's Guide</a>
|
|
<li><a
|
|
href="http://www.linuxresources.com/LDP/HOWTO/NET-3-HOWTO.html">NET-3-HOWTO,
|
|
Linux Networking</a>
|
|
<li><a
|
|
href="http://www.linuxresources.com/LDP/HOWTO/Ethernet-HOWTO.html">Ethernet-HOWTO,
|
|
the details about ethernet hardware for Linux</a>
|
|
</ul>
|
|
In order to set up a home or office network with a dial-up gateway,
|
|
you first need to have a local area network (LAN) working correctly.
|
|
I would recommend you read over the above documents in some detail as
|
|
you attempt to get your network going. The exact type of network card
|
|
you use is not important to the discussion of the text, but if asked,
|
|
I would recommend ISA cards, either 16- or 8-bit, in order to cut your
|
|
teeth on networking. They provide the least hassles and have been
|
|
well supported by Linux for years. My personal favorites are the
|
|
SMC/WD 80*3 cards, but virtually all legacy ISA cards (non-PnP,
|
|
jumper-configurable cards) should work. See the documentation listed
|
|
above for exact details on making your network run.<p>
|
|
|
|
<A name="config"></A>
|
|
<h3>Configuring Your Local Network</h3><br>
|
|
<P>
|
|
I will be using the term "Linux gateway" or "gateway" to denote the
|
|
machine on your network which will be running Linux and actually have
|
|
the modem and will be performing the connections to the outside world
|
|
for your network.<p>
|
|
|
|
Networks for small offices or within a home are generally not in
|
|
registered domains. If you are setting up a connection for an office
|
|
which <i>is</i> in a registered domain with an IP address which is
|
|
part of the Internet (ie, not one of the reserved network numbers for
|
|
private use), then you will need to configure your network according
|
|
to that registered domain and IP address block which you have been
|
|
allocated by InterNIC. If you don't know what I'm talking about, then
|
|
you want to use one of the "reserved" network numbers that are set
|
|
aside for private usage. The network number which I will use will be
|
|
"192.168.1.0", which I have configured for my home usage. Because
|
|
it's reserved, I know that all my packets will not conflict with
|
|
anyone on the Internet, since all packets destined for reserved
|
|
addresses are dropped by your ISP's routers, and the main backbone
|
|
routers on the Internet.<p>
|
|
|
|
Note that the steps I describe here are often done in parallel with
|
|
the previous section on "Have a Working Network". Once you've
|
|
selected a reserved IP address block for your network, you need to
|
|
configure your hardware to be recognized and give the appropriate
|
|
parameters to the software. I recommend setting the gateway's address
|
|
to the ".1" node number of your network. It's not a law, but it's
|
|
commonly accepted and easy to remember. For example, if you are using
|
|
192.168.1.0 as your network, then 192.168.1.1 will be your Linux
|
|
gateway. Then have the other systems on the network numbered as
|
|
192.168.1.2 through 192.168.1.254. Some administrators like to have
|
|
their nameserver for the LAN set up as ".254", but if you only have a
|
|
few machines on your network, you're not likely to need or want a
|
|
nameserver.<p>
|
|
|
|
Selecting a domain name doesn't deserve a huge amount of thought.
|
|
It's just a matter of coming up with something that is easy to
|
|
remember, describes your network, and will not conflict with any
|
|
registered domain names. The extensions of ".com", ".org", and
|
|
".edu", as well as country abbreviations (".de", ".uk", ".au", etc.)
|
|
are off-limits. Just don't use anything that looks like a typical
|
|
address, and you'll be ok. For example, my local network at home is
|
|
the domain of "kunz.home". There's no domain out there belonging to
|
|
".home", so it's OK. Or if you want to set up an office network for
|
|
"ACME Inc.", then you might try "acme.office" as your domain name.<p>
|
|
|
|
The network parameters can be set up in Linux either while performing
|
|
the initial installation or after the installation has been done. If
|
|
you decide that you would like to have your gateway named "linux-gw",
|
|
and that you want your domain to be "smith.home", you will not have
|
|
any conflicts with names outside of your network. If you are using
|
|
192.168.1.0 as your network number, then the parameters for networking
|
|
should look like this:
|
|
<ul>
|
|
<li>Host Name: linux-gw
|
|
<li>Domain Name: smith.home
|
|
<li>IP Address: 192.168.1.1
|
|
<li>Netmask: 255.255.255.0
|
|
<li>Broadcast: 192.168.1.255
|
|
<li>Default Gateway:
|
|
<li>Primary Nameserver: (IP address of your ISP's primary nameserver)
|
|
<li>Secondary Nameserver: (IP address of your ISP's secondary
|
|
nameserver)
|
|
<li>Tertiary Nameserver: (IP address of your ISP's tertiary
|
|
nameserver)
|
|
</ul>
|
|
|
|
Note: Not all TCP/IP implementations will ask for or be configurable
|
|
for more than one or two nameservers. Just ignore the "secondary" and
|
|
"tertiary" fields if that's the case.<p>
|
|
|
|
Also, notice that it's important to leave the default gateway
|
|
<i><b>empty!</b></i> The routing tables will be modified by diald,
|
|
which will be discussed later.<p>
|
|
|
|
On "linux-gw", you should make/edit the /etc/hosts file. It should
|
|
contain the IP addresses and names of all the machines on the
|
|
network. Let's say you will have 4 machines on the network besides
|
|
the Linux gateway. You might, conceivably, have an /etc/hosts file
|
|
that looks something like this:
|
|
<pre>
|
|
127.0.0.1 localhost localhost.localdomain
|
|
192.168.1.1 linux-gw.smith.home linux-gw
|
|
192.168.1.2 winchester.smith.home winchester
|
|
192.168.1.3 ruger.smith.home ruger
|
|
192.168.1.4 browning.smith.home browning
|
|
192.168.1.5 mossberg.smith.home mossberg
|
|
</pre>
|
|
By doing this, the Linux gateway knows the names of all the machines
|
|
on the network. This should also be done on any unix workstations or
|
|
other Linux machines you have on the network. On Slackware
|
|
installations, you'll need to edit this by hand. On Red Hat, you can
|
|
use the "netcfg" program under X to modify the "Hosts" entry.<p>
|
|
|
|
On each of the other machines in the network, you will need to
|
|
configure their parameters as follows. Be sure not to duplicate IP
|
|
addresses between different machines! The following sample entry is
|
|
for a client on the "smith.home" network named "winchester".
|
|
<ul>
|
|
<li>Host Name: winchester
|
|
<li>Domain Name: smith.home
|
|
<li>IP Address: 192.168.1.2
|
|
<li>Netmask: 255.255.255.0
|
|
<li>Broadcast: 192.168.1.255
|
|
<li>Default Gateway: 192.168.1.1
|
|
<li>Primary Nameserver: (IP address of your ISP's primary nameserver)
|
|
<li>Secondary Nameserver: (IP address of your ISP's secondary
|
|
nameserver)
|
|
<li>Tertiary Nameserver: (IP address of your ISP's tertiary
|
|
nameserver)
|
|
</ul>
|
|
|
|
Now, notice basically only one major change: the default gateway.
|
|
When any of the machines on the network send out packets, we want them
|
|
to route them through 192.168.1.1, which is your Linux gateway. As
|
|
the gateway for the rest of the network, Linux will decide where
|
|
packets get sent. You should configure all the machines on the
|
|
network with the above paramters, changing only the host name and the
|
|
IP address for each. Any TCP/IP-capable platform should have the
|
|
provisions to be configured as above, save only possibly for the
|
|
secondary and tertiary nameserver portion. Note that it's also quite
|
|
possible that your ISP will only provide one or two nameservers, and
|
|
that the third is unlikely to be filled, most of the time.<p>
|
|
|
|
If you are configuring a Slackware Linux machine as your gateway
|
|
<i>after</i> installation, the appropriate way to change the network
|
|
parameters is to run the program "netconfig" as root. You will be
|
|
prompted for the network parameters one at a time, and should follow
|
|
the "linux-gw" listing above. Under Red Hat, you should run the
|
|
"netcfg" program from X while root. This provides a graphical tool
|
|
for doing the same thing. Running "control-panel" as root in Red Hat
|
|
provides an X front-end to many of the administrative tasks, including
|
|
networking.<p>
|
|
|
|
By the time you get this far, you should have a working network, where
|
|
you can telnet from any of the machines on your network into the Linux
|
|
gateway.<p>
|
|
|
|
<A name="diald"></A>
|
|
<h3>Installing diald</h3><br>
|
|
<P>
|
|
The package that we will be using for performing the automatic
|
|
dialling is "diald". This assumes that you have a modem which Linux
|
|
is already aware of. If not, you need to consult your installation
|
|
documentation and the incredibly useful <a
|
|
href="http://www.linuxresources.com/LDP/linux.html">Linux
|
|
Resources</a> page<p>
|
|
|
|
Once you can verify that your modem is working ok and is recognized by
|
|
Linux correctly, we can configure diald to do the work for us. As a
|
|
note, I would like to say that I've had the least problems with
|
|
external modems and with non-PnP modems. These days, it's hard (if
|
|
possible at all) to find a non-PnP internal modem. If you absolutely
|
|
<i>have</i> to use a PnP modem, then I recommend getting the <a
|
|
href="http://www.sunsite.unc.edu/pub/Linux/system/hardware/isapnptools-1.11.tgz">isapnptools
|
|
package</a>
|
|
for initializing PnP configuration.<p>
|
|
|
|
First, you need to obtain and install diald. If not already installed
|
|
on your system, it's possible to obtain the <a
|
|
href="http://www.sunsite.unc.edu/pub/Linux/system/network/serial/diald-0.16.tar.gz">
|
|
code</a> from Sunsite. If you have Red Hat, you can find the binary
|
|
distribution in RPM format on your Red Hat 4.2 CDROM. It is located
|
|
in /[mountpoint]/RHSCont/i386/diald-0.16-3.i386.rpm. The file
|
|
diald-config-0.1-1.i386.rpm is found in the same directory, and I
|
|
recommend you install it, since it contains some sample configurations
|
|
that may be useful to you. Under Red Hat 5.0, I was unable to find it
|
|
on the 2-CDROM distribution set from Red Hat, so the latest version of
|
|
diald should be <a
|
|
href="http://www.sunsite.unc.edu/pub/Linux/system/network/serial/diald-0.16.tar.gz">
|
|
downloaded from Sunsite</a>. The same goes for Slackware. Download
|
|
the pacakge and follow the build instructions included. [LG HTML
|
|
note: if you find those links are broken by the time you read this,
|
|
you should be able to browse <a
|
|
href="http://www.sunsite.unc.edu/pub/Linux/system/network/serial/">
|
|
http://www.sunsite.unc.edu/pub/Linux/system/network/serial/</a> to
|
|
find the current version of diald]<p>
|
|
|
|
<A name="pppd"></A>
|
|
<h3>Installing pppd</h3>
|
|
<P>
|
|
Once you have diald installed, we need to install pppd. This comes up
|
|
in both Slackware and Red Hat 4.2/5.0 as packages that are selected
|
|
for installation if you install everything. If it is not installed,
|
|
it can be found on your Red Hat 4.2 CD in
|
|
/[mountpoint]/RedHat/RPMS/ppp-2.2.0f-3.i386.rpm. If you have RedHat
|
|
5.0, you will find it on the first CD of the set, in
|
|
/[mountpoint]/RedHat/RPMS/ppp-2.2.0f-5.i386.rpm. Slackware contains
|
|
the ppp.tgz package at or around floppy N3 or
|
|
/[mountpoint]/slakware/n3. If you don't have it installed on your
|
|
Linux gateway already, you may need to <a
|
|
href="http://www.sunsite.unc.edu/pub/Linux/system/network/serial/ppp/ppp-2.2.0g.tar.gz">download</a>
|
|
the source for it from Sunsite. Basically, just follow the build
|
|
instructions and install it via the Makefile.
|
|
|
|
<A name="kernel"></A>
|
|
<h3>Kernel Configuration</h3>
|
|
<P>
|
|
Now you have diald and pppd installed, but you may not have any
|
|
support for IP Masquerading, which is an absolute MUST for this kind
|
|
of networking scheme. If you are using a stock Red Hat 5.0 kernel,
|
|
you will be fine, as just about everything is compiled as a module.
|
|
IP forwarding will be provided on-demand by kernel module loader, as
|
|
long as you have modified /etc/sysconfig/network (see "Configuring IP
|
|
Forwarding Firewall", below). If you're using a stock kernel that
|
|
came with Slackware, you probably don't have support for the IP
|
|
Masquerading ready. If you installed everything as I recommend in the
|
|
beginning, you'll have the kernel sources already on your Linux
|
|
gateway. But if not, you can download the source code for <a
|
|
href="http://www.sunsite.unc.edu/pub/Linux/kernel/v2.0/linux-2.0.33.tar.gz">kernel
|
|
2.0.33</a> from Sunsite. Be patient! It's a 6M file!<p>
|
|
|
|
Just untar it in your /usr/src directory, and the do the following:
|
|
<ol>
|
|
<li>cd /usr/src/linux
|
|
<li>If you are in X, type "make xconfig". Otherwise, just "make
|
|
config".
|
|
<li>You will need to set several options in the "Networking Options"
|
|
section of the configuration. You should say "Y" to:
|
|
<ul>
|
|
<li>Network firewalls
|
|
<li>TCP/IP networking
|
|
<li>IP: forwarding/gatewaying
|
|
<li>IP: firewalling
|
|
<li>IP: masquerading
|
|
<li>IP: ICMP masquerading
|
|
</ul>
|
|
<li>Note that you need not configure any of the logging/accounting
|
|
features. Most users won't need that. Only configure it if you know
|
|
why you are doing it. I won't mention anything substantial about
|
|
accounting or logging features in this article.
|
|
|
|
<li>When you've configured all your hardware the way it should be, you
|
|
will want to click on "Save & Exit" if you're running "make xconfig".
|
|
If you need help determining how your kernel should be set up, you
|
|
need to consult the resources at <a
|
|
href="http://www.linuxresources.com/">Linux Resources</a> to find out
|
|
how to best compile your kernel to support all your hardware
|
|
correctly.
|
|
|
|
<li>If you are <i>reasonably</i> certain your kernel configuration is
|
|
correct, you will type in "make dep ; make clean ; make zlilo". If
|
|
you
|
|
are compiling in loadable module support for certain items, you will
|
|
want to also do "make modules ; make modules_install" after "make
|
|
zlilo" finishes. If "make zlilo" finishes with saying something about
|
|
the kernel being too big (usually a result of trying to compile too
|
|
many drivers into the kernel directly, rather than as modules), then
|
|
you will want to try "make bzlilo", which allows for larger kernel.
|
|
<li>When you complete the previous step, you will want to reboot the
|
|
machine so that the new kernel can take over. Provided you configured
|
|
your kernel correctly, you'll be booting up a system capable of IP
|
|
forwarding and masquerading!
|
|
</ol>
|
|
|
|
<A name="fire"></A>
|
|
<h3>Configuring IP Forwarding Firewall</h3>
|
|
|
|
<P>
|
|
The next step along the path to having a Linux machine that can act as
|
|
a gateway to the Internet is to configure IP forwarding. IP
|
|
forwarding can be a very complicated and involved thing, however, to
|
|
act as a simple gateway and firewall to the Internet, all we need to
|
|
do is configure the forwarding rules so that packets of all types
|
|
found on the ethernet interface are copied onto ppp interface.<p>
|
|
|
|
Please be aware that you should be fully informed of the security
|
|
concerns of this. I recommend that you read some materials on
|
|
security, keep a copy of <a
|
|
href="http://www.sunsite.unc.edu/pub/Linux/system/network/admin/satan-1.1.1.linux.fixed2.tgz">SATAN</a>
|
|
handy, and consult some security experts if you worry about security.
|
|
If you have a dial-up service to a local ISP, there is a lower
|
|
probability that you will be hacked on than if you are using a
|
|
university as your ISP. College kids aren't necessarily malicious,
|
|
but they can be deemed a security risk, as they are usually more
|
|
"inquisitive" than the typical Windoze 95 user at home who happens to
|
|
be a customer of your local ISP. Don't take me as Gospel Truth, check
|
|
into it for yourself and find out the issues about security if it is
|
|
something you want to know about.<p>
|
|
|
|
The first thing to have is the ipfwadm package installed on your
|
|
system. If you have it already installed and your kernel has been
|
|
compiled in the previous step to support packet forwarding, then
|
|
you're set, and you can move onto the actual configuration of the
|
|
firewall. If you are using Red Hat 4.2, the package can be found at
|
|
/[mountpoint]/RedHat/RPMS/ipfwadm-2.3.0-2.i386.rpm. If you are using
|
|
Red Hat 5.0, you should find it on the first CD of the set, in
|
|
/[mountpoint]/RedHat/RPMS/ipfwadm-2.3.0-5.i386.rpm. If you're using
|
|
Red Hat, you will note that you'll also have to modify the file
|
|
/etc/sysconfig/network, making the line containing "FORWARD_IPV4" to
|
|
say "FOWARD_IPV4=true". For Slackware, you should find installed in
|
|
the base TCP/IP package (N6, "tcpip.tgz"), so if you have TCP/IP
|
|
networking installed, it should already be there. If you need to
|
|
download it, the source can be found at its <a
|
|
href="http://www.xos.nl/linux/ipfwadm/">home page</a>.<p>
|
|
|
|
Once you have the package installed, you need to know how to use it!
|
|
Depending on how secure you would like it to be, you can make a few
|
|
changes to what I have here. What you want to do is flush the table
|
|
of all previous firewall forwarding entries, set a default policy for
|
|
either accepting or rejecting packets, and then tell it how to forward
|
|
packets between different interfaces. For example, the following
|
|
script will flush all forwarding rules, set the default policy to
|
|
"accept" packets, and will forward packets between all of the
|
|
available interfaces:
|
|
|
|
<pre>
|
|
#!/bin/sh
|
|
ipfwadm -F -f
|
|
ipfwadm -F -p accept
|
|
ipfwadm -F -a m -S 192.168.1.0/24 -D 0.0.0.0/0
|
|
</pre>
|
|
|
|
We can view the IP forwarding rules by issuing the command "ipfwadm -F
|
|
-l -n", which will list the rules numerically. If we do that, we will
|
|
get output looking like this:
|
|
<pre>
|
|
IP firewall forward rules, default policy: accept
|
|
type prot source destination ports
|
|
acc/m all 192.168.1.0/24 0.0.0.0/0 n/a
|
|
</pre>
|
|
|
|
This tells us that any packets going from our network to anything
|
|
other than just our network will be forwarded between all of the
|
|
interfaces. Now, if we specify an additional "-e" option to the
|
|
previous command, we get extended output of the forwarding rules.
|
|
This is to our advantage, but you should have a 132 character wide
|
|
screen when you run it. Here is a sample output:
|
|
<pre>
|
|
IP firewall forward rules, default policy: accept
|
|
pkts bytes type prot opt tosa tosx ifname ifaddress source
|
|
destination ports
|
|
113 9452 acc/m all ---- 0xFF 0x00 any any
|
|
192.168.1.0/24 anywhere n/a
|
|
</pre>
|
|
|
|
Thus, we can see that even though IP forwarding can be incredibly
|
|
complicated and selective, we can write a simple script which will do
|
|
all the work for us and establish a forwarding firewall.<p>
|
|
|
|
If you read the manpage for ipfwadm, you will find that the -W option
|
|
may be used to specified. For simple situations and a simple network
|
|
in a generally trusted environment, the -W option isn't necessary,
|
|
because you are probably interested in having <i>all</i> interfaces
|
|
able to see <i>all</i> packets. However, if you are interested in
|
|
keeping certain interfaces from receiving packets, you may use the -W
|
|
option for security.<p>
|
|
|
|
<A name="pppd2"></A>
|
|
<h3>Configuring pppd</h3>
|
|
<P>
|
|
The first thing we want to do is configure pppd, because it's often
|
|
easier to test out than diald. To do this, we want to create a chat
|
|
script, which will dialog with the ISP, and establish the connection.
|
|
You will want to read the man page for "chat" first, but here is an
|
|
example of a chat script I use:
|
|
|
|
<pre>
|
|
REPORT CONNECT ABORT BUSY '' atdt5551212 CONNECT '' : tkunz : PaSsWoRd
|
|
action ppp
|
|
</pre>
|
|
|
|
>From the manpage:<br>
|
|
|
|
<pre>
|
|
This sequence will expect nothing; and then send the
|
|
string ATDT5551212 to dial the telephone. The expected
|
|
string is CONNECT. If the string CONNECT is received the
|
|
remainder of the script is executed. In addition the pro-
|
|
gram will write to the expect-file the string "CONNECT"
|
|
plus any characters which follow it such as the connection
|
|
rate.
|
|
</pre>
|
|
|
|
First, the script will report what the modem returns after "CONNECT"
|
|
into the report file, to be analyzed later, in order to diagnose what
|
|
could have gone wrong with the dial-up. The ABORT string means to
|
|
abort the script should it see the "BUSY" string returned by the
|
|
modem. After that, this script will diald "555-1212" as the phone
|
|
number, and wait for the CONNECT message to come back from the remote
|
|
end. It will then wait for a colon (":"), and reply with "tkunz". It
|
|
will wait for another color (":"), and reply with "PaSsWoRd". When
|
|
the string "action" is received from the remote end, it replies with
|
|
"ppp" and the chat script terminates. Chat will then pass control
|
|
back to the program that called it. But here's another script that
|
|
will work fine, provided we don't need the "REPORT" error checking,
|
|
and we don't ever expect to get a busy signal:
|
|
|
|
<pre>
|
|
atz OK atdt5551212 CONNECT name: tkunz word: PaSsWoRd action: ppp
|
|
</pre>
|
|
|
|
This one will do the same thing, only it will initialize the modem to
|
|
the default setting by issuing "atz" first, and instead of expecting
|
|
only a colon, it waits for "name:" and "word:" to be received before
|
|
issuing "tkunz" and "PaSsWoRd", respectively, to the remote end.<p>
|
|
|
|
These simple one-line scripts like the above examples can be used with
|
|
chat to automate the login procedure with your ISP.<p>
|
|
|
|
pppd uses chat to establish a connection, and then when chat
|
|
terminates, pppd continues to dialog with the remote end, determining
|
|
its local and remote IP addresses, and then pppd follows the other
|
|
command line options to secure a reliable connection.<p>
|
|
|
|
To give you an idea of what a set of scripts would look like that
|
|
starts a PPP connection, here is a sample of something I use to
|
|
manually bring up a PPP connection to my ISP.<p>
|
|
|
|
The contents of a file in my own directory, named "startppp":
|
|
|
|
<pre>
|
|
#!/bin/sh
|
|
/usr/sbin/pppd /dev/cua3 115200 connect 'chat -f /etc/ppp/chatscript'
|
|
defaultroute crtscts proxyarp passive
|
|
</pre>
|
|
|
|
This tells pppd to use my modem, located on /dev/cua3 (COM4 in DOS),
|
|
at a speed of 115200, which my 33.6kbps modem can handle. The
|
|
"connect" parameter says to use the next quoted string as the
|
|
command-line which will connect pppd to the remote host.
|
|
<ul>
|
|
<li>
|
|
Note to programmers: pppd connects its stdin and stdout to the stdin
|
|
and stdout of the command-line specified by the "connect" option.
|
|
This is good to know, if chat doesn't work with your modem. This is
|
|
often the case with PCMCIA modems or some non-standard modems, so you
|
|
might decide to write a shell script incorporating "expect" and/or
|
|
other text utilities, or a Perl script that does the same. A chat
|
|
replacement is only required to use stdin and stdout to dialog with
|
|
the remote end and then exit by returning 0. See the "chat" manpage
|
|
for more details on termination codes.
|
|
</ul>
|
|
<P>
|
|
The option "defaultroute" tells pppd to modify the routing tables so
|
|
that this connection is added as a default route to the rest of the
|
|
world. The "crtscts" option tells pppd to use hardware flow control
|
|
for the modem, a MUST for modems faster than about 9600 baud.
|
|
"proxyarp" says to add an ARP entry for the local and remote systems
|
|
to the ARP table. The "passive" option tells pppd to be patient about
|
|
receiving LCP packets from the ISP. If pppd does not immediately
|
|
receive an LCP packet from the remote end, it drops carrier. I have
|
|
personally found this to be the "magic ingredient" to getting pppd
|
|
working with several different ISP's.
|
|
|
|
The contents of the file /etc/ppp/chatscript, used by "chat" in
|
|
"startppp":
|
|
|
|
<pre>
|
|
REPORT CONNECT ABORT BUSY '' atdt5551212 CONNECT '' : tkunz : PaSsWoRd
|
|
action ppp
|
|
</pre>
|
|
|
|
Substitute in your login name, password, and the command which starts
|
|
ppp (if any) for the appropriate fields in the
|
|
/etc/ppp/chatscript, and see what happens. You may need to
|
|
contact your ISP if you have never used pppd in Linux before to
|
|
establish a PPP connection, to determine if there are specific options
|
|
necessary to make and sustain a PPP connection. You can try the above
|
|
script and then watch the /var/log/messages file to see what happens.
|
|
You might need to modify your /etc/syslog.conf file to get the
|
|
messages printed to the right location if you use Red Hat. I prefer a
|
|
slightly modified Slackware /etc/syslog.conf, which is shown here:
|
|
|
|
<pre>
|
|
# /etc/syslog.conf
|
|
# Very Important! All whitespace are TABs, not " " (space) characters!
|
|
#
|
|
*.=info;*.=notice /var/log/messages
|
|
*.=debug /var/log/debug
|
|
*.warn /var/log/syslog
|
|
</pre>
|
|
|
|
After making this your syslog.conf file, you can do a "touch" on
|
|
/var/log/messages, /var/log/debug, and /var/log/syslog, restart
|
|
syslogd and watch the messages appear. Occaisonally, I've noticed
|
|
strangeness with syslogd not wanting to give up the previous
|
|
configuration, so you might find a reboot rather than just a restart
|
|
of syslogd is in order.<p>
|
|
|
|
Once you have syslogd logging the right level of messages to the
|
|
locations mentioned above, you can watch the progress of pppd from one
|
|
window or virtual console while you execute "startppp" from another.
|
|
By watching /var/log/messages (and possibly by watching the modem
|
|
lights if you have an external modem), you can determine if chat
|
|
succeeded or failed, or if the right options were specified to pppd.
|
|
As root, the command "tail -f /var/log/messages" will enable you to
|
|
see messages as they are dumped into /var/log/messages.<p>
|
|
|
|
By experimentation, you should be able to get a PPP connection started
|
|
by using these scripts and commands. Again, I mention that you might
|
|
have to call your ISP to find out if any special LCP or IPCP options
|
|
need to be set.<p>
|
|
|
|
<A name="diald2"></A>
|
|
<h3>Configuring diald</h3>
|
|
|
|
<P>
|
|
By this time, you should be able to regularly initiate a PPP link to
|
|
your ISP by executing "startppp", and you should be able to use web
|
|
browsers and the like to get onto the Internet from the other machines
|
|
on the network once you have the IP forwarding rules installed. The
|
|
next peice of the puzzle is diald. diald is designed as a
|
|
demand-dialer, meaning that when it senses that you want to get from
|
|
the local network out onto the Internet, it dials your ISP and sets up
|
|
the connection for you.<p>
|
|
|
|
The first thing to realize is that we are going to have to change the
|
|
way we think about pppd and chat for the moment. Before, in our
|
|
previous script in the section about configuring pppd, we had pppd
|
|
start up, then issue the "connect" command. After that occurred, pppd
|
|
would run according to the options we put on the command line. In
|
|
diald, we have to recognize that diald will be handling many of the
|
|
details that pppd handled before. These details include the dialing
|
|
script and options that would normally be passed to pppd. diald will
|
|
be responsible for implementing these things now, not pppd.<p>
|
|
|
|
What diald does is it creates a "virtual" interface, sl0, which is a
|
|
slip interface to nowhere. We will have it assign the IP address of
|
|
192.168.0.1 to sl0, and an IP address of 192.168.0.2 to the remote end
|
|
(basically <i>nothing!</i>) of the fake slip interface. Then it
|
|
creates a route so that traffic not intended for the local network
|
|
will go into sl0. When diald finds packets being copied onto sl0, it
|
|
realizes that those packets should go into the Internat, and starts
|
|
the dialing process. In order to make our particular network
|
|
arrangement work, we have to set up the IP forwarding to be
|
|
promiscuous, in a sense, in that it forwards between all interfaces,
|
|
including sl0. Thus, packets which are generated by one of the other
|
|
machines on the network will go into the Linux gateway, the IP
|
|
forwarding mechanism will copy them onto the sl0 interface if they are
|
|
not destined for only the local network, and then diald will take
|
|
over, starting the dialing process and pppd to bring up the link.<p>
|
|
|
|
The manpage of diald-examples should have been installed on your
|
|
system when you installed it. If you read that, you will probably
|
|
find your own situation there in the manpage, however, most of you
|
|
will probably find that it corresponds with the section named "A Leaf
|
|
Node with Dynamic Local Address using PPP". The following comes
|
|
directly from the diald-examples(5) manpage for this situation: <p>
|
|
<pre>
|
|
mode ppp
|
|
connect /etc/diald/connect
|
|
device /dev/ttyS1
|
|
speed 115200
|
|
modem
|
|
lock
|
|
crtscts
|
|
local 192.168.0.1
|
|
remote 192.168.0.2
|
|
dynamic
|
|
defaultroute
|
|
include /usr/lib/diald/standard.filter
|
|
</pre>
|
|
To start off with, you should have the above as your initial
|
|
/etc/diald.conf file. We will add options to it later.
|
|
|
|
At this point, please understand that diald has to know exactly where
|
|
to find the external programs of route, ifconfig, and pppd. This
|
|
article assumes that you have installed pppd, ifconfig, and
|
|
route into their default locations, which are:<p>
|
|
<pre>
|
|
/usr/sbin/pppd
|
|
/sbin/ifconfig
|
|
/sbin/route
|
|
</pre>
|
|
|
|
If for some reason you do not have them installed in the above
|
|
locations, please make links or move them to the appropriate
|
|
locations.<p>
|
|
|
|
Now we come to the part where we modify that initial /etc/diald.conf
|
|
file. First of all, we have created a working chat script in an
|
|
earlier part of this article, "Configuring pppd". Using that
|
|
information, we modify the lines starting with "connect ...", "device
|
|
..." and "speed ..." to reflect your configuration. If you followed
|
|
my directions exactly in "Configuring pppd" and have a 33.6kbps modem
|
|
on COM4 like I do, then you would get a diald.conf that looks like
|
|
this: <p>
|
|
<pre>
|
|
mode ppp
|
|
connect "chat -f /etc/ppp/chatscript"
|
|
device /dev/cua3
|
|
speed 115200
|
|
modem
|
|
lock
|
|
crtscts
|
|
local 192.168.0.1
|
|
remote 192.168.0.2
|
|
dynamic
|
|
defaultroute
|
|
include /usr/lib/diald/standard.filter
|
|
</pre>
|
|
|
|
Note that if you have a 28.8k, 33.6k, or 56k modem, your "speed ..."
|
|
line will look the same. If you're using a 14.4k, you'll most likely
|
|
have to use "speed 57600". Also, make sure you use the correct number
|
|
of the COM port. COM ports in DOS are one higher than the appropriate
|
|
cua number, since DOS starts numbering from "1" and unix tends to
|
|
number things starting from "0".<p>
|
|
|
|
One thing to note about the diald.conf file is the set of options
|
|
which would normally have been specified to pppd. According to the
|
|
diald manpage, you must <i>not</i> specify those as direct options to
|
|
pppd. This is one of those details handled only by diald. In our
|
|
original "startppp" script, we specified "... defaultroute crtscts
|
|
proxyarp passive". In our new situation, using diald instead of pppd
|
|
to manipulate those options, we need to set those here in diald.conf.
|
|
All but the "passive" option can be specified. Thus, we get a
|
|
diald.conf that looks like this: <p>
|
|
<pre>
|
|
mode ppp
|
|
connect "chat -f /etc/ppp/chatscript"
|
|
device /dev/cua3
|
|
speed 115200
|
|
modem
|
|
lock
|
|
crtscts
|
|
local 192.168.0.1
|
|
remote 192.168.0.2
|
|
dynamic
|
|
defaultroute
|
|
proxyarp
|
|
include /usr/lib/diald/standard.filter
|
|
</pre>
|
|
|
|
If we need to add the "passive" command to pppd to make it work with
|
|
your ISP correctly, then we can insert a new line into the above of
|
|
the form:<p>
|
|
<pre>
|
|
pppd-options passive
|
|
</pre>
|
|
|
|
The above diald.conf <i>should</i> get you started with a working
|
|
connection to your ISP. If not, you may need to consult your ISP's
|
|
technical support line to find out what they recommend.<p>
|
|
|
|
At this point, you should be able to start diald and watch the
|
|
messages in /var/log/messages appear which it generates upon start-up.
|
|
After diald starts, you should also be able to send packets from other
|
|
nodes of your network to the Internet, and then watch as diald
|
|
automatically dials out and establishes a connection. If not, go back
|
|
over the previous steps to find out what went wrong.<p>
|
|
|
|
|
|
<A name="time"></A>
|
|
<h3>Setting Time-Outs and Other Options</h3>
|
|
|
|
A very useful feature of diald is its ability to detect inactivity,
|
|
and then bring down the ppp link appropriately after a user-specified
|
|
amount of time. If you have a single phone line in your home, which
|
|
you need to use only in short spurts for dialing out, you'll enjoy
|
|
this feature. Or if you're a corporate entity who is charged on
|
|
5/10/15 minute increments, you can be sure that the link will go down
|
|
after a certain time of inactivity, keeping costs low.<p>
|
|
|
|
There are also important variables which are not associated with the
|
|
link uptime itself, but with the time that different portions of diald
|
|
take to execute or time-out. For example, if dialing your ISP and
|
|
passing the username, password and related actions take more than 60
|
|
seconds, typically, you will want to add a line to the file that says
|
|
something like:<p>
|
|
<pre>
|
|
connect-timeout 120
|
|
</pre>
|
|
|
|
Or, if you wish to have diald attempt a redial 10 times before giving
|
|
up and only wait 15 seconds to clear the modem between dials, you will
|
|
want to add in the following two lines:<p>
|
|
<pre>
|
|
retry-count 10
|
|
redial-timeout 15
|
|
</pre>
|
|
|
|
You may also wish to play with some of the other options that diald
|
|
has to offer. For example, one option that can be useful is
|
|
"two-way". This tells diald that if carrier is dropped while in
|
|
operation, that it will not retry dialing. What good is that? Well,
|
|
if you have to forcibly terminate the PPP connection to your ISP
|
|
(killing off pppd manually to free the line, physically pulling the
|
|
phone line connection, etc.) diald will not try to outsmart you and
|
|
dial again. If you have a somewhat dedicated line, and you are not
|
|
concerned about how long you are connected to your ISP, you won't need
|
|
that option very much, as you'll probably stay connected for longer
|
|
periods of time.<p>
|
|
|
|
If you are concerned with accounting for the time that is spent
|
|
online, then you will want to play with the "accounting-log ..."
|
|
option. The parameter to "accounting-log" should be the full pathname
|
|
of a file which will log the times when the link comes up and goes
|
|
down, and how much data was sent down the wire. But I said I wouldn't
|
|
spend any time talking about accounting and logging ...<p>
|
|
|
|
The diald manpage is rich with options, and I would recommend that you
|
|
read it in parallel with reading this article. Diald is wonderfully
|
|
configurable, and can meet a <b>wide</b> variety of needs, depending
|
|
on how complex of an arrangement you wish.<p>
|
|
|
|
|
|
<A name="app"></A>
|
|
<h3>Application Notes</h3>
|
|
<P>
|
|
OK! Now you can go to any node of your network, start up {Netscape,
|
|
IE, Arena, Mosaic, any browser} and get to somewhere out on the rest
|
|
of the Internet. However, why does it seem like sometimes your Linux
|
|
gateway almost randomly fires up a connection? What's it doing?<p>
|
|
|
|
Well, now you need to delve into the particular applications on your
|
|
network and how they're configured. Two of the big things to check
|
|
are mail client and web browsers which contain mail clients. If your
|
|
mail client makes requests for new mail, it will generate a packet
|
|
which goes to your gateway, and initiates a call. This means that
|
|
while the Internet connection is down, someone with a mail client up
|
|
and running somewhere on your local network can unwittingly cause the
|
|
gateway to establish a connection. This can be annoying and/or
|
|
costly, both for the typical home user and the corporation. I know
|
|
that I've accidentally done this to my wife on a number of occaisons,
|
|
where my gateway attempted to dial out while she was on the phone with
|
|
someone! (But she's a wonderful, patient, forgiving wife.)<p>
|
|
|
|
To fix this, what you need to do is to inform your staff (or family)
|
|
that once they finish with their mail client, they should terminate it
|
|
immediately. And they should also be informed that they should turn
|
|
off the automatic mail-fetching for any mail client that they use,
|
|
especially if you are billed for connection time to your ISP or per
|
|
minute of call (European countries often bill for even local
|
|
calls).<p>
|
|
|
|
Another thing to watch out for is the /etc/resolv.conf on the unix
|
|
hosts on your network. You must not have any nameservers which are
|
|
outside of your local network listed in it, or else every application
|
|
that accepts a hostname will generate packets and cause your gateway
|
|
to dial out. For this reason, it's wise to keep every hostname your
|
|
local network needs in /etc/hosts on each unix machine. If your local
|
|
network is large enough to warrant the effort, you might also set up
|
|
your own local nameserver to handle the name requests. A local
|
|
nameserver with its own maps for the local domain, and a caching
|
|
nameserver for outside requests is probably the most efficient way of
|
|
handling that. If you are going to be using a local mail agent like
|
|
sendmail, then you will want to be sure to configure it in such a way
|
|
that it will not cause the gateway to dial-up the ISP at every
|
|
instance of outgoing mail. You'll want it spooled until a connection
|
|
is available, or at a routinely scheduled time when all queued mail
|
|
will be transmitted out.<p>
|
|
|
|
Obviously, this document is not going to go into any detail about how
|
|
to configure the various applications on your network around using a
|
|
demand-dialed gateway. It is useful, however, to be aware of some of
|
|
the issues you will face when you add different applications and
|
|
platforms to your network, and why things may not be going the way you
|
|
initially supposed they would. If you are faced with a larger network
|
|
which requires greater upkeep in order to keep it working right, and
|
|
high bandwidth to the Internet on a regular basis, it may be time to
|
|
consider investing in faster connections (ISDN, T1, T3, OC3, etc.) and
|
|
leased lines which better suit your needs. Note that diald can work
|
|
with ISDN, but in a larger-scale network with higher bandwidth
|
|
demands, a full-time connection may be the best solution.<p>
|
|
|
|
<A name="final"></A>
|
|
<h3>Conclusion</h3>
|
|
<P>
|
|
Well, it's seems apropriate to say that configuring a small network
|
|
with demand dialing via diald is a task which can be <i>quite</i>
|
|
involved, depending on the complexity of your network. But if you
|
|
have fairly "ordinary" needs, you can follow the above procedures to
|
|
get a working and reliable demand-dialed connection. Many, at this
|
|
point, will say "Well, what are 'ordinary needs' anyway?" or "How big
|
|
of a network will this support?". The answer is subjective, however I
|
|
can say with reasonable certainty that a network of 2 to 8 machines,
|
|
each running their own web browsers, mail clients, and the like, will
|
|
be quite adequate over even a 28.8kbps modem. The connection I get to
|
|
my local ISP rarely gets past 28.8kbps on my 33.6kbps modem, because
|
|
of the lines in my area, and often drops down to 21.6kbps or so, yet I
|
|
still get reasonably quick response from having 2 or 3 machines
|
|
accessing the Internet simultaneously. If you lust for speed, then
|
|
you will do well to get a 56kbps modem, and a line to your ISP that
|
|
can sustain 56kbps (yes, 53k download by FCC law). From my
|
|
experience, diald will have no trouble with a 56kbps, provided it is
|
|
either external and connected to a 16550 UART, or if you have built
|
|
some version of a PnP configuration manager which can reliably
|
|
configure an internal 56k modem.<p>
|
|
|
|
|
|
<!--===================================================================-->
|
|
<P> <hr> <P>
|
|
<center><H5>Copyright © 1998, Tom Kunz <BR>
|
|
Published in Issue 26 of <i>Linux Gazette</i>, March 1998</H5></center>
|
|
|
|
<!--===================================================================-->
|
|
<P> <hr> <P>
|
|
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
|
|
ALT="[ TABLE OF CONTENTS ]"></A>
|
|
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
|
|
ALT="[ FRONT PAGE ]"></A>
|
|
<A HREF="./ayers.html"><IMG SRC="../gx/back2.gif"
|
|
ALT=" Back "></A>
|
|
<A HREF="./obrien.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
|
<P> <hr> <P>
|
|
|
|
<H4>
|
|
"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
|
</H4>
|
|
|
|
<P> <HR> <P>
|
|
<!--===================================================================-->
|
|
|
|
<center>
|
|
<H2>The Yorick Programming Language</H2>
|
|
<H4>By <a href="mailto:cobrien@optimsys.com">Cary O'Brien</a></H4>
|
|
</center>
|
|
<P> <HR> <P>
|
|
<H3>Contents:</H3>
|
|
<ul>
|
|
<li><a HREF="./obrien.html#intro">1. Introduction</A>
|
|
<li><a HREF="./obrien.html#basic">2. Basic operations</A>
|
|
<li><a HREF="./obrien.html#prog">3. Programming</A>
|
|
<li><a HREF="./obrien.html#array">4. Advanced Array Operations</A>
|
|
<li><a HREF="./obrien.html#graphics">5. Graphics Operations</A>
|
|
<li><a HREF="./obrien.html#final">6. Closing Remarks</A>
|
|
<li><a HREF="./obrien.html#resource">7. Additional Resources</A>
|
|
</ul>
|
|
<P> <HR> <P>
|
|
|
|
<A name="intro"></A>
|
|
<H3>1. Introduction</H3>
|
|
<P>
|
|
Linux leverages a vast amount of academic software, either easy ports
|
|
of existing Unix packages or, increasingly in recent years, software
|
|
that is already ready to run under Linux.
|
|
One example is Yorick, and this article is an attempt to
|
|
provide a brief overview of the nature and capabilities
|
|
of this system.
|
|
<P>
|
|
Yorick is not just another calculator -- readable syntax, array
|
|
notation, and powerful IO and graphics capabilities make Yorick a
|
|
favorite tool for scientific numerical analysis. Machine-independent
|
|
IO, using the standard NetCDF file formats, simplifies moving
|
|
applications between hardware architectures.
|
|
<P>
|
|
Yorick is an interpreted language for numerical analysis, developed
|
|
at Livermore Labs by David H. Munro. Implemented in C, it is freely
|
|
distributed under a liberal copyright. Yorick runs on a vast
|
|
range of machines, from 486SX Linux Laptops (in my case) to Cray YMP
|
|
supercomputers.
|
|
<P>
|
|
Who uses Yorick? The majority of users are physicists,
|
|
many with access to the most powerful computers in the world.
|
|
Specific applications include Astrophysics, Astronomy, Neurosciences,
|
|
Medical Image Processing and Fusion Research.
|
|
<P>
|
|
In this article I will discuss the basics of running Yorick, describe
|
|
the key array operations, and briefly discuss array operations, programming,
|
|
and graphics. I hope that this quick look is enough to get the more
|
|
mathematically inclined of you to give Yorick a try.
|
|
|
|
<P> <HR> <P>
|
|
<A name="basic"></A>
|
|
<H3>2. Basic operations.</H3>
|
|
<P>
|
|
When invoked without arguments, Yorick presents a typical
|
|
command line interface. Expressions are evaluated
|
|
immediately, and the result is displayed. Primitive
|
|
types include integers, floating point values, and strings, and
|
|
all the built-in functions and constants you would expect are
|
|
present.
|
|
<P>
|
|
Variable names are unadorned -- no leading $, and need not
|
|
be pre-declared, and C style comments are supported.
|
|
<P>
|
|
<H4>Arrays</H4>
|
|
<P>
|
|
One might not expect an interpreted language to be suitable for
|
|
numerical analysis -- and indeed this would be the case if arrays
|
|
were not built into the language. Arrays are first-class objects
|
|
that can be operated on with a single operation. Since the
|
|
virtual machine understands arrays, it can apply optimized
|
|
compiled subroutines to array operations eliminating the speed
|
|
penalty of the interpreter.
|
|
<P>
|
|
Arrays can be created explicitly:
|
|
<pre>
|
|
> a1 = [1.1, 1.2, 1.3, 1.4, 1,5]
|
|
</pre>
|
|
And elements can be accessed singly or as a subset, with 1 being
|
|
the origin. Parenthesis indicate the indexing operation, and
|
|
a single index or a range of indexes can be specified.
|
|
<pre>
|
|
> a1
|
|
[1.1,1.2,1.3,1.4,1,5]
|
|
> a1(2)
|
|
1.2
|
|
> a1(1:3)
|
|
[1.1,1.2,1.3]
|
|
</pre>
|
|
Since array operations are built into the language, functions
|
|
applied to the array are automatically applied to all elements
|
|
at once.
|
|
<pre>
|
|
> sqrt(a1)
|
|
[1.04881,1.09545,1.14018,1.18322,1,2.23607]
|
|
</pre>
|
|
Arrays are not limited in dimension. The rank (number of indices) of
|
|
an array is not limited to one (a vector) or two (a matrix), but can
|
|
be as large as desired. Arrays of rank 3 can be used to represent
|
|
the distribution of a parameter across a volume, and an array of
|
|
rank 4 could model this over time.
|
|
<P>
|
|
<H4>On-line Help</H4>
|
|
<P>
|
|
Yorick also provides a simple but effective help system. Executing
|
|
the help command describes the help system. Executing it with
|
|
a command name as an argument provides information on that command.
|
|
|
|
<P> <HR> <P>
|
|
<A name="prog"></A>
|
|
<H3>3. Programming</H3>
|
|
<P>
|
|
Yorick provides a complete programming language that closely matches C
|
|
in terms of control flow, expressions, and variable usage. For
|
|
example,
|
|
<pre>
|
|
> for(i=1; i<10; i++) { print,1<<i; }
|
|
</pre>
|
|
print the powers of two just as you would expect, and function
|
|
declarations, introduced with func, work as expected.
|
|
<pre>
|
|
> func csc(x) {
|
|
> return 1/sin(x);
|
|
> }
|
|
</pre>
|
|
There are differences -- variables need not be declared, and arrays
|
|
are much more powerful than C. The major difference is in function
|
|
invocation. Passing arguments to a function in parenthesis causes an
|
|
evaluation and printing of the result, however passing arguments
|
|
separated by commas simply executes the function and does not return
|
|
the result. Since in most cases intermediate results are not
|
|
required, many scripts contain function calls of the form f,x,y rather
|
|
than the more familiar f(x,y).
|
|
<P>
|
|
Having a programming language close to C allows easy migration between
|
|
Yorick for prototyping and C for final implementation. However, as
|
|
several Yorick users have indicated, moving to C was often unnecessary
|
|
-- the Yorick program proved to be fast enough to get the job done,
|
|
and with a minimum of programming effort.
|
|
<P>
|
|
If C extensions are required, a straightforward framework allows
|
|
extending the Yorick command language with whatever new operations
|
|
are necessary.
|
|
|
|
<P> <HR> <P>
|
|
<A name="array"></A>
|
|
<H3>4. Advanced Array Operations</H3>
|
|
<P>
|
|
Now things get really interesting. Yorick has a compact
|
|
and sophisticated mechanism for describing array indexing
|
|
and operations, which are used to precisely specify the
|
|
desired operation to the interpreter.
|
|
<P>
|
|
As you recall, applying an operation to an array
|
|
causes the operation to be applied to each element
|
|
of the array. For example
|
|
<pre>
|
|
a = [1,2,3,4,5]
|
|
sqrt(a)
|
|
[1,1.41421,1.73205,2,2.23607]
|
|
</PRE>
|
|
<P>
|
|
But what about multiplying two vectors? The default
|
|
is to perform an element by element by multiplication.
|
|
<pre>
|
|
b = [2,4,6,8,10]
|
|
a*b
|
|
[2,8,18,32,50]
|
|
</PRE>
|
|
<P>
|
|
But those of you that remember physics or linear algebra
|
|
will recall the inner and outer products. The inner
|
|
product is defined as the sum of the pairwise products:
|
|
<pre>
|
|
a(+)*b(+)
|
|
110
|
|
</PRE>
|
|
And the outer product creates a matrix out of each possible
|
|
multiplication
|
|
<pre>
|
|
a(-,)*b(,-)
|
|
|
|
[[2,4,6,8,10],
|
|
[4,8,12,16,20],
|
|
[6,12,18,24,30],
|
|
[8,16,24,32,40],
|
|
[10,20,30,40,50]]
|
|
</PRE>
|
|
<P>
|
|
The + and - symbols used where an index would be are
|
|
called special-subscripts, and provide precise control
|
|
over how array operations are executed.
|
|
<P>
|
|
The + is the matrix multiplication pseudo-index, which indicates
|
|
to Yorick along which dimension the addition part of a
|
|
matrix multiply should be performed.
|
|
<P>
|
|
The - is a pseudo-index, creating an index where one
|
|
did not exist before.
|
|
<P>
|
|
<H4>Rank-Reducing Operators:</H4>
|
|
<P>
|
|
The operators sum, min, max, and avg can be used
|
|
in place of indexes.
|
|
<pre>
|
|
a(max)
|
|
5
|
|
b(avg)
|
|
6
|
|
</PRE>
|
|
<P>
|
|
One might wonder why this is necessary, when the equivalent
|
|
functional operators (i.e. min() or avg()) exist? The reason
|
|
is that for matrices of rank more than one, the rank-reducing
|
|
index operators allow you to specify exactly how to perform
|
|
the operation. For example, given a 3x3 array, to you want
|
|
to average across rows, columns, or the entire array?
|
|
<pre>
|
|
c = [[1,2,3],[4,5,6],[7,8,9]]
|
|
dimsof(c)
|
|
[2,3,3]
|
|
avg(c)
|
|
5
|
|
c(avg,avg)
|
|
5
|
|
c(avg,)
|
|
[2,5,8]
|
|
c(,avg)
|
|
[4,5,6]
|
|
</PRE>
|
|
<P>
|
|
Here we have also introduced the dimsof() operator, which
|
|
reports the dimensions of the argument. In this case the
|
|
result tells us that c is an array of rank 2, with 3 elements
|
|
in each direction.
|
|
|
|
<P> <HR> <P>
|
|
<A name="graphics"></A>
|
|
<H3>5. Graphics Operations</H3>
|
|
<P>
|
|
Under Linux, Yorick is linked with the GIST graphics
|
|
subsystem, allowing immediate display of plots and
|
|
diagrams. Plots are interactive, allowing the user
|
|
to zoom in and out, stretch axes, and crop the
|
|
displays using the mouse. Yorick is capable of
|
|
displaying sequences of plots over time as a move,
|
|
and because of this the command to prepare for
|
|
a new image is fma, or frame advance. Onward.
|
|
<P>
|
|
To plot the value of a function at evenly spaced
|
|
points we need to first create the x values.
|
|
<pre>
|
|
x = span(0,10,256)
|
|
dimsof(x)
|
|
[1,256]
|
|
</PRE>
|
|
<P>
|
|
X is now a 256 element long array with values that range
|
|
from 0 to 10.
|
|
<P>
|
|
The plg function, given vectors for the x and y
|
|
values, plots x-y graphs.
|
|
<pre>
|
|
plg, sin(x^2), x
|
|
</PRE>
|
|
<img src="./gx/obrien/2184p1.gif">
|
|
<P>
|
|
<center><H4>Plot 1</H4> </center>
|
|
<P>
|
|
The result is shown in Plot 1. Note that the arguments
|
|
are supplied y,x (not x,y). This allows Yorick to supply
|
|
a default x vector (ranging from 1 to the number of y points)
|
|
if desired.
|
|
<P>
|
|
Parametric plots are also supported. Consider the
|
|
following code which produces the spiral in Plot 2:
|
|
<P>
|
|
<pre>
|
|
window, style="vgbox.gs"
|
|
a = span(0,20,256)
|
|
x = a * sin(a)
|
|
y = a * cos(a)
|
|
plg, y, x
|
|
</PRE>
|
|
<img src="./gx/obrien/2184p2.gif">
|
|
<P>
|
|
<center><H4>Plot 2</H4> </center>
|
|
<P>
|
|
Surface plots are also available, either as a wire
|
|
frame as in Plot 3.
|
|
<pre>
|
|
#include "plwf.i"
|
|
orient3
|
|
x = span(-pi,pi,32)(,-:1:32)
|
|
y = transpose(x)
|
|
fma
|
|
plwf, sin(x)*cos(y)
|
|
</PRE>
|
|
<img src="./gx/obrien/2184p3.gif">
|
|
<P>
|
|
<center><H4>Plot 3</H4> </center>
|
|
<P>
|
|
Or a shaded surface rendition as in Plot 4:
|
|
<PRE>
|
|
fma
|
|
plwf, sin(x)*cos(y), shade=1, edges=0
|
|
</PRE>
|
|
<img src="./gx/obrien/2184p4.gif">
|
|
<P>
|
|
<center><H4>Plot 4</H4> </center>
|
|
<P>
|
|
A host of advanced graphics options are used in the
|
|
demonstration programs distributed with Yorick, and
|
|
the latest copy of the documentation has an extensive
|
|
description of graphics options. In addition, libraries
|
|
to read, write, and display PNM format images is provided.
|
|
|
|
<P> <HR> <P>
|
|
<A name="final"></A>
|
|
<H3>6. Closing Remarks</H3>
|
|
<P>
|
|
Yorick is an exceptionally rich environment for numerical
|
|
analysis. Many capabilities such as file IO, debugging,
|
|
animation, and distributed operation using MPY have been
|
|
omitted. If you are at all interested please take the
|
|
time to read through the documentation and the example
|
|
programs. You will not be disappointed.
|
|
|
|
<P> <HR> <P>
|
|
<A name="resource"></A>
|
|
<H3>7. Additional Resources</H3>
|
|
<P>
|
|
Yorick Home Page:<BR>
|
|
<A HREF="ftp://ftp-icf.llnl.gov/pub/Yorick/yorick-ad.html">
|
|
ftp://ftp-icf.llnl.gov/pub/Yorick/yorick-ad.html</A>
|
|
<P>
|
|
Yorick Archive Sites:<BR>
|
|
<A
|
|
HREF="ftp://sunsite.unc.edu/pub/Linux/apps/math/matrix/yorick-1.4.src.tar.gz">
|
|
ftp://sunsite.unc.edu/pub/Linux/apps/math/matrix/yorick-1.4.src.tar.gz</A>
|
|
<P>
|
|
Linux Software for Scientists (and Curious Layfolk):<BR>
|
|
<A HREF="http://www-ocean.tamu.edu/~baum/linuxlist.html">
|
|
http://www-ocean.tamu.edu/~baum/linuxlist.html</A>
|
|
<P>
|
|
Scientific Applications under Linux:<BR>
|
|
<A HREF="http://SAL.KachineTech.COM/">
|
|
http://SAL.KachineTech.COM/</A>
|
|
|
|
<!--===================================================================-->
|
|
<P> <hr> <P>
|
|
<center><H5>Copyright © 1998, Cary O'Brien <BR>
|
|
Published in Issue 26 of <i>Linux Gazette</i>, March 1998</H5></center>
|
|
|
|
<!--===================================================================-->
|
|
<P> <hr> <P>
|
|
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
|
|
ALT="[ TABLE OF CONTENTS ]"></A>
|
|
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
|
|
ALT="[ FRONT PAGE ]"></A>
|
|
<A HREF="./kunz.html"><IMG SRC="../gx/back2.gif"
|
|
ALT=" Back "></A>
|
|
<A HREF="./lg_backpage26.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
|
<P> <hr> <P>
|
|
|
|
<H5>Copyright © 1998 Specialized Systems Consultants, Inc.<br>
|
|
For information regarding copying and distribution of this material see the
|
|
<A HREF="../copying.html">Copying License</A>.</H5>
|
|
</center>
|
|
|
|
<P> <hr> <P>
|
|
|
|
<H3>Contents:</H3>
|
|
<ul>
|
|
<li><a HREF="./lg_backpage26.html#authors">About This Month's Authors</a>
|
|
<li><a HREF="./lg_backpage26.html#notlinux">Not Linux</a>
|
|
</ul>
|
|
|
|
<a name="authors"></a>
|
|
<P> <HR> <P>
|
|
<!--======================================================================-->
|
|
|
|
<center><H3> About This Month's Authors </H3></center>
|
|
|
|
<P> <HR> <P>
|
|
<!--======================================================================-->
|
|
|
|
<P>
|
|
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">Larry Ayers</H4>
|
|
Larry Ayers lives on a small farm
|
|
in northern Missouri, where he is currently engaged in building a
|
|
timber-frame house for his family. He operates a portable band-saw mill,
|
|
does general woodworking, plays the fiddle and searches for rare
|
|
prairie plants, as well as growing shiitake mushrooms. He is also
|
|
struggling with configuring a Usenet news server for his local ISP.
|
|
|
|
<P>
|
|
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">Jim Dennis</H4>
|
|
Jim Dennis
|
|
is the proprietor of <A href="http://www.starshine.org">
|
|
Starshine Technical Services</A>.
|
|
His professional experience includes work in the technical
|
|
support, quality assurance, and information services (MIS)
|
|
departments of software companies like
|
|
<A href="http://www.quarterdeck.com"> Quarterdeck</A>,
|
|
<A href="http://www.symantec.com"> Symantec/
|
|
Peter Norton Group</A>, and
|
|
<A href="http://www.mcafee.com"> McAfee Associates</A> -- 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.
|
|
|
|
<P>
|
|
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">Dr. Richard L. Dubs</H4>
|
|
When Dr. Dubs is not playing with Linux, he is a Senior Scientist with a
|
|
Virginia-based defense contractor. He lives in an idyllic community in
|
|
Rockville, MD with his wife, two kids and the family cat.
|
|
|
|
<P>
|
|
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">Michael J. Hammel</H4>
|
|
Michael J. Hammel,
|
|
is a transient software engineer with a background in
|
|
everything from data communications to GUI development to Interactive Cable
|
|
systems--all based in Unix. His interests outside of computers
|
|
include 5K/10K races, skiing, Thai food and gardening. He suggests if you
|
|
have any serious interest in finding out more about him, you visit his home
|
|
pages at http://www.csn.net/~mjhammel. You'll find out more
|
|
there than you really wanted to know.
|
|
|
|
<P>
|
|
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">Tom Kunz </H4>
|
|
Tom is 24 years old, married to the most wonderful woman in the
|
|
world, and he works as a Systems Programmer for Rutgers University
|
|
Telecommunications Division. Hobbies, other than Linux, include
|
|
listening to and performing classical/romantic-period piano music,
|
|
writing piano arrangements for church, woodworking, and recreational
|
|
shooting. I can be reached at tkunz@hardees.rutgers.edu or
|
|
tkunz@fast.net.
|
|
|
|
<P>
|
|
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">Mike List </H4>
|
|
Mike List is a father of four teenagers, musician,
|
|
and recently reformed technophobe, who has been into computers
|
|
since April,1996, and Linux since July.
|
|
|
|
<p>
|
|
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">Eric Marsden</H4>
|
|
<a href="http://www.chez.com/emarsden/">Eric</a> is studying computer
|
|
science in Toulouse, France, and is a member of the local Linux Users
|
|
Group. He enjoys programming, cycling and Led Zeppelin. He admits to
|
|
once having owned a Macintosh, but denies any connection with the the
|
|
<a href="http://locke.ccil.org/~esr/ecsl/">Eric Conspiracy Secret
|
|
Labs</a>.
|
|
|
|
<P>
|
|
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">Cary O'Brien</H4>
|
|
Cary O'Brien lives in Washington DC, and refers to himself, when
|
|
pressed, as a "systems engineer". He is currently Vice President of Optim
|
|
Systems, Inc., which provides products and services to the the
|
|
telecommunications industry. He has been messing with computer
|
|
hardware and software since high school. He is married with two
|
|
children, 4 and 7, who are starting with computers even earlier.
|
|
|
|
<P>
|
|
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">Alessandro Usseglio Viretta</H4>
|
|
Alessandro, European citizen and physicist, is a Ph.D. student at the Swiss Federal
|
|
Institute of Technology in Zurich. During daytime he's trying to learn the art
|
|
of cryo-electron-microscopy but at night he turns himself into the abominable
|
|
kernel-compiler.
|
|
|
|
<a name="notlinux"></a>
|
|
<P> <hr> <P>
|
|
<!--====================================================================-->
|
|
|
|
<center><H3> Not Linux </H3></center>
|
|
|
|
<P> <HR> <P>
|
|
<!--======================================================================-->
|
|
<P>
|
|
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.
|
|
<P>
|
|
Lots of excitement in the air these days what with free Netscape and
|
|
the debate over OpenSource. We're going through some interesting times.
|
|
<P>
|
|
Well, not much to report this montho on a personal front--work!
|
|
work! work! makes Margie a dull woman.
|
|
<P>
|
|
Have fun!
|
|
|
|
<P> <hr> <P>
|
|
<A HREF="http://www.ssc.com/ssc/Employees/Margie/margie.html">
|
|
Marjorie L. Richardson</A> <br>
|
|
Editor, <A HREF="http://www.linuxgazette.com/"><i>Linux Gazette</i></A>, <A
|
|
HREF="mailto:gazette@ssc.com">gazette@ssc.com</a>
|
|
|
|
<P> <HR> <P>
|
|
<!--====================================================================-->
|
|
<A HREF="./index.html"><IMG SRC="../gx/indexnew.gif" ALT="[ TABLE OF
|
|
CONTENTS ]"></A>
|
|
<A HREF="../index.html"><IMG SRC="../gx/homenew.gif" ALT="[ FRONT
|
|
PAGE ]"></A>
|
|
<A HREF="./obrien.html"><IMG SRC="../gx/back2.gif" ALT=" Back "></A>
|
|
<p><hr><p>
|
|
<I>Linux Gazette</I> Issue 26, March 1998,
|
|
<A HREF="http://www.linuxgazette.com/">http://www.linuxgazette.com</A><BR>
|
|
This page written and maintained by the Editor of <I>Linux Gazette</I>,
|
|
<A HREF="mailto: gazette@ssc.com"> gazette@ssc.com</A>
|
|
<P>
|
|
</BODY>
|
|
</HTML>
|