Linux Gazette

August 1999, Issue 44 Published by Linux Journal

indent

Visit Our Sponsors:

Linux Journal
InfoMagic
SuSE
Red Hat
LinuxMall
cyclades
indent

Table of Contents:

 
 
 
 
 
 
 
 
 
indent

TWDT 1 (gzipped text file)
TWDT 2 (HTML file)
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.
indent
Linux Gazette, http://www.linuxgazette.com/
This page maintained by the Editor of Linux Gazette, gazette@ssc.com

Copyright © 1996-99 Specialized Systems Consultants, Inc.
indent

"Linux Gazette...making Linux just a little more fun!"


 The Mailbag!

Write the Gazette at gazette@ssc.com

Contents:


Help Wanted -- Article Ideas

Answers to these questions should be sent directly to the e-mail address of the inquirer with or without a copy to gazette@ssc.com. Answers that are copied to LG will be printed in the next issue in the Tips column.


 Date: Fri, 23 Jul 1999 14:21:44 -0700
From: jason@anemone.tenhand.com
Subject: You to can be a secret agent

I need help in setting up web kiosks for a free-net I'll be setting up in rural Nicaragua this September. When I took on the job, I didn't have a day job at a startup company. Now I do, and I haven't had any time to actually do the programming. What I need is help writing 2-3 system and mail admin programs with a cgi front end. The tools should be in PHP3 & or perl, and be set up so they can easily be localized. I'm willing to pay for the work, and the final web kiosk distribution will be released under a combination GPL/artistic license.

An example of what I need done is to have a cgi for sneakernet delivery of mail. The CGI should scan a list of qmail maildirs, figure out which ones have mail & provide a list to the user. The user can then click on a link, and the maildir will be re-delivered to a new maildir on floppy disk. The script needs to be able to handle checking for floppy/ formatting floppy/ spanning the maildir accross multiple floppies.

I can be reached at myles@tenhand.com, or at +1 (206) 399-9668.
myles


 Date: Fri, 02 Jul 1999 11:06:14 -0700
From: Victor Richardson <darkmoebius@earthlink.net>
Subject: Linux server, Mac & Win clients

Recently, I acquired the job(pro bono) of consolodating a small(12 clients) non-profit's networks. Currently, they have two seperate networks, one using Appletalk with 7 Macs sharing a printer and the other NT 4.0 w/ 4 PC's and 2 Powermacs doing file and printer sharing. All the CLients have seperate dial-up internet accounts except one PC which has a cable modem(don't ask me why they don't all use it). I suspect the former tech pushed them into NT w/o informing them of the need and cost for Microsoft Outlook and Exchange.

I would like to consolodate them onto a single linux server doing email/file/printer sharing and connect theough a shared DSL line. I purchased Red Hat 6.0 for the task. Unfortunately, I have never used Linux before so when it scomes to altering config files I get lost. I have read alot of How-to's on setting up Samba and Netatalk seperately, but never have come accross an article about setting them up together. Is ther fine tuning invovled to get them to work together? Is there a simple answer to this with walk through help? Also, they all currently use Netscape browser, what software should I use to transfer email internally and externally?

Any help would be greatly appreciated.
Victor


 Date: Fri, 2 Jul 1999 19:31:07 -0700
From: "Todd & Missy" <tmjenn@earthlink.net>
Subject:

I have used and installed windows for years and decided to try Redhat because I hear good things about it but i can't get it to install. I can't get the harddrive right to get it to install I have tried everything but I just can't get the partition right so it will let me install it. I am about to give up but I will give it one more shot if I can please get some help. You can e-mail me at goodtogo45@hotmail.com I run windows98 have a amd300 and a 3 gig harddrive thanks Todd


 Date: Sat, 03 Jul 1999 17:44:38 +0800
From: wei <cyberwei@ms12.url.com.tw>
Subject: search for some software !

Dear sir :
Sorry to bother you ! I am a rookie in linux system and now I have a project to do .

It need a software to plot gray-scale plot of geographic data to present the 3-D data!

I have tried pgplot 5.2 etc., but I can't compile it correctly ! Could you introduce me a appropriate software to do this ? Thanks a lot ! Cheers !

Wei


 Date: Sat, 03 Jul 1999 17:55:42 +0000
From: Wolfrider <wolfrdr@famvid.com>
Subject: Request for Ethernet on Linux instructions

Currently I have two computers; one I would like to set up to use as a squid proxy server connected to Internet via modem.

I have tried using direct-connect twisted pair as well as a cheap 5-port hub and can't get telnet or ping to work, although both devices now ' ifconfig ' Ok.

I couldn't find anything in LG related to Ethernet / TCP/IP setup; could someone write a step-by-step on this or point me to something I've missed? (I've checked some of the HOWTOs.) Thanks in advance

--
==WolfriderV6, VROC #59(R)


 Date: Sun, 04 Jul 1999 23:48:12 -0500
From: vwbuggy@viagrafix.net (Steve Hatheway)
Subject: Linux

Hi my name is Steve from Tulsa Ok.

Iam sick of windows 95, 98 and Gates, and the way he has control of every thing makes me sick. If he had a good product I might feel different. At first I could not under stand how he has control of the market with a piece of junk, but now I know why. I know, and alot of other people know that UNIX is a very good system. Not every body knows that Linux is a newer Versions of UNIX made for PC's. And with more investigation you find out there is about twenty different brands of Linux all looking like they are better than each other.

Which one is the best, who is biggest, who has been around longest, who has the most support, who is the most stable, I think REDHAT is maybe? Then every brand has several Versions out there , with in a small time frame ,to many too choose from, why some many versions. That tells me that the early Versions must be bad to have to make a new one so quick. Then you find alot of patches for different brands, and versions ? (I don't mean to sound bad, but which one do I use.) I think every body would like a stable and fast system with the least amount of overhead that has alot of support and programs will run on then bye bye windows95,98,??. It seems like to me that all the Linux people are after each other instead of windows95,98,?? Then there is Freebsd that says they are best because they dont have all the bugs.

I am so confused that maybe I should stay with windows 95,98,?? and install and time delay relay to cycle the power to it every hour, so it can reboot like it wants to. Please tell me more about Linux like. Who has the most support, whos is most stable, bottom line the best one?

Thanks for your time. Steve


 Date: Mon, 5 Jul 1999 19:17:16 +0100
From: "Edward Andrews" <EAndrews@aldreth.free-online.co.uk>
Subject: Setting up mouse

I've just installed Red Hat 6.0 Linux and cannot configure my mouse. Mouseconfig cannot find my mouse when probing for a mouse and trying to set it up as a generic or a microsoft compatible mouse does not work either. The mouse works under Windows as a standard serial mouse using COM1, but does not work as a Microsoft compatible mouse using dev/ttyS0. The setserial command reports that the dev/ttyS0 port uses the same IRQ and addresses as COM1 uses under windows.

Any ideas?

Edward Andrews EAndrews@aldreth.free-online.co.uk


 Date: Thu, 08 Jul 1999 08:35:11 +0200
From: jan johnsen <janjohnsen@get2net.dk>
Subject: gcc will not work !!

With my red hat 6.0 , just installed, I can not get the gcc to work. When I have downloaded a program, and what to run ./configure the test goes allrigt just until it gets to gcc - it finds gcc but the it writes something lig ' gcc not working - can not make exec."...

I have installed both gcc, egcs, egcs++ and egcs......

Anyone know if its a problem with red hat 6.0 or is it the programs

Jan Johnsen
Denmark


 Date: Fri, 9 Jul 1999 18:01:12 +1000
From: "Jeremy OHara" <Jeremy.OHara@petos.com.au>
Subject: Need as much info on how to Setup a dial-in server

Hi all

I was wonder if anyone could have me? I was wonder if anyone could give me as much info on how to setup a dial-in server? I'm planing to setup a Dial-in server An ISP.

Thanking you
Jeremy OHara


 Date: Sun, 11 Jul 1999 12:23:55 +0200
From: "F. Biondi" <biondif@creso.off-on.it>
Subject: E-mail receiving question

Hello. When I try to receive an e-mail via POP3 server by Netscape Communicator, it doesn't show any error message but it doesn't find anything and tells that there are no messagges on the server. However, when I try using Windows98 (by OutLook), all the messages are found.

Obviusly, out going e-mails work fine. Can you help me?

(I am using Linux Red Hat 6.0, with kernel version 2.2.5)

Filippo Biondi (Italy)
biondif@creso.off-on.it


 Date: Mon, 12 Jul 1999 02:40:45 -0000
From: "denver" <revned@gis.net>
Subject: Installing a linux workstation onto a Windows based LAN that uses DCHP

I am having problems adding a linux workstation onto a LAN that is all windows based and uses a Windows NT server as the DCHP Server. Every time I boot up the machine, the linux workstation gives me this error saying that eth0 was unable to find it's address or basicly it cannot connect to the network. It would be nice if someone can either tell me step by step on how to setup the linux workstation or give me a link(s) to documents that can help me solve this problem.


 Date: Sun, 11 Jul 1999 23:24:04 -0700
From: cc246 <cc246@gateway.net>
Subject: How to access and download printer software

I need help with my HP 882C, I can not print MSDOS work.


 Date: Tue, 13 Jul 1999 10:32:51 +1000
From: Andrew H Edmonds <40009722@snetbr.cpg.com.au>
Subject: Linux on Notebook.

I hope someone has some advice...
I am looking to buy a Pent 90 or higher, Notebook that has an internal CD-Rom drive, so that I can load OpenLinux Caldera 2.2, which I have just instaled on my desktop.

I am a student in Brisbane Australia, learning Basic Microcomputing.

Can anyone recomend a brand or model of notebook, I have been to the Linux on Laptop page 'Texas site' but none look any more appealing or stable than the others.

Thanks,
Andrew H Edmonds


 Date: Tue, 13 Jul 1999 05:13:13 -0700 (PDT)
From: Markus Laumann <basikx@yahoo.com>
Subject: windows inside linux

Dear Whoeveryouare,

I'm trying to find someone who knows how to run windows 98 inside linux. I've seen it before, but I can't seem to find it when I want to. If you could point me in a direction and kick, I would be very thankful.

Markus


 Date: Tue, 13 Jul 1999 12:32:32 -0400
From: "Michael A. Lurie" <the_one@mindspring.com>
Subject: ppp connection

I have an internesting problem. I have configured ezppp, kppp, and gnome-ppp to connect to my mindspring account, and all three seem to be doing so just fine. However, when I startup netscape or any other internet application, I can't access the internet. It just sits there trying to lookup the host. No error message. No nothing. I am completely stumped. Any help would be appreciated.


 Date: Tue, 13 Jul 1999 12:32:32 -0400
From: "Michael A. Lurie" <the_one@mindspring.com>
Subject: ppp connection

I have an interesting problem. I have configured ezppp, kppp, and gnome-ppp to connect to my mindspring account, and all three seem to be doing so just fine. However, when I startup netscape or any other internet application, I can't access the internet. It just sits there trying to lookup the host. No error message. No nothing. I am completely stumped. Any help would be appreciated.


 Date: Fri, 16 Jul 1999 07:13:15 -0500
From: "Brian B." <ixnay@warp9.lagnet.hb>
Subject: setting up mail for a home network.

Ok either there is an error in this article or Im a complete dolt

I went step for step through tis article but my outgoing mail is not getting my return address changed from my local domain to my isp email account.

I keep getting a sender domain non-existent error from my isps mailserver.

any help would be appreciated
Brian B.


 Date: Fri, 23 Jul 1999 12:43:35 -0700
From: Helen Carley <HelenC@shoretel.com>
Subject: Archives

How do I get to them? I'm looking for the original article on multi-threading. Thanks!

[http://www.linuxgazette.com contains links to all the back issues. A link to the search engine is near the middle of the page.

There is also a page containing the table of contents for all issues at http://www.linuxgazette.com/lg_index.html. Here you can use your browser's Find dialog to search for titles or authors.

The article "Thoughts on multi-threading" was in issue #15 (March 1997). -Ed.]


 Date: Sat, 17 Jul 1999 15:36:09 +1000
From: "Danny Ross" <dross@netspace.net.au>
Subject: Missing Mouse

I've just installed Linux (6.0) and during the installation I specified a PS2 mouse type. However, the first time (and every time since) I logged into the system and received my Login box, the mouse doesn't move. I have a dual boot system (Win 98) and the mouse works fine in everything but Linux. I have searched through the FAQs and tried booting with bmouse=3D3 at the LILO prompt but to no avail. I think I know which file I need to edit to configure the mouse, but how do I get to the Linux files without a mouse?

Anybody got any ideas?
Danny Ross


 Date: Sat, 17 Jul 1999 22:05:41 +0700
From: Ruangvith Tantibhaedhyangkul <ruangvith@linuxfan.com>
Subject: It's all in a Linux's works.

Dear Linuxinans,

I'm having a couple of problems using Linux. My system is now Mandrake 6.0, which is claimed to be 99% compatible with RedHat 6.0.

  1. How should I edit my /etc/fstab so that regular users, including mysef in a non-root role, can read and 'write' a dos partition? My current setting is '/dev/hda2 /dos vfat user,suid,rw,exec,dev 0 0' . It apparently doesn't work.
  2. I got a 'drive shift' phenomenon. First, I installed Linux in a Windows 98 system, a single hard drive system. It contains 2 partitions for the fat c: for the Windows itself, and d: for data files. When I use other 2 partitions for Linux, one for / and the other for swap, it went well. No matter what distro it was. Then I wanted to try separated partitions for /, /usr and /home. Of course, it intruded the 'no more than 4 partitions' rule. So I had to use an extended partition and a number of logical partitions. When it came to Linux, it worked fine. The system recognized all /dev/hdax well. But when I boot it into Windows, my drives go crazy. The c: is still in place, but the d: turn out to be an 'invalid media', with an e: containg the same data as the old d: instead. The worst thing is that I have to press 'a' to abort the d: reading every boot time. How can I get rid of this drive shifting?

Thanks for your help.


 Date: Tue, 20 Jul 1999 12:00:00 +0100
From: "Andrew Mott" <andrew.mott@geharris.co.uk>
Subject: setting up a dial-in box

I'm looking to set up a dial-in box for use at work and I was wondering if anyone would be able to answer a couple of my questions.

  1. Do either of Red Hat 6.0 or S.u.S.E. supply utilities allowing you to modify the partitioning of your disk after installation?
  2. Can you easily integrate a linux system with an existing file system?
  3. Do any of the distributions mentioned above have any known security issues when using PPP.
  4. And finally, which distribution currently has the largest market share (just interested for future reference).

If anyone can help I'd be very grateful.
Cheers,
Andrew Mott

[Yes, all distributions allow you to repartition your disk after installation. However, you can't delete a partition without losing the data in it (except maybe with third-party "resize-in-place" utilities). Linux requires a separate partition except in the case of the now-obscure UMSDOS filesystem. I have not heard of any problems with PPP security. Market share changes quickly, but people's perceptions of it don't change quite so fast. So whatever anybody tells you now will change in six months.

Red Hat has for years been consideredthe biggest by far . However, SuSE now claims to be roughly the same size as RH, both in terms of sales and employees. Caldera has traditionally been much smaller, but have been very successful with their current 2.2 release, in part because RH raised its price and so for the first time, Caldera is actually cheaper than Red Hat.

After years of there being only three major distributions (RH, Debian and Slackware), suddenly distros are exploding from the seams. SuSE made it big in the US last year. Caldera and TurboLinux this year are now seen by many as "major" distributions. (Especially since TurboLinux is outselling Win98 and MacOS in Japan right now.) I'm still not sure what to think about Linux-Mandrake: we'll see whether it gathers long-term momentum.

Distributions keep moving up and down the latter, and they will continue to do so.

Delving into more ancient history, Slackware was the biggest distro before Red Hat, and SLS before Slackware. Each became the biggest because it was perceived as easier to install, more bug-free, and better supported than the previous standard.

Disclaimers: I haven't listed non-Intel platforms (MkLinux) because I don't know enough about them. These opinions are solely my own and what I remember from news stories. If anybody has hard-and-fast numbers about the relative market share of several distributions, and how they've evolved send them in and let us Gazette readers know. -Ed.]


 Date: Wed, 21 Jul 1999 22:59:37 -0400
From: "MK" <mkrygier@softhome.net>
Subject: I have an Interesting Network problem...an NT SERVER!!!

Dear Linux Geniuses!

I was wondering if you could help me and my school solve out linux/Nt networking headache.

The school is running a NT4.0 server that has four network cards that are connected to hubs that are located in the school. its IP is 10.15.16.1 and the other cards IP's are 10.15.64.1, 10.15.48.1, 10.15.32.1, etc. The Nt server acts as a gateway for traffic from these subnets. We are all using DHCP assigned addresses but I reserved one for the linux box 10.15.64.7. What I can ping is 10.15.16.1 the Server and the computers on the subnets because I passed this route command "route add default gw 10.15.16.1" and the it goes! The Ntserver is connected to another server running WinProxy and it has 2 network cards, this computer handles the internet. I cannot ping It! It's address is 10.15.0.1 the windowz boxes on the subnets can but I cant! (dont worry my DNSes are set and everything) this Proxybox is a router to the net it's other Ethernet card is connected to the net (complex 100mbit stuff, not important) it's IP is 10.15.88.1. I need to figure out how to set my route in linux to be able to ping the ProxyBox and then travel to the internet. Can you offer any advice? Also the Proxybox is running WinProxy for web and ftp transfers...do I have to worry about it? any thing that I am required to set?

I am using RedHat 5.2 with kernel 2.0.36 and an eepro100 network card on a pentium pro.

Thank-you in advance!
Michael Krygier
Jr. Unix network admin wannabe


 Date: Thu, 22 Jul 1999 10:20:10 +0200
From: Laurent Mulot <Laurent.Mulot@anp.lip6.fr>
Subject: Could you solve my problem, too?

This is not a suggestion, nor a comment so I don't know if you'll answer me. Let's try anyway.

I'd like to truncate a 3MB file so that I can put it on floppy disks. The file is already compressed. Is there a Linux instruction or a software that can do such a thing ?

I can also present it that way : I suggest you could explain how to truncate a file (just kidding)

thanks in advance
Laurent


 Date: Thu, 22 Jul 1999 06:07:21 -0400 (EDT)
From: sandeep kohli <fuhrer6mill@yahoo.com>
Subject: VERY BIG PROBLEM with Video Card

Hello there,

i am sandeep from india and i have recently Bought a azza MainBoard with Built in Sound Card (Avance Logic 120) and Video Card (SiS-530(but chip is SiS-5595 (AGP with shared Ram ))) there is a very big problem Linux couldnot recognise the VRAM  on the shared Sdram MOdule originally allocated by Award Bios.

The sound card also was not recognised by the new Linux 6.0 version but by 5.2v ver of Red Hat it was recognised as Sound Blaster not as my original card as u guys have bveen doing great work i thought that u would be able to

solve my problem or direct me to those who can
thankiing u guys. u r really doing a great work!
bye 
My email address is fuhrer6mill@yahoo.com
(i am calling from a cafe so please do not reply to any other e mail address than given above(fuhrer6mill@yahoo.com)


 Date: Thu, 22 Jul 1999 18:17:16 CST
From: Jim Bradley <jbradley@msc.net>
Subject: DNS on the fly???

I have my laptop configured to plug into the network of my employer. At home, I plug my laptop into my home network, and dial out from another machine setup for dial on demand. Unfortunately, if it takes forever waiting for the two timeouts when trying to connect to the employer's DNS servers from home, and if I change the DNS order, it takes just as long for the timeout error when attempting to connect to my ISP's DNS from my employer's network. Is there an easy way to change the DNS servers when needed? It's easy enough to change IP addresses with the ifconfig command, is there a similar means for changing the DNS? Or, should I just bite the bullet and setup BIND on the laptop?

Jim Bradley -- Maryville, MO USA (jbradley@msc.net)


 Date: 22 Jul 1999 21:40:02 -0700
From: <murad@123india.com>
Subject: Re : Problem installing StarOffice

Hi, I am really sorry if this mail has reached the wrong plcae, but I desparately need help. I have installed Red Hat Linux 6.0 ( Kernel 2.2.5-15 ). I am unable to install StarOffice 5 Personal Edition. I have followed all the steps given for StarOffice installation. I have a file named 'libc.so.6' in my '/lib' directory which is a link to 'libc-2.1.1.so' in the same directory. When I run the ./setup for the StarOffice installation it gives an error saying that the installation requires glibc2.0.7 ( which is available on the CD ). So I copy this lot of library files in to the '/lib' directory. After that when ./setup is run, it accesses the CDROM for around 5 seconds, then the hard disk for 10 seconds and then it just comes back to the prompt, without ANY error message. I am really frustrated with this. Be my saviour and answer my query. I f you are not the right person to answer the query, atleast guide me by pointing me to the right person.

Thanx & Regards,
Murad Wagh


 Date: Sat, 24 Jul 1999 10:15:01 -0500
From: "Tom Trucco" <ttrucco@orchardpro.com>
Subject: help

I recently installed RedHat 6.0 on an Intel box so I could inexpensively test Apple's QuickTime Streaming Server. The installation of RedHat went smoothly and seems to be working quite well on the box (a consumer Compaq Presario). I downloaded QTSS, configured it and proceeded to run it. It worked immediately. I am having a problem that I would like to know if any others have had. I can directly access a streaming movie using its true file name but I can't get it if I use the name of the reference movie. I should be able to access the reference movie and have the server and the QuickTime plug-in on the client machine negotiate the correct version of the movie to serve based on the client's QT plug-in's "Connection Speed" setting. Based on the setting, the server chooses the appropriate movie for the bandwidth and serves it up.

That is how it is supposed to work. When I attempt to connect using the reference movie the client connects and then reports "415 - Unsupported Media Type". Does anyone have a clue what is happening?


 Date: Sat, 24 Jul 1999 17:29:34 +0200
From: "werner duplessis" <wdplessis@yebo.co.za>
Subject: newbie userMIME-Version: 1.0

i am trying to configure my video card need a driver thats compatible for a sis 5598 or i need to download it from somewhere? please help


 Date: Sat, 24 Jul 1999 12:59:40 EDT
From: TLA9904@aol.com
Subject: trying to load hp 722c into windows 98..

I had a friend install my new copy of windows 98 after he cleaned off everything and started with a clean hard drive..... it took everything but the printer setup... it keeps saying I have problem 10.... I am not even good at any of this.... what can I do... or dooing wrong....

[Since this is a Linux ezine, we usually don't publish questions about other operating systems. I'm running this one because the number of non-Linux questions coming in has not been enough to warrant concern. But please, find appropriate forums for your questions. -Ed.]


 Date: Mon, 26 Jul 1999 15:54:37 -0500
From: Randy Copeland <ccu@ipa.net>
Subject: Websites with free downloads!

I am running Windows 95 on my good computer which is a Pentium 100. But I have an old 486 DX4 in another bedroom that nobody uses and I ask my dad if I could run Linux on it. I have searched for a couple of days and still can not find a website that I can get a free download from. The computer tech guy at my dads store thinks that I might have to start with UNIX and then go to Linux if I can't find a site that has a free download. I would greatly appreciate it if you would e-mail me back with a couple of websites if you know of any! E-mail it to me at mhs-trainer@excite.com.

Thanks for the help.
Richard

[Debian is a totally free version of Linux made by volunteers. It is available via FTP, and more importantly, the installation program supports FTP-via-PPP modem installs. See www.debian.org, "Installation Instructions" and "Download FTP". Choose the "stable" version; "unstable" is a pre-release.

HOWEVER, if you've never used Linux or Unix before, $50 spent for the distribution of your choice with a good reference manual and tech support is well worth it, especially if you have a newer PC to run it on, because it will be much easier to install and you'll be able to take full advantage of Linux's capabilities.

On the other hand, if the 486 is the only computer available and it has no CD-ROM, FTP'ing a distribution may be your only choice. Install a small number of packages at first, and then gradually add more. -Ed.]


 Date: Tue, 27 Jul 1999 21:08:47 +0800
From: kaoc@ever.com.tw
Subject: Booting problem (can't mount root fs)

There's two situation: One: If click when LILO shows up.... My Redhat 6.0 can boot correctly without trouble at all.......

The other: If I clicked nothing when LILO showed up, and let LILO select Linux to boot automatically by default... My Redhat always goes dead while it is trying to mount root fs. The problem message is as following: VFS: Cannot open root device 00:30 Kernel panic: VFS: Unable to mount root fs on 00:30

Does anybody have the same trouble as I ? and Pls, help me to solve the problem.


 Date: Tue, 27 Jul 1999 10:09:30 -0400
From: Mark Cohen <mcohen@androiddomestix.com>
Subject: ASCII to Speech?

I am looking for voice recognition software for a LINUX slackware system. Also software and hardware for a video camera.

Thank You,
Mark Cohen


 Date: Tue, 27 Jul 1999 17:09:14 +0200
From: "jac" <jac@speedcom.es>
Subject: Problems with my compiler

Hello, my question is about the g++ compiler.I want to know if is able to link files that use templates and then aren't included in the main program (they are in different files, and only the header files are in the main program). I have try as:

	gcc main.cxx libro.cxx
	* main: #incude "libro.h"...
	* libro.cxx: #include "libro.h"...=20
but the compiler of Red Hat 6.0 gives me an error. Could you help me? Thanks.

Juan J.Alejandro (jac@speedcom.es) Girona (Spain)


 Date: Wed, 28 Jul 1999 15:30:38 -0500 (CDT)
From: jwang@CS.UH.EDU (John I-Chung Wang)
Subject: Redhat 6.0 on a Sharp Widenote

I've recently installed Redhat 6.0 on a Sharp Widenote after swapping the factory 1 GB drive for a more suitable 6.4 GB drive purchased over the web.

[Part of this letter was a self-answered question regarding video modes, so I put it in the 2 Cent Tips section. -Ed]

... Now if I can just get my ppp to my MCI ISP account (which was sold to Cable and Wireless and is now being sold to Prodigy) working. They appear to do some sort of Challenge Response Authentication in addition to the usual CHAP ie.: there's a prompt of "(IH08011)" (number changes session to session) which seems to be a combined login identity request and password challenge which is then followed by the prompt "password" which presumably requests the password transformed by the number in the first prompt. If I set the pap-secrets or chap-secrets file then pppd expects to have established a ppp connection in which to encapsulate the authentication protocols but I seem to get this challenge in a prompt before ppp starts up so I suspect it's not just the regular CHAP. Note a generic MSDUN has no problems with the prompt, but of course M$ doesn't have any useful documentation about what they are doing. Any ideas? I'll probably solve the problem by switching ISP's but if anyone has the answer, I'd like to hear it.

Regards,
John


 Date: Sat, 3 Jul 1999 21:40:11 +1200 (NZST)
From: Eric Gillespie <viking@flying-brick.caverock.net.nz>
Subject: Ghostscript 5.10

Hi. I am having problems with my current installation of ghostscript.

I have a 9-pin dot-matrix Epson FX800 which worked fine under ghostscript 3.33 but now refuses to work under 5.10. I also have an Olivetti JP170 monochrome inkjet in the same position. I have checked the versions of files installed, and everything seems correct, but I cannot understand how the ghostscript writers have added my printer into the uniprint driver.

All the help files I have come across describe help for a 3.33-based installation, and I haven't found much specifically for 5.10. Even some of the files supplied with 5.10 still refer to files that were around in 3.33! These files aren't around any more (at least I can't find them).

If you have any ghostscript experience, could you please help with a walk-through on how to print a page on my dot-matrix printer under ghostscript 5.10? I would be very appreciative.

Also, thanks to the AnswerGuy for explaining in issue 42/43 about library conflicts - it explained some possible conflicts I had in my system, and I have repaired some (but not all) of my problems as a result.

By the way, to Heather and the team, thanks for continuing to put out a great e-zine. It's well worth the download 8-).

[Jim and Heather put in countless volunteer hours into The Answer Guy column and certainly deserve a round of applause. Send them an email of thanks at answerguy@ssc.com. -Ed.]


 Date: Fri, 30 Jul 1999 09:23:32 +0900
From: Info <info@duri.net>
Subject: Re: Help me!

Hi, Gazette:

I am installing frontpage98 extentions on my Linux Server(Redhat5.2a). Installing root web was successful, but the problem occurred when I install virtual web. When I use the previous version of Linux(Redhat5.1), there was no problem. The list of virtual webs appeared, and I could select one of them. But now, the list shows infinitely like following.

...
11014) virtwebs11014
11015) virtwebs11015
11016) virtwebs11016
11017) virtwebs11017
11018) virtwebs11018
11019) virtwebs11019
11020) virtwebs11020...

Please help me. Can you tell me what the problem is?
Thank you.


General Mail


 Date: Sun, 25 Jul 1999 20:38:39 +0000
From: Benjamin Smith <bens@saber.net>
Subject: Suggestion for a column

It seems that most of the mail you get seems to be somebody with some kind of problem. while I guess it's to be expected, it sure makes for boring reading.

Anyway, I think it might be a good idea to pick an application field, say, Word Processing, or perhaps communication clients, (ICQ clones, perhaps) or stuff like that.

Review products with a fairly standard configuration, and rate the applications on useability, stability, features, easy of installation, etc. Perhaps even go so far as to have an editors choice?

It would certainly get my rapt attention, and it's something you'll find in just about every computer magazine worth any salt.

-Benjamin Smith


 Fri, 30 Jul 1999 09:59:10 -0400
From: "Michael Z." <michaelz@alphasoftware.com>
Subject: Retro Computing: User Friendly BBS

UserFriendly is a nice little site devoted to an online comic strip documenting some of the nuerotic characteristics of the Unix community.

While they have their own site www.userfriendly.org with all of the usual amenities, someone there has decided to do some "retro computing".

Someone found BBS software that runs under Linux, and has setup an old style BBS that you log onto via telnet. (T1 line, 64 lines max) Text or ansi interface, game doors (Trade Wars, for example [!]), etc., with lots of new stuff Coming Real Soon Now (tm).

Apparently this has struck some sort of chord, because they have had hundreds of new users on the first day, with lots of people mentioning how much they miss this stuff, etc. People who ran one line or two line BBSs in the old days two or three or four years ago. Looks like this is going to be very popular once the word gets out....

[NOTE, they have just sailed past 1000 users signed up after a day and a half, and still cruising strong]

For a quick link, check out bbs.ufies.org. You have to have a telnet client to actually log onto the BBS at telnet://bbs.ufies.org

compared to the old neighborhood BBSs I knew just a few years back, this is mind bogling....

There are so many people there who seem to miss the old style BBSs...

i'm amazed....
Michael Zawistowski
If builders built buildings the way programmers write programs, then the first woodpecker that came along would have destroyed civilization.



From: webmaster@taclug.org

My name is Berry Sizemore and I am a member of Tacoma Linux Users Group (TACLUG). Our organization is going to participate in the international Linux Demo Day Project. ["Tacoma" is Tacoma, Washington, USA. -Ed.]

"The purpose of the Linux Demo Day project is to provide a concurrent worldwide demonstration of the Linux Operation System to the "average" consumer who may only have heard of Linux but has never seen it, and to those that are not even aware that there is an alternative to running a Microsoft operating system."

We are reaching out to our community partners and businesses that may have an interest in sponsoring the event. For general information about the event, please point your browser to http://www.linuxdemo.org/ . We are currently seeking a location for our event and exposure by the local press. We are eager to promote Linux friendly businesses and organizations in exchange for promotion of our organization and events. The likely location for our demonstration will be in a high profile mall, local community center or school.

We plan a Linux installation workshop, a chess competition, a Quake competition and a tour of the XWindows interface. We are also going to answer the community's questions about the operating system and promote our organization as a resource for budding Linux professionals and hobbyists.

If your company can in some way help us raise the awareness of Linux Demo Day, find or offer a location for, or promote the event please contact me at: webmaster@taclug.org

Thank you!
Berry Sizemore
Webmaster of TACLUG
webmaster@taclug.org


 Date: Fri, 2 Jul 1999 17:32:46 -0500
From: "bob hamilton" <mail@bobh.to>
Subject: Linux

I have tried all three available versions of LINUX and can get none of them installed. REDHAT will recognize the mouse but not the video (SIS6326 AGP); SUSE won't even start; I cannot figure out what it wants in the way of disk-formatting; Caldera just will not boot. I have a Pentium III 450 mH; 128 Meg RAM; and 8.4 gig disk... LINUX ain't something "Slick Willie" GATES is going to lose any sleep over...

Bob Hamilton; Mail@bobh.to www.bobh.to


 Date: Sat, 03 Jul 1999 15:24:44 +0000
From: Moritz Bunkus <m.bunkus@tu-bs.de>
Subject: X-Anim etc.

Hello. Quite good article about playing video files. Just one remark.

You said you weren't able to find videos which xanim wasn't able to play. Unfortunately one rather popular movie, the second Star Wars - Episode 1 trailer, comes in Quicktime format and uses a Sorensen codec which is not supported by xanim.

--
Moritz Bunkus


 Date: Sun, 4 Jul 1999 17:43:07 +0200
From: Ian Carr-de Avelon <ian@emit.pl>
Subject: Bench marks

in lg 43 Jim Dennis writes:

Interestingly the term benchmark probably stems from physical "marks" (scratches or grooves), in work benches used by woodworkers and other craftsmen to provide handy measurements for their productions.

I don't think so. To me the Bench Mark is the "Broad Arrow" stamp used as the symbol of the British Courts ("Queen's Bench") and the crown. This is most familiar in old British films where convicts are shown in clothing with bench marks on the cloth. The bench mark is also found on many buildings in the British Isles (and probably the commonwealth?). These bench marks have a line above them and are miade by Ordenance Survey (now a company, but previousl part of the Army).

The height of the line above sea level is known to an acuracy of less than 1mm. They are points from which measurements are made during map making and building works, and would have had a role similar to GPS in the modern millitery has Britain been invaded after the Ordenance Survey was started at the begining of the Napoleonic Wars.

Yours
Ian


 Date: Mon, 05 Jul 1999 00:43:04 +0200
From: Thomas H <thomas@snt.nu>
Subject: Your question in LinuxGazette

Hi Ian!
These are my personal experiences with Linux - and how easy/hard it is to learn using it.

If I compare Linux to OS/2 or Windows, it's much more command-based. This can make it a bit harder to use in the beginning.

Especially to _configure_ different things in Linux can be difficult. So my conclusion is that you'll have to have some patience when learning Linux. I have heard that Caldera should be the easiest Linux distribution to install (I'm using SuSE so I haven't tried it myself.

However, I think that when more and more "normal" (i e non-technical people) start using Linux we'll see a shift towards a more user-friendly Linux. And there seems to be a really friendly atmosphere on the Internet where you can get high-quality Linux help

Yours,
Thomas H?jemo, Sweden


 Date: Mon, 05 Jul 1999 07:34:58 -0400
From: "P. Garrison" <pgarris1@twcny.rr.com>
Subject: Moving to Linux

Good day.

One thing I know that's been a bit of a barrier to people moving to Linux are applications that they're using written in a Microsoft development package and threfore, of course, using all Windows-relevant functions, calls, etc. If Linux is to move off the server and on to the desktop, in my opinion, functional development apps that can start with Microsoft based code, translate it to an XWindows GUI, and then run the programs under Linux. A tall order, I admit, but necessary to move the small ISV's and the people who use their programs over to the Linux camp. Otherwise it's going to be stuck like OS/2 was - sometimes the same software, but versions that were always feature-poor compared to their Win 'cousins.'

Something to think about.

Best,
P. Garrison


 Date: Sat, 17 Jul 1999 19:14:46 -0600 (MDT)
From: Michal Jaegermann <michal@ellpspace.math.ualberta.ca>
Subject: Kickstart Examples

Mark,
two aside comments to your article "Mark's Kickstart Examples" from issue 43 of Linux Gazette.

You write:

It would be nice if someone were to help make it so you can create a script which would automate the commands for fdisk. Perhaps there is and I just don't know about it.

There is really no need for that as for years there exists 'sfdisk' (probably short for "scriptable fdisk" :-). It is a part of util-linux package although Red Hat apparently only recently started to include binaries in their rpm archives. Sources were there "for always".

It has somewhat spartan user interface, although in some situations is very capable and I used it interactively without any problems. It is also very simple to script, to embed that into "disk cloning" scripts, and unbeatable in that. Its documentation includes examples of such usage. I have seen once in Linux Journal somebody bragging that they fed fdisk commands from stdin (doable but scary :-) to automate mass disk partitioning and I was always scratching my head why they work so hard. A reluctance to peek into docs, I guess.

I have no idea how to shoehorn that into kickstart operations without modifying the installation program itself. The later is always possible as Red Hat supplies all sources for installation utilities on their CDs.

I also have an impression that your Perl script at the bottom of the article tries hard, but not entirely correct, to emulate the following command:

rpm --queryformat '%{NAME}\n' -qp /home/ftp/RedHat60/RedHat/RPMS/*.rpm

Beside this list which you are after is basically ready in RedHat/base/comps on CD.

If you wonder what tags you can use in a format try to type 'rpm --querytags'; even 'rpm --help' says so. :-)

Regards,
Michal


Published in Linux Gazette Issue 44, August 1999

"Linux Gazette...making Linux just a little more fun!"


News Bytes

Contents:


News in General


 September 1999 Linux Journal

The September issue of Linux Journal will be hitting the newsstands in mid-August. This issue focuses on "cooking with Linux": fun things we can do with Linux, or how we can achieve our computing goals while still having a good time.

Linux Journal now has articles that appear "Strictly On-Line". Check out the Table of Contents at http://www.linuxjournal.com/issue65/index.html for articles in this issue as well as links to the on-line articles.

To subscribe to Linux Journal, go to http://www.linuxjournal.com/subscribe/ljsubsorder.html.

For Subcribers Only: Linux Journal archives are now available on-line at http://interactive.linuxjournal.com/


 Volunteer bike ride to promote Linux

My name is Karl Pena jackal@raptor.slc.edu.

I am an athlete. I've been addicted to linux for two years or more now.

I want to invite you to share in my project. I just graduated Sarah Lawrence College (where my colleagues and I learned linux to set up a student-run server: http://raptor.slc.edu). I am deeply involved in the non-profit ideals, and have coordinated major special events for various different organizations.

Linux Demo Day is coming up in September. This is a very exciting time for me and for linux, and I am going to give something back to the community.

I am planning a special journey, on bike, to spread the word on the beauty of Linux.

I would love to post something on your site, or advertise a paragraph in your magazine. I am low on cash, so I can't pay you right now. I just need a few sentences to invite any riders/hackers who want to be part of my epic journey, to come along. I can use donations, team-members, PR volunteers, co-grant writers, and sponsors.

[I sent him e-mail and it bounced. I hope he reads this and sends in a contact address, and that he finds the support and sponsorship he needs. Good luck, Karl. -Ed.


 Amiga to use Linux kernel, rumors of Transmeta connection

Amiga's CEO announced that the next generation of the Amiga Operating Environment (OE) will be based on the Linux kernel. In other words, the Amiga is about to become a Linux box. But it will have special drivers for the Amiga's multimedia hardware.
http://www.amiga.com/diary/executive/tech_brief1st.html

Soon afterwards, the Transmeta logo was spotted at an Amiga conference. Rumors are flying about a possible Linux kernel-on-a-chip (allowing e.g., the entire kernel memory in cache). Of course, Transmeta continues to keep mum about what its plans are.
http://www.metamiga.com
http://63.193.115.27/amiga/


 TurboLinux outsells Win98 and MacOS in Japan

"TOKYO, July 27-In a mark of the rising open source-code movement, TurboLinux has outsold the upgraded version of Microsoft's Windows 98 operating system and the Mac OS in Japan for the past three weeks, according to a market research company..."

Read the entire story at http://www.cnn.com/TECH/computing/9907/27/linux/index.htm

The rest is from a TurboLinux press release:

SAN FRANCISCO, Calif. - July 26, 1999 -TurboLinux, the leader in high-performance Linux, today announced that its newly released TurboLinux Workstation J 4.0 product was the best selling operating system in Japan, beating Microsoft Windows 98 and all other Linux operating systems in retail sales. In results released by Business Computer News, a market research company that analyzed sales at over 200 major computer stores throughout Japan, TurboLinux J 4.0 outsold every other individual OS product in the Japanese retail channel in its first week, including Windows 98 and other commercial Linux packages.

TurboLinux continues to consolidate its dominant position in the Pacific ic Rim, and the success of our TurboLinux J 4.0 product is indicative of our commitment to being a leading provider of high-quality Linux solutions,=94 said Cliff Miller, president and CEO of TurboLinux. The new TurboLinux J 4.0, launched the first week of July, gathered an impressive 24.09% market share, outstripping Windows 98 (9.15%), Macintosh OS 8.5 J (10.23%) as well as other commercial Linux distributions by a resounding margin, according to Business Computer News. In addition to the impressive sales totals for its first week, TurboLinux J 4.0 recently received a rare five-star rating in a review from PC Computi ng Japan, the publication's highest possible "extremely outstanding" rating. While the combined sales of all Windows 98 products including upgrades ee below) topped TurboLinux J 4.0 sales, the numbers clearly highlight TurboLinux's impressive presence and acceptance rates in the Japanese OS market.

Results from Business Computer News are as follows:

Product Marketshare
TurboLinux J 4.0 24.09%
MS Windows 98 Upgrade 13.25%
MAC OS 8.5 J 10.23%
MS Windows 98 9.15%
Virtual PC 2.1 (PCDOS) 6.84%
MS Windows 98 Academic 3.87%
MS Windows 98 Academic Upgrade 3.63%
RedHat J 5.2 2.64%
Vine Linux 1.0 J 2.03%
Virtual PC 2.1 (Win) 1.93%

TurboLinux is currently ramping up its U.S operations at its San Francisco headquarters and has, in recent months, forged key alliances with IBM and Computer Associates in a bid to extend its reach beyond the Pacific Rim into the North American Linux market.

English web site: http://www.turbolinux.com
Japanese web site: http://www.pht.co.jp


 Penguin Quad Xeon Linux systems -- 550 MHz

SAN FRANCISCO, July 1 -- Penguin Computing announced today that it has become the first company to offer Quad Xeon systems utilizing Intel 550 Mhz Processors. The Quad Xeons, like all Penguin Computers, run only Linux and are now the fastest Quad Xeon systems available.

http://www.penguincomputing.com


 Benchmark specialist invites Microsoft and Red Hat to a rematch

Chicago, IL -(June 1999) - Neal Nelson, benchmark guru and founder of the world's largest independent client/server testing facility, has extended an invitation to Microsoft and Red Hat to participate in an open, public performance comparison between hot operating system rivals Windows NT and Linux.

Nelson issued the invitation as a result of a recently published study sponsored by Microsoft.* One of the conclusions of the study is that "Microsoft Windows NT Server 4.0 is 2.5 times faster than Linux as a File Server and 3.7 times faster as a Web Server."

*Study conducted by Mindcraft, Inc., a software testing company based in Los Gatos, CA.

Many have questioned the test results because different tuning levels were used for NT than those used with Linux. For example, NT was tested with NT tuning, benchmarking and technical support from Microsoft, as well as Internet Information Server 4.0 tuning information from the Standard Performance Evaluation Corp.

Linux however, received almost no additional tuning, support or involvement from Linux-based technical sources. The testing lab cited difficulty in obtaining tuning information from Linux knowledge bases, and a query with Red Hat ended up going through the wrong channels.


 The Pia: a $199 Linux-based personal Internet appliance

(From a story by Stephen Shanklan, CNET News.com, July 6, 1999)

Ebiz Enterprises and its Linux Store unit have released what they call the Pia, a $199 device that will be marketed through Internet service providers. Prodigy, one of the Internet's oldest service providers, has already signed up to promote the Pia, which stands for Personal Internet Appliance.

The online service sees Linux, a rebel open-source operating system, as a good way to power either cheap Internet appliances or servers at the center of high-speed home computer networks, Prodigy chief technology officer Bill Kirkner said today. "This provides a very effective, low-cost alternative," Kirkner said....

In the longer term, Ebiz is planning to sell its Pia device bundled with Internet access for about $20 a month for two years, Rassas said. Prodigy wouldn't comment on whether it was pursuing such a deal with Ebiz, but a spokesman said the company is "working on expanding the relationship."...

The article also says sources have reported that America Online is evaluating a cheap Linux computer.


 Keynote speakers for the Open Source Software Convention

Sebastopol, CA--O'Reilly & Associates announces the keynote speakers for the Open Source Software Convention, to be held in Monterey, CA, August 21-24. Keynoters are:

Guy Kawasaki, CEO and Chairman, Garage.com
"Rules For Revolutionaries--Some Practical Advice for the Open-Source
Movement"
Monday, August 23rd, 9am
Guy is the former chief evangelist of Apple Computer. He is a columnist
at Forbes Magazine and author of seven books.

Bill Joy, Chief Scientist, Sun Microsystems, Inc.
"From BSD to Jini: Adventures in Technology, Openness, and Community"
Tuesday, August 24th, 9 am
Bill is a co-founder of Sun and a member of the Executive Committee.
He was the principal designer of Berkeley UNIX (BSD).

"The Open Source movement is clearly at a turning point. The question is which way will it turn--toward mass acceptance or toward a more limited impact. Our convention keynoters are in unique positions to comment on this turning point, offering insights on where Open Source has been and where it needs to go," said Joseph McIntyre, O'Reilly's Director of Conferences.

The Open Source Software Convention is a landmark gathering of the open source community. It features six concurrent technical conferences, covered under one registration fee. Participants may stay within a single conference to get maximum exposure to a technology, or they may attend any combination of presentations throughout all six conferences. The conferences include:

The Open Source Software Convention features over 120 presentations and 40 tutorials spanning four days, led by luminaries of the Open Source community such as Larry Wall, Guido van Rossum, John Ousterhout, Eric Allman, Eric Raymond, Kalle Dalheimer, Matt Welsh, Michael Tiemann, Tom Christensen, Randal Schwartz, Lincoln Stein, Doug MacEachern, David Ascher, Dick Hardt, Nancy Walsh, and Simson Garfinkel.

Further information and registration is at http://conferences.oreilly.com or 1-888-844-7024. For exhibition opportunities, contact John Dockery at john@oreilly.com.


 Red Hat Announces Nationwide Training

Durham, N.C.--July 13, 1999--Red Hat, Inc., a leading developer and provider of Linux-based operating system (OS) solutions, today announced that Global Knowledge, the world92s largest independent IT training company, will provide Red Hat92s hands-on, real-world training and certification nationwide for Red Hat Linux, including the Red Hat Certified Engineer (RHCE) program.

Taught by RHCEs with considerable internetworking experience, Red Hat92s certification program offers more than traditional, multiple-choice written exams and paper certifications.94 RHCE Certification requires success on performance-based practical exams, in which users actually demonstrate the ability to: install and configure Red Hat Linux, set up common network (IP) services, perform essential administration, diagnostic tests and troubleshooting, among other internetworking and systems administration tasks. Red Hat courses are available for the entire RHCE certification track, at levels appropriate for both beginners and networking professionals looking to migrate to open source solutions and build or expand their experience with Linux-based operating systems.

Under the partnership, Global Knowledge will begin offering Red Hat Linux courses in 15 cities nationwide. The first courses will be available starting in September 1999. Information on these courses, which are the same highly successful offerings currently taught at Red Hat92s North Carolina headquarters, is posted at http://www.redhat.com/corp/products_training.html and http://www.am.globalknowledge.com.


 Press release from Eklektix - those Linux Educators in the Rockies

Boulder, Colorado USA July 13, 1999 -- Eklektix has announced their September 93Linux Training for Professional s94 public class schedule. Building on successful classes since 1998 and a sell out public class in June Eklektix delivers Linux training for professions taught by engineers with real operating experience.

Eklektix92s first "Linux System Administration for Unix Administrators" classes will be taught in Boulder, Colorado USA September 20-21, 1999 and Septemb er 22-23, 1999. By assuming familiarity with the basic material, this course is able to delve deeply into the issues that are truly Linux-specific in just two intense days.

Eklektix92s weeklong "Linux System Administration" class is offered Sept ember 13-17 in Boulder, Colorado USA. This hands-on course covers all aspects o f the management of Linux systems, with an emphasis on the integration of Linux systems into larger, heterogeneous networks.

Full information for Eklektix92s public and on site classes including de tailed class outlines, prices, faculty biographies and more are available through http://training.eklektix.com.


 Rebel.com unveils the NetWinder Office Server

COMDEX, Toronto, ON - July 14, 1999 - Rebel.com Inc., a leading supplier of Linux, UNIX and Windows NT enterprise solutions, today unveiled the NetWinder(tm) Office Server, the newest addition to their suite of NetWinder Internet server appliances.

"The NetWinder Office Server is an office-in-a-box for small and medium-sized companies requiring secure Internet and in-house network services such as Web site hosting, Web access, file sharing, printer sharing and e-mail," said Michael Mansfield, president, Rebel.com. "With its straightforward set-up and ease of use, the Office Server provides all the tools required to ensure effective communications throughout an organization, in one affordable and high-performing package."

The NetWinder Office Server provides a full suite of Internet and intranet network services, including:

* Flexible Internet connection via an external dialup, cable or DSL modem,
or by a serial ISDN terminal adaptor. Web caching speeds up Internet access.
* IP Masquerading and Proxy Server features, which reduce ISP costs and
improve security, and Dynamic Host Configuration Protocol makes
administration easier to facilitate.
* Web authoring, hosting and publishing, with integrated support for
HTTP/1.1, Common Gateway Interface (CGI) and Perl Scripting.
* E-mail services supporting POP3 and IMAP4 mail protocols, including
automatic forwarding of messages and mail filter creation.
* Network Address Translation firewall, Port Forwarding and Virtual Private
Networking features as well as remote access via the Internet with optional
client software.
* Cross-platform file sharing and transfer between the NetWinder Office
Server and users of Linux, Unix, Windows and Apple platforms.
* Document indexing and searching capabilities enable users to organize
documents into categories and assign searchable properties, such as
keywords, to facilitate information access.
* Public and private threaded discussion, allowing workgroup communication
and collaboration.
* Print serving capabilities through the use of an attached printer that can
be used as shared network printer. Several hundred printer types are
supported.
* Detailed technical reporting quickly provides administrators with
statistics about uptime, memory total/used, swap total/used, load averages,
number of TCP connections, number of UDP connections, log files and Web
throughput.


 HELIOS supports dual processing on Linux

July 14, 1999 Garbsen, Germany HELIOS Software GmbH announces its network and prepress server software now fully supports multiple processors running the Linux operating system on Pentium-based computers.

HELIOS already supports single-processor computing with its currently shipping CD014. This version contains a bootable Linux runtime based on RedHat 5.2 using the Linux Kernel 2.0.36 to support the HELIOS software applications as well the Linux TCP/IP, NFS, FTP and Web services to serve Macintosh, Windows, UNIX and Internet clients.

For U.S.-based sales information, contact: European Mikrograf Corporation, HELIOS Software GmbH.'s U.S. distributor, located at 269 Mt. Hermon Road, Suite 100, Scotts Valley, CA 95066; 831-461-6061 (voice); 831-461-6056 (fax); Internet: info@ugraf.com, http://www.ugraf.com.


 Applix announces SmartBeak.com (a Linux support site)

Westboro, MA, July 15, 1999 -- Applix, Inc. (NASDAQ:APLX), a leader in applications for Linux and UNIX markets, announced today that the company has launched a new web site, http://www.SmartBeak.com, to bring together the support and collaboration needs of Open Source Software developers and users.

"We created the SmartBeak.com website to address the need in the Linux and Open Source Software community for a more structured approach to providing knowledge and managing support issues," said Jit Saxena, Chairman and CEO of Applix. "We are seeking to position SmartBeak.com as the website that brings users and developers together in one place and helps them to work together in a collaborative fashion. Futhermore, we believe that usage of this website will help foster the development of Open Source Software applications."

SmartBeak.com users are able to search a knowledge base for documents containing information for solving their issues. The information is made up of How To, Frequently Asked Questions, HTML, and support database texts which SmartBeak.com automatically updates and indexes.

According to Michael Prince, Chief Information Officer, Burlington Coat Factory, "We are preparing to roll out a distributed network of Linux workstations and this project provides us with the challenge of obtaining support for certain components of our solution." He continued, "SmartBeak.com will be a valuable resource for us and our vendors to use as a knowledge base, support and collaboration mechanism."

LinuxPPC, Inc., the leading provider of the Linux operating system for the Macintosh platform, will be the site's first signed software partner. Jason Haas, Webmaster and technical support supervisor at LinuxPPC said, "SmartBeak.com represents an opportunity for us to manage our users' questions and problems, and gives us the ability to route and escalate issues to the developers in the community, many of which are geographically dispersed. In short, we expect that by using SmartBeak.com we'll be significantly improving the support and development of our Linux distribution."

Unlike many other web-based support sites for Open Source Software products, SmartBeak.com provides a problem report entry and tracking system to enable users to post questions or log issues and track their progress. Developers worldwide, responsible for products represented on the SmartBeak.com site are able to access these items, assign or escalate their priority and using SmartBeak.com's workflow engine, assign issues to the appropriate developers within their communities.

For each posted question or problem report that a user creates, a message board system allows other users and developers to collaborate on the resolution of the issues. A user customizable section of the site, called my.SmartBeak.com provides an instant update of the progress of their own issues.


 Debian Available Preinstalled on Laptops

[note: This announcement was written by Linux Laptops Ltd.]

San Jose, CA, June 30, 1999 -- The Debian Project has claimed another hardware vendor commitment, this time from Linux Laptops Ltd.

Linux Laptops is the only hardware vendor devoted exclusively to delivering portable computers with Linux software installed and ready to use.

Linux Laptops Ltd. is the Debian Project's second public "win". The first was Corel Corporation's choice in April of the Debian GNU/Linux distribution as the basis of their Corel Linux Desktop.

"We chose the Debian distribution both for its great reliability and for the huge number of application packages the project maintains," says Nathan Myers, Linux Laptops Ltd.'s president. "Our customers leave installing to us, and a graphical installation tool would just get in our way. The Debian Project has concentrated its efforts on reliable operation and easy, safe upgrades, because you only install once, but you live with the software for years after."

Laptops with Debian GNU/Linux pre-installed can be ordered via the company's web site, . 32BitsOnline.com today announced that it has renamed recently acquired Bleeding Edge Magazine to 0x20.com. Press Release to follow:


 Bleeding Edge magazine renamed to 0x20.com

Vancouver, BC July 27, 1999 - Medullas Publishing Company, parent company of 32BitsOnline Magazine (www.32bitsonline.com), Linux Applications (www.linuxapps.com) and Linux Talks (www.linuxtalks.com) today announced that it has renamed recently acquired Bleeding Edge Magazine to 0x20.com.

""32BitsOnline Magazine needed a developer site", said Ronny Ko, Editor-in-Chief for 32BitsOnline Magazine, ""and 0x20 fit the requirements well." 0x20.com will serve as not only the Linux community's centre for information exchange but follow 32BitsOnline's vision, 0x20.com will also provide information about programming on other operating systems such as BeOS, OS/2 and all the Unices, added Ko.

""While focused on furthering development of Linux, 0x20.com's main goal is to further the development of Open Source software and cross pollination of freely available source code across all platforms to the BeOS and visa-versa", "said Derek Barber, site administrator for 0x20.com.

0x20.com will be launched early this Fall along with LinuxTalks.com. 0x20.com welcomes developers to contribute. Interested persons should contact Ronny Ko at ronnyk@medullas.com.

Medullas Publishing is the parent company for 32BitsOnline Magazine (http://www.32bitsonline.com/) and Linux Applications (http://www.linuxapps.com/).


 Linux is #1 in Antarctica

Framingham, MA, July 1999 - Antarctica IT, Inc. announces the first consulting company in New England dedicated to service and support for the Linux operating system and related Open Source software.

"Linux is already in use in many organizations", says Scott Shaw, CEO of Antarctica IT, Inc. "Now IT managers are looking for professional support. We are there to help these businesses with on-site service and with the skills needed to develop custom solutions on the Linux platform."

To learn more about what Linux means to your business, call Antarctica IT at 1-877-DO-LINUX, or visit their web site at www.antarcticait.com.


 Morton Bay to discuss embedded Linux platforms at LinuxWorld

Pacific Grove, CA - July 26, 1999--Moreton's chief software wizard, Greg Ungerer is presenting a technical paper at the Linux World Conference in San Jose CA on August 11th 1999. In Greg's paper, Building low cost embedded network appliances with Linux, he presents Linux as the new standard for embedding in internet appliances and internet devices.

The embedded market includes all intelligent electronic appliances that use a microcontroller or microprocessor. There are already ten times more embedded appliances than desktop personal computers in use today, and this number is projected to grow substantially. According to IDC, the global market for information appliances will grow at a 76% compound annual growth rate from 1998-2002.

After the Linux World Conference, Greg will return to Australia to present his Embedded Linux experiences to local linux community at Open Source - AUUG'99 in Melbourne on September 9th 1999.


 Linux links

Linux and GNU certification exams by Sair Linux and GNU and Sylvan Prometric: http://www.linuxcertification.com

Bay area recruiter looking for somebody to develop a 2-3 day Linux training course outline:
Woody Garrett, Technical Recruiter, Bryson Myers Co., 2083 Old Middlefield Way Suite 206, Mountain View, CA 94043 USA, 650-964-7600 x325, 650-964-7655 Fax, 888-774-3721 Pgr, wgarrett@hooked.net

Ziatech Corporation is offering the source code for its multiprocessing drivers: http://www.compactnet.com/ (Ziatech will showcase the New CompactPCI Linux(tm) Development Platform at LinuxWorld Expo in San Jose (August 1999).

IBM DeveloperWorks new Linux Zone for developers: http://www.ibm.com/developerWorks

Debian now available on Indybox hardware: http://www.indybox.com/

LinuxPR contains case studies of how Linux is penetrating into the business community: http://linuxpr.com/releases/118.html

Linux screensaver for Windows

News.com article about how Microsoft is evaluating Linux the way it evaluates other competitors

High-Availability Linux

O'Reilley: new edition of the "Webmaster in a Nutshell" book http://www.oreilly.com/catalog/webmaster2/

Software and hardware reviews (including games) for alternative OSes. The site is looking for reviewers. http://www.reviews-r-us.com/


Software Announcements


 Stormix: an easy to use, Debian-based Linux distribution

Vancouver, Canada - July 6, 1999: Stormix Technologies announces the alpha version of a new Linux distribution called Storm Linux. Based on the Debian GNU/Linux distribution, Storm Linux is designed to be easy to use and simple to install. Its target market is both the server and the desktop market.

The Debian distribution is already stable and secure, says Kevin Lindsay, project leader and developer for Stormix. By using Debian as our starting point, we can bring Linux to new levels of excellence and user accessibility.

All development for Storm Linux will be Open Source. We believe that the Open Source model is a strong one, Lindsay says. We will be using the GPL or a related license for all of our products.

For administrators, a key feature of Storm Linux is the Storm Administration System (SAS). Designed for local and secure remote administration, SAS features a single code base for all administration modules, which reduces the number of bugs. By separating the application from the client interface, SAS also improves remote connectivity and allows the quick creation of graphical and text interfaces.

For end-users, Storm Linux includes a choice of:

Depending on the install choices, a new user can be running Storm Linux in as little as fifteen minutes.

The final release of Storm Linux is expected for the fourth quarter of 1999.

Stormix Technologies was founded in February 1999 with the goal of providing the tools and applications that Linux needs to enter new markets. Initial investors include David Talmor, NetNation Communications Chairman and CEO, and Joseph Kabul, NetNation Communications COO.

After using the Linux operating system to build a world class web site hosting service, we were convinced that Linux has huge potential, Mr. Talmor says. As a result, we decided to establish a new company that focused specifically on the creation of a powerful and user-friendly distribution of the operating system. That distribution is Storm Linux.

Stormix Technologies is an independent company, and not directly affiliated with NetNation Communications.

Copies of the alpha version of Storm Linux are available via FTP at ftp://download.www.stormix.com or from the company web site at http://www.stormix.com.

We welcome detailed feedback from alpha testers, Lindsay says. We're looking for users with the enthusiasm and commitment to take part in an exciting new direction for Linux.


 TurboLinux Workstation 3.6

SAN FRANCISCO, Calif. - June 29, 1999 - TurboLinux, the leader in high-performance Linux, today announced it is shipping its newest English language offering, TurboLinux Workstation 3.6. Based on the 2.2.9 Linux kernel, TurboLinux Workstation 3.6 retails for $49.95 and is currently available from the company's web site at www.turbolinux.com. It will be available in North America through retail outlets and resellers later this summer.

"TurboLinux is best known as the Linux leader in the Pacific Rim through our Japanese and Chinese language products," said Cliff Miller, president and CEO of TurboLinux. "TurboLinux Workstation 3.6 is the first of a series of forthcoming Linux offerings that are designed to meet the needs of high performance Linux users in North America and illustrate our ongoing commitment to this market. On TurboLinux Workstation 3.6 we've also improved the installer that Forbes Online and other reviewers described as the best in the market."

TurboLinux, formerly called Pacific HiTech, is quickly emerging as a dominant, global player in the Linux industry with offices in the U.S, Japan, China and Australia. It recently announced major alliances with IBM, Computer Associates and Hewlett-Packard. The company has shipped more than two million units of its Linux products in the past 18 months. After TurboLinux 3.0's December 1998 introduction in Asia, it rapidly outsold Microsoft's Windows NT (2000) at Japanese retail point of sale outlets, according to the Asia-Pacific high technology analyst firm, Computer News. Further, the product was voted "Editor's Choice Best Software Product for 1998" by Byte Magazine in Japan.

[Different-language editions of TurboLinux have different version numbers. The current English edition is 3.6. The current Japanese edition is 3.0. The Chinese edition is 3.0.2. There is also a TurboLinux Server 1.0 Japanese. -Ed.]


 Active Tools Clustor 2.0 for Beowulf

Active Tools is pleased to announce that beta version of Clustor 2.0 for Linux Beowulf clusters is available for download from http://www.activetools.com

With Clustor, existing applications can be rapidly adapted for execution on a Beowulf type computing clusters. Clustor can also be used to utilize idle computing power of other networked computers.

Clustor provides an easy and intuitive environment to build distributed compute intensive applications, which offers significant time and money savings. Unlike other tools for development of distributed and parallel programs, no reprogramming of existing applications is required.


 Caitoo 0.6.4 - Internet download manager for KDE

Caitoo ( formerly known as KGet ) is a download manager similar to Go!zilla(tm) or GetRight Download(tm). It keeps all your downloads in one dialog and you can add and remove transfers. Transfers can be paused, resumed, queued or scheduled. Dialogs display info about status of transfers - progress, size, speed and remaining time. Program supports drag & drop from KDE applications and Netscape.

Title:          Caitoo
Version:        0.6.4
Entered-date:   7 July 1999
Description:    Internet download manager
Keywords:       KDE, QT, ftp, download, resume, queueing, kget, caitoo
Author:         koss@napri.sk (Matt Koss)
Maintained-by:  koss@napri.sk (Matt Koss)
Primary-site:   http://tux.kawo2.rwth-aachen.de/~caitoo
Alternate-site: ftp://ftp.kde.org/pub/kde/unstable/apps/network
Original-site:  http://tux.kawo2.rwth-aachen.de/~caitoo
Platforms:      Linux, Qt 1.42, KDE 1.1
Copying-policy: GPL


 Magic Software news

Magic Software has formed an Australian subsidiary for the e-commerce market in the Asia-Pacific region.

Magic also offers Magic 8.20 for developers deploying enterprise database applications (traditional or web-based). The current Linux product supports only Oracle and Informix databases, but others are supported on their other platforms and are expected to be ported to Linux in the future.
http://www.magic-sw.com

COME MEET MEL, Magic Software's LIVE Magic for Linux Really Cool PENGUIN at the LinuxWorld Expo. MeL, along with Jack Dunietz (Chief Executive Officer of Magic) and MAD DOG HALL (a founder of the Linux movement), will host a PRESS CONFERENCE on TUESDAY, AUGUST 10, 1999, at 9:00a.m. in Meeting Room K at the San Jose Convention Center to introduce eMerchant for Linux, Magic's new b2b e-commerce solution for the Linux patform. In addition, MeL will introduce Magic's new president of U.S. operations, Rephael Inbar., while Mad Dog will discuss new developments regarding Linux.


 Linux Games Coming to the PowerPC (Loki and Terra Soft)

Loveland, CO, July 14, 1999 Terra Soft Solutions and Loki Entertainment Software announce a strategic alliance to bring best-selling PC games to Linux on PowerPC computers -- in some cases before those same games are available for the MacOS.

Loki Entertainment Software has become a strong force in the gaming industry, licensing MacOS and Windows games and porting them to the Linux operating system. Terra Soft Solutions has quickly established itself as a leader in the Linux for PowerPC arena. Through the partnership, Loki and Terra Soft will combine their efforts to bring Linux games to PowerPC computers.

In addition to working with Loki to bring Linux games to the PowerPC, Terra Soft will soon offer game bundles with its Yellow Dog Linux Gone Home distribution. Retail versions of Loki's games, which will include both the i386 and PPC versions, will be available as stand alone products for sale directly from Loki, Terra Soft and other software retailers.

Loki plans to bring a wide variety of games to Linux, including the most popular action, adventure, and educational titles. Loki's current product line includes Civilization: Call to Power, Myth II: Soulblighter, Railroad Tycoon II Gold Edition, and Eric's Ultimate Solitaire. A total of 8 titles are planned for release in 1999. http://www.lokigames.com. Based in Loveland, CO, Terra Soft is the developer of Yellow Dog Linux for Apple Macintosh G3 and PPC computers. Champion Server, their flagship product, is a highly professional distribution geared toward a wide range of network applications such as ISPs, corporate intra/extranets, web and network servers. Terra Soft recently introduced Black Lab Linux, a parallel computing system for research and development facilities. For more information about Terra Soft Solutions, visit their website at www.terrasoft solutions.com.


 SourceGear (AbiWord) acquires Cyclic Software (CVS)

SourceGear Corporation announced today that it has acquired Cyclic Software. We are looking forward to the opportunity to be involved in the support and development of CVS, and we hope to carry on with Cyclic Software now that its previous proprietor, Jim Kingdon, has moved on to another position.

SourceGear is a new identity for an existing company, and I'd like to take this opportunity to tell you who we are.

First of all, SourceGear is the founder and sponsor of the AbiWord project. (AbiWord is a cross-platform word processor being developed by individuals here at SourceGear as well as many others in the broader community. It is distributed under the GNU GPL, the same license as CVS.) We are active participants in the free software world. Our experience in leading the development of AbiWord has taught us a great deal about community-developed projects. We intend to serve the community as active maintainers of CVS and provide leadership in the ongoing development of this important tool.

SourceGear also sells a line of developer tools for users of Microsoft Visual SourceSafe (Microsoft's version control tool). Our products, including SourceOffSite and SourceSurf, are used by thousands of customers all over the world. Our experience in the development and support of these products, including version control technology and customer support, gives us great confidence in our ability to service the needs of Cyclic's existing customers.

We are very pleased to be involved with the support and development of the most popular version control tool in the Open Source world. We ourselves are active users of CVS, and it is important to us that it continue to grow and be maintained proactively.


 SuSE Linux 6.2 debuts August 9

Oakland, CA -- July 21, 1999 -- On August 9th, SuSE Linux 6.2 for x86 will be released worldwide, and, like its predecessors, boasts a host of new and interesting packages. The new release will make its public debut at Linux World Expo in San Jose, CA, when SuSE demonstrates its features at their booth, August 10 - 12 at the San Jose Convention Center. Highlights include:

- Over 1300 applications and utilities on six CD-ROMs -- even more
software at the same price as the previous version

- Kernel 2.2.10 -- the latest Linux kernel

- Completely glibc 2.1-based (with continued support for libc5 programs)

- VMware (time-limited) -- run DOS-, FreeBSD-, Windows 3.x, 9x and NT
4.0-applications easily under Linux

- XFree86 (TM) 3.3.4

- Hardware accellerated OpenGL drivers for all 3D fx-based graphics 
cards 

- User authentification with PAM

SuSE Linux 6.2 includes the latest Linux kernel, 2.2.10, with markedly improved performance under high loads.

The 1300 applications in the distribution include updates of applications previously released on SuSE Linux, such as StarOffice 5.1, KDE 1.1.1, Apache 1.3.6, GIMP 1.1.4 and sendmail 8.9.3. There are also many "firsts" such as VMware and RealPlayer 5.0.

According to SuSE Inc. President, Marc Torres, "This distribution includes many features that will be of interest to IT professionals. System administrators benefit from the state-of-the-art drivers in 6.2, such as for SCSI controllers by Adaptec and Tekram as well as for Megaraid controllers from AMI. Administrators of heterogeneous networks will appreciate the support for NIS, NIS+ (with Secure RPC) and smb, as these facilitate user administration on the network."


 Macmillan: UK release of Linux-Mandrake and Quake 1 & 2

Macmillan Computer Publishing announced the UK release of two LINUX products in July featuring Linux-Mandrake: "The Complete Linux Operating System 6.0" and "The Complete Linux( Deluxe Operating System 6.0". Both are based on Red Hat 6.0 with enhancements from Mandrake. The enhancements include:

Optimised for Pentium( class or compatible processors (AMD Kx, Cyrix, Pentium) for faster running, this Mandrake version of Red Hat 6.0 is built on the more recent kernel 2.2.9 (as opposed to 2.2.5) providing better drivers and easier installation. The pre-configured K Desktop Environment [KDE] is the latest version 1.1.1, and can be launched under the Gnome interface and vice-versa for even more flexibility. Several window managers are provided for maximum customisation to suit the way you work. True desktop productivity allows you to drag'n'drop files and access devices directly from the desktop. Included is a range of desktop applications for graphics editing, word processing, personal information and financial management. Special versions of PartitionMagic and BootMagic are included for easy install of Windows for dual boot options.
The deluxe version also includes:
... `StarOffice 5.1 Personal Edition', a complete office productivity suite that can act as a fully integrated desktop. Includes word processing, spreadsheet, graphic design, presentations, database access, HTML editor, mail/news reader, event planner, and formula editor. StarOffice features a very familiar and intuitive user interface that allows experienced office users to be productive almost immediately.

Macmillan also announced the forthcoming UK release of Quake The Offering and Quake II Colossus for the Linux operating system, the first in a range of `classic' games due for release on Linux from Macmillan Digital Publishing this year.

Macmillan Digital Publishing


 Other software

Digital Image Professional 3.0 by Power Quest Corporation: clone another computer, remote configuration, backups for several OSes including Linux. http://www.os2.co.za/software

PHP4 version 4 beta 1 has been released. PHP is a server-side web scripting language, much like MS ASP. http://www.php.net/version4/ Stalker announced the LinuxPPC Version of its CommuniGate Pro mail server. A free trial version available at http://www.stalker.com/CommuniGatePro/.

Open source disk partitioner from Linux-Mandrake: http://www.linux-mandrake.com/diskdrake/

Cygnus to deliver GNUpro software for Solaris. This provides a common development environment for Solaris and Linux across SPARC and Intel platforms: http://www.cygnus.com/gnupro.html

Giganet extends cLAN interconnects to Linux platform. The company also announced a commitment to the Open Source movement and will make cLAN for Linux software available to all Linux designers and developers. http://www.giganet.com/

Loki Games new web site: http://www.lokigames.com


Published in Linux Gazette Issue 44, July 1999


Contents:

(!)Greetings From Jim Dennis

(?)Linux and Windows 95 --or--
Running Win '95 Apps under Linux
(?)PPP disconnect --or--
PPP + minicom Disconnects
WvDial Success
(?)Linux Partition conflicting with Win98 --or--
Makes Windows Explorer Choke
More complex than that, really.
(?)ftpacess and the Incoming Conundrum
(?)IP forwarding and Linux
Turning it off.
(?)IP forward --or--
TCP/IP Port Relaying
(?)This month's "paltry" offerings --or--
Typos
(?)can't help it --or--
Spellcheck Award!
(?)ppp & voicemail
(?)Unsupported Floppy Formats: 'dd' Maybe
(?)minicom --or--
Minicom Calling a Procomm Host
(?)AHA 2940 SCSI timeout errors --or--
Plug and Pray SCAM
(?)Desqview/Linux --or--
Assembly Language Programming for an old DESQview User
(?)DESQView 386 --or--
DESQview/386 Die Hards into the Next Millennia
(?)cdr's --or--
CDR Media: Silver and Gold and Blue, Oh my!
(?)get to know --or--
Downloading a copy of Linux
(?)quick swap Q --or--
And from Radioland....
(?)video timings needed --or--
Video Timings: Configuration Curse
(?)Help ! --or--
Accessing Private Net Addresses from the Public Internet
(?)Linux gazette article, July 1999
(?)Dao --or--
Helpless
(?)linux memory --or--
Free Memory vs. Buffers
(?)Copying boot partitiion
(?)I am a begining Linux user, PLEASE Help! --or--
SiS 6326 and XFree86
(?)ide-cd module --or--
Reading CD Discs on an IDE CDR Drive
(?) LILO problem.. again --or--
Persistent LILO: Won't Start! Won't Go Away!
(?)Question --or--
The Lost Art of Helper Apps
(?)finding Changelogs --or--
Kernel Patches and Change Logs
(?)Installing Win NT 4.0 Workstation and Dual booting Win NT 4.0 Workstation and Win 95 B
(?)pc-mos --or--
5 1/4" Floppies: Truly Dead
(?)Hdd track 0 bad. --or--
How to Use a Disk with a Bad Track 0
(?)Benchmarks
(?)DosLinux --or--
What part of "Win Modem" Didn't you Understand?
(?)128M Ram question --or--
Seeing only 13M of RAM
(?)A Fair price for CD duplication --or--
CD Duplication Services: Spam?
(?)Proxy server --or--
Proxy Program?

(!) Greetings from Jim Dennis

Well, the book is done at last. It's off to the publishers and beyond our control. Naturally M and I are are already thinking about things to improve for the second edition.

Meanwhile in "Answer Guy" land I was a bit surprised by the reaction to my comment on Bernie's "parenting" from last month. I expected a few flames, and maybe one or two notes of agreement. Naturally I hesitated to even respond to the question at all.

I figured someone would toss the old "what do you know about being a parent?" bomb at me. Of course, I don't know anything about "being a parent;" not first hand, so far. However, that's not the reaction I got. I had several people drop me notes and come to me in person to say how much they agreed with me. At least one was a grandparent.

However, I did neglect to add one thing to my flame. Normally when I "flame" someone (in my column or in e-mail/netnews) I also answer their question. In this case the answer to Bernie's question came within a couple of weeks after I wrote my response to him.

Back Orifice 2000.
http://www.bo2k.com/

This package, a freeware (and open source) product of the cDc (Cult of the Dead Cow) offers just the features that Bernie was looking for. Using it you can perform keystroke logging, take screen shots of your victim's work (or play), redirect their TCP/IP traffic so that it all goes through your system, play with their filesystem (almost undetectably) and (of course) surreptisiously install any other software you like.

The BO2K server runs on NT, Win '95 and Win '98 (and on the most recent betas of Win 2000, from what I hear). There are clients for Win32 (of course), and command line clients for Linux and other forms of UNIX. Since BO2K is open source it can probably be ported to as many other UNIX-like operating systems as you like.

It might be interesting to see what happens when some programmers start combining features of BO2K with VNC (Virtual Network Computing) a package which provides GUI remote access to Win32 and MacOS platforms. VNC clients are available for Linux, Win32, and Java (among others).

Both VNC and BO2K are released under the GPL, so they should be license compatible. We don't run into the sort of problem one would face when trying to mix BSD and GPL code (for example).

Of course BO2K was released after my message to Bernie. However it is an upgrade (a complete re-write, from what I've read) to the original BO. BO was released last August. The fact is that I didn't know much about BO. I'd heard about it, of course. However, I don't administer any Windows systems and I have no interest in using trojan horses. So I simply filed it away as evidence of vulnerabilities in "that legacy operating system from Redmond."

UNIX and Linux are riddled with vulnerabilities. We find new buffer overflows and race conditions every week. Most are simple programming errors that are fixed as quickly as they are found. Occasionally we find exploitable flaws in the kernel (like the LDT, local descriptor table, bug that Linus found a couple of years ago). Those are also fixed quickly.

This suggests that the design of UNIX is relatively sound with respect to security, since the bugs are at an implementation level. They are easily fixed.

It also suggests that the design is limited. It is very difficult to write "secure" code for Linux and UNIX. In particular it seems that the standard C libraries are a poor base for writing robust applications code. The most straightforward ways to accomplish many operations in C through the standard libraries (scanf(), printf(), system(), popen()) are simply inappropriate for working with untrusted data or being run in any security context other than that of the user who is executing it. In other words, SUID and SGID programs, and daemons should eschew many of the standard library functions. The programming expertise required to distinguish between the "safe" practices and those that are exploitable provides us with a severe limitation to the security of our systems.

I asked a programmer and design engineer (the major force behind the design of the Corel Netwinder) about the sorts of bugs that are exploited by BO2K to gain full control of NT and W2K systems. Basically I asked if the released version of W2K could fix these holes to prevent BO2K from being used as a trojan. He said that the nature of these bugs is far too pervasive to be fixed by Microsoft in the remaining time before their final release. The APIs used by BO2K are apparently also used by many other products and parts of the OS.

I'm not a programmer. However, that does sound like a design level problem. It suggests that no amount of implementation effort will "fix" the problem. This is consistent with other things I've heard and read about NT since before version 3.0 (the first release).

So, I'm glad I invested the time to learn UNIX and Linux rather then spending the time in the rat's wheel to learn the guts of NT. The important things that I learn about Linux are applicable to other forms of UNIX, and will be around for as long as these operating systems exist. The few things I learn about NT and other MS operating systems are going to be obsolete within one or two future releases of the system.

The whole issue of BO2K as a "trojan horse" is interesting. Naturally Microsoft would like everyone to focus on the "hacker" (cracker, actually) image of the cDc. They characterize BO2K as purely malicious. The cDc makes this easy with their irreverant attitude and provacative "marketing." I personally don't like the name of the group or their product. However, it would be shooting to messengers to discount the value of the package based solely their name.

BO2K is just a tool. It has no ethics. It has legitimate uses. It can be put to unethical uses. The exploitable flaws that allow it to be used perniciously should be fixed.

A Melissa or WinExplorer.zip style delivery of a BO2K derived trojan is a major security risk for all organizations that rely on Win32 based systems (NT, '9x, and W2K).

We can be thankful to the cDc that they chose to publish these, so that everyone including Microsoft has a chance to address the real problem --- and we can only wonder how long these bugs have been secretly exploited by more clandestine groups and individuals.

In last month's blurb I talked about the Linux reaction to an "offensive" messenger (Mindcraft). My point was that the Linux and Apache developers didn't ignore the message while discrediting the messenger. We'll see if Microsoft can learn from that example.

Meanwhile, Bernie, if you're reading this, feel free to use BO2K. I'll let you wrestle with your own conscience and come to your own conclusions about the ethical implications and practical repurcussions of *how* you use it.

In the past I've occassionally tried to honor a "tech of the month." Unfortunately I haven't had the time to maintain that as a tradition. This month, for variety, I'll point to a "link of the month:"

Linux Games - Even Penguins Like To Have Fun
http://www.linuxgames.com/

Meanwhile, if you haven't had enough of my writing for one month, look to the Linuxcare Inc. web site in coming weeks. I may be writing to a more "corporate" audience there on a regular basis.


(?) Running Win '95 Apps under Linux

From Jason Holbrook on Mon, 19 Jul 1999

Hello Jim,

I like the look of your web site. Very unique. Well to the point. I know you guys make money on consulting so, I will ask you to help me later when I get ready to setup. But for now, I am curious about the Windows 95 programs and the operating system Linux (preferbly RedHat Linux 5.1) I was wondering if it was possible with a emulator or to edit the kernel to run some Windows 95 programs in Linux or to run Windows 95 as a shell? Any references or books you could refer me to, I would appreciate it.

(!) I'm guessing that you've come across my website at http://www.starshine.org. Actually I do very little work on that these days. I spend far more time providing content to the Linux Gazette (http://www.linuxgazette.com) where I do the "Answer Guy" column. (No, I didn't pick the name. Yes, your question and my answer are being posted there).

[ I'm the one who did the new styling for the starshine.org site. This seems very appropriate since it's the home site for my consulting business. It's my belief that every company should have something that's a little unique about their site. Everyone's welcome to come take a look at mine :) -- Heather ]

I answer general technical support questions (such as this one) via e-mail and netnews. Some of them I cross-post to my editors at LG, who gather them up, run them through a custom mail2HTML filter (written by my wife, Heather), and with a few manual touchups, post them to the web where they can get indexed by Alta-vista, Yahoo!, Deja News, and all the rest. LG is also widely mirrored and seems to get translated into a few other languages (since I occasionally see parts of my own writing popping up in various languages that I don't speak).

[ Translations listed on the mirror sites page: French, Chinese, Italian, Russian. I seem to remember something about Hungarian too, but I could be mistaken. -- Mike Orr ]

Officially the Linux Gazette is part of the Linux Documentation Project (LDP: http://sunsite.unc.edu/LDP) and is released under a variant of the GPL (the GNU Public License) --- in basically the same was as the Linux Kernel and all of the GNU software which is used to build it and the GNU software which runs under it.
In answer to your question:
In my past columns I've answered similar questions several times. All of the back issues are available online so you could check out:
Issue #17
http://www.ssc.com/lg/issue17/answer.html
Brief mention of WINE and suggestion to just access your Unix/Linux systems from a "real Windows" system over telnet. Back then I didn't know about MI/X (http://www.microimages.com/freestuf/mix/index.htm) a free X server for Windows and Mac platforms from Microimages; and I didn't feel like mentioning the multitude of commercial X servers for Windows.
Issue #24
http://www.ssc.com/lg/issue24/lg_answer24.html
Clarified and allayed someones concerns about running WABI on Linux distributions other than Caldera; mentioned WINE, DOSEMU and others.
Issue #29
http://www.ssc.com/lg/issue29/tag_msmail.html
List of five alternatives for access MS mail from Linux).
Issue #32
http://www.ssc.com/lg/issue29/tag_msmail.html
Open letter to Insignia Solutions suggesting that they port SoftWindows to Linux, written to them when they sent me a postcard touting their ports to various non-x86 Unix platforms. With their response and a link to a "survey" and (potential) customer comment form.
However, there are better sources of information on the web, written by people who are actually involved in some of these efforts. So far the best collection of links that I've seen that related to running Windows software under Linux and other forms of Unix is at the WINE Headquarters (http://www.winehq.com) under their listing of "Other Related Projects" (http://www.winehq.com/others.html).
A particularly promising package which was only released fairly recently is VMWare. This seems to reliably run Win '9x, NT and even Linux from within a virtual machine. More info at: http://www.vmware.com
In issue 30 and again in 32 (above) mentioned the Microsoft WISE offering (http://www.microsoft.com/win32dev/base/wise.htm).
WISE is a cross-licensing deal to allow vendors to port Windows programs to RISC (non-x86) platforms. This is also noted, by name, on the WineHQ page.
The purpose of this is obvious. Legitimize the use of Windows products on "non-competing" versions of Unix (those for non PC hardware platforms) in an effort to curtail the groundswell of support for the PC Unix variants, particular the free Linux and Unix systems. Microsoft also seems to be releasing "Unix" versions of some of their products --- on a few *non-PC* platforms (particularly ironic since they still own a stake in SCO and they steadfastly refuse to support ports of their own products to that platform).
It's impossibly to address this situation from a purely technical point of view. The problems are political, and have very little to do with technology or even the finances of any particular product. Microsoft would make plenty of money if they sold MS Office for Linux. It would be far more profitable than any sales for AIX, HP-UX, or Solaris, simply because the size of the Linux market exceeds all of those combined (and we, as a whole aren't the cheapskates that many in the press like to portray). So, most of my thoughts on this subject are unabashedly political.

(?) Jason Holbrook
Holbrook Computer Systems (just started it :))
Elgin IL

(!) Good luck on the new venture. Are you considering offering pre-installed Linux systems through your business? Do you have a URL, yet? (If so, I'd suggest putting it in your .sig). I grew up in Chicago. However, I now live in the Silicon Valley (the computer nerd's "Mecca").

[ Drop me a line at consulting@starshine.org when you're ready to spin up your website, whatever your products happen to be. -- Heather ]


(?) PPP disconnect

From Timmy Douglas on Sun, 18 Jul 1999

I have a question that has been bugging me. I have read your PPP disconnect page but I am just using minicom to try to establish a connection and I am disconnecting right after it starts PPP.

(!) When you exit minicom are you using [Ctrl]+[A], [X] or [Ctrl]+[A], [Q]? When you use the latter of these, minicom should ask you to confirm that you really want to "quit without resetting the modem." Are you getting that? You should be, otherwise minicom is resetting the modem as it exits ([Ctrl]+[A], [X]) which disconnects the phone, naturally enough.

(?) Here is what the capture file (MINICOM.CAP) says:


Annex Command Line Interpreter   *   Copyright (C) 1988, 1998 Bay Networks
Checking authorization, Please wait...
Username:my_name
Password:
Switching to PPP.
(!) This phrase should be the last "expect" string in your chat script. (PPP should be sufficient). That will clear the buffer so that pppd will see the other "stuff" (LCP, link control protocol traffic).
... [BINARY DATA ELLIDED] ...
(note: Please do NOT send binary data through e-mail unless your correspondent has specifically requested it).
When sending a bit of binary data in a mostly textual message it's recommended that you use the MIME "quoted-printable" encoding. This leaves most printable characters unmodified and encodes any non-printable characters into short sequences like =2A etc.
(?)NO CARRIER

do you know how I can get rid of the no carrier thing? You said you had a similiar experience so I thought you might be able to help. Thanks!

(!) Convince your ISP to stop hanging up the phone on you.
(NO CARRIER is a message reported by your modem when the line is disconnected --- when either of the modems has hung up on the other or when the intervening phone systems have broken the connection).

(?) --- Timmy

(!) Play with your chat script more. Make sure that pppd works when you use the "quit without reset" from minicom.
In any future questions that you post to me, or to the various support mailing lists and newsgroups, you should:
Include any syslog messages that correlate to your attempts to establish PPP sessions (tail -f /var/log/messages).
Include the settings in your /etc/ppp/options file and the command line which you are using to invoke pppd.
Look for any of the other settings files that pppd is accessing during your efforts. For example it will try to read /etc/ppp/options.ttyS* to correspond to your modem device node, and/or ~/.ppprc of the user under which it is running, and it will look for and execute /etc/ppp/ip-up (as described in the man page).
The fact that the required chat script differs based on which modem and ISP your using is a major source of the confusion for setting up new PPP accounts.
The fact that the Linux pppd looks to so many sources of options (its command line, the /etc/ppp/options.* files, the ~/.ppprc, etc) and that it has other "moving parts" (like the /etc/ppp/ip-up and various chap-secrets and pap-secrets files) is another.
Sometimes when troubleshooting these sorts of things I run pppd under the strace command. This will give you a "blow-by-blow" account of every system call made by the process that you are tracing (and optionally by any of its children).
Most of the output from strace doesn't mean much to me. However I have learned to pay attention to open(), stat(), and lstat() calls --- and to interpret many of the errors returned by them. Try it! It's not that hard.

(?) More on PPP + minicom Disconnects

From Timmy Douglas on Mon, 19 Jul 1999

Thank you for all the info. I guess I will have to learn how to mess with those scripts and that pppd thing. Originally I tried to stay away from them because the seemed a pain to mess with.

(!) It's possible that you could use KPPP or wvDial (free packages, you can look for them on your distribution CD, or download them. One place to look for Linux PPP files, programs and scripts is at:
Metalab: Index of /pub/Linux/system/network/serial/ppp
http://metalab.unc.edu/pub/Linux/system/network/serial/ppp
... Metalab is the canonical archive of Linux software.
Another place to look (somewhat easier to use, especially for the novice) is Freshmeat: http://www.freshmeat.net
Freshmeat's "quickfind" feature spits up wvDial at:
[fm] WvDial
http://www.freshmeat.net/appindex/1998/08/26/904189535.html

(?) "Try it! It's not that hard"....well, I wish I knew as much as you.

(!) How do you think I got to know any of this?

(?) WvDial Success

From Timmy Douglas on Mon, 19 Jul 1999

Thanks you sooooo much!!! I GOT CONNECTED WITH VWDIAL!!!!!!!!!! The first time I was so happy i didn't edit the resolv.conf file so it had like "<setup here>" or soemthing in it. Then I connected with my windows computer to find the dns server stuff with winipcfg.exe.

(!) I think you mean wvdial. I've never heard of a VWDial (though it might combine fine German engineering with a mod retro '60's styling ;) ).

(?) The only thing left is I hate pressing the modem - off - on to get disconnected and vwdial sort of leaves the xterm hanging with no prompt. So now I just have to figure out how to get disconnected. Maybe I could try figuring out by myself.

(!) Try hitting [Ctrl]-[C] to kill wvdial process in your xterm (or VC) when you down. If that doesn't work then look for a file named /var/run/pppd.pid (or something like that). When you see that file it should contain the process ID of the running pppd program. You can then use something like:
kill `cat /var/run/ppp0.pid`
... as appropriate to your installation.
Naturally you can embody this into a script, possibly a PERL script. If it is a perl script and you have SUID PERL installed you can use SUID permission on it to imbue normal users (possibly limited to some specific group) with the power to launch and shoot down your connections. You can also install and configure the sudo package to allow normal shell scripts to be run by "unprivileged" users.

(?) Thanks again, Timmy

(!) As you can see the basic answer is: "kill the pppd process." However the details on how you do that come with the universal UNIX operations qualifier: "it depends."

(?) Makes Windows Explorer Choke

More complex than that, really.

From Luckyshot on Mon, 19 Jul 1999

(?) I recently decided it was time to try out Linux. I bought Caldera's Open Linux 2.2 because ZDnet bragged on the ease of installation and set up. I've got a new computer and knew I would be putting Linux on it, so I formatted the 10 gig drive into 2 partitions (big mistake).

I got Open Linux and then discovered that the version of Partition Magic that comes with it assumes you only have one partition. It ignored my empty 5 gig drive, so I aborted. Caldera support sent me a couple of useless one line answers, but luckily their customer service people are knowlegable in Linux. One told me to use the bootdisk and the "Expert" option (the one that threatens to eat newbies when you click on it) when it came time to partition. The expert level was a bit intimidating, but I got Linux installed without touching my Win98 partition (applause!).

[ Even if the Answer Guy turns out to be wrong he usually has good details in his rambles. No one-liners here. -- Heather ]

I thought everything was dandy.

Then I tried to open Windows Explorer the next time I was in Win98. System freezes up. I reboot. I then discovered that any program that tries to look at the entire contents of my physical drive now does this. Small programs like WinZip or Notepad can be exited with ctrl+alt+del, but large ones like WE and "My Computer" make a reboot necessary everytime. I've got shortcuts on my desktop fr the C: drive and other files (like Dial-Up Networking), but that's only a temp solution. Caldera Support has been laughable thus far. Can you help?

Chris Jones

(!) It sounds much more like an MS Windows problem than anything to do with Linux.
Are you sure that this was working before your Linux installation? Did you change your CMOS settings (referring to the geometry or type of drive)? Did you change the other partition on some way?
Has Caldera's support looked at your partition tables (before and after shots would be ideal). You can fetch a partition table dump using the following Linux command:
fdisk -l
Try completely re-installing MS-Windows (on one or more 2Gb or less partitions). Then try running your Explorer and other programs.
Once you have that working, try the Caldera installation again. Be sure to take "before" and "after" snapshots. Redirect them to a file using commands like:
fdisk -l > /tmp/before
.... etc. A command prompt should be started on one of your virtual consoles during your installation (ask the Caldera support team for details over the phone, and/or try hitting [Alt]+[Fx] for the [F2] through [F6] function keys to find it). I'll leave the details of getting that /tmp/ file off your installation boot RAM disk and unto a disk or diskette as an exercise for the reader.

[ You might also try having the Linux side of your system mount your DOS filesystems, with a command like:
mount -t vfat /dev/hda1 /mnt
Even if it isn't completely successful, its error message might be worth something. (For example, "Bad FAT, remounting read-only.") By all means do NOT write to the damaged filesystems from Linux while they're in this odd state -- just use whichever methods work best to back up all your stuff.

If you do end up reinstalling Windows, it'll probably take out the multiboot loader, so you'll want to follow Caldera's instructions for making a rescue disk, so that you can boot into your unharmed copy of Linux afterwards. -- Heather ]


(?) ftpacess and the Incoming Conundrum

From Ron McKown on Mon, 19 Jul 1999

(?) greetings james!

i have a question for you, and this question has been everywhere. no one seems to be able to answer it.... let me explain what i am trying to do:

i would like anonymous ftp users to upload files and make directories with specific ownership and file permissions. sounds easy, right?

(!) Nope. It doesn't. Of course we'd need to know the specific desired ownership and permissions; but there is no generalized support for this in the WU ftpd nor in the old Berkeley daemon.

(?) i've been banging my head against the wall for weeks now over this. i've read the ftpaccess man page 20 times. i understand everything that /etc/ftpaccess is capable of doing. the 'upload' feature of ftpaccess looks like my ticket, but it doesn't seem to work no matter what i do.

(!) If you understand everything about ftpaccess then you are much smarter than I am. I've read it at least 50 times and I still find some elements confusing. I've learned a bit about it from many experiments --- which have shed light on some of the man page details.

(?) i would very much like to send you a copy of my ftpaccess file but first i would like to see if you can help me otherwise.

(!) I probably can't help with ftpaccess.

(?) i think i'm missing a setting or i'm missing a concept.. maybe i need to look at group settings some more or maybe a group setting isn't configured correctly.

is this a umask issue?? if so, what should i set my defumask to in my /etc/ftpaccess?

(!) Read on.

(?) please reply by email if you are able to help. i've a client breathing down my neck about this (i'm sure you know the feeling).

thanks james,

Ron McKown
GM Consulting

(!) Unfortunately I think you're trying to drive a screw with a hammer.
The wu-ftpd mechanisms for controlling access to the incoming directory are very limited. You can use the flag nodirs to disable the ability to make directories thereunder, you can allow or restrict the chmod command, and you can set the umask (among other things).
However, I don't know of any combination of these that would match your needs. umask settings only apply to newly created FILES not to DIRECTORIES.
The frustrating thing is that it seems that you can "almost" get what you want with the right combination of ftpaccess settings and underlying (OS) permissions, ownership and account settings (/etc/passwd, and /etc/group).
I've been there. It was a bad place.
You might be able to cook up a statically linked binary program that you put in the ftp/chroot /bin directory and allow the users to call with a site/quote command. That could create a directory and set the permission. However, I've never written such a command, and it might be very difficult to write one that was sufficiently robust that you could trust it.
In addition it is difficult for users to use site/quote commands through many FTP clients (and some GUI clients will make it impossible).
You'd probably be far better off using ProFTPd (http://www.proftpd.org). This is a GPL'd FTP daemon package with a configuration file that's deliberately similar in structure and syntax to the (now) ubiquitous Apache/NCSA .conf files.
In their discussion of their UMASK directive they mention that umask modifies the permissions on directorie and files --- but they refer one to the OS documentation for details (ProFTPd runs on many UNIX platforms other than Linux). That suggests that they aren't currently doing anything beyond the current Linux UMASK semantics.
I've heard discussion of a DMASK setting, but I believe it was purely hypothetical and never implemented in Linux. (I don't know anything about such a setting in other OS').
However, I've copied the proftpd developers list on this response in the hopes that they can shed some light on this subject for us. (Any fruits from this discussion will be summarized, credited and posted to the Linux Gazette Answer Guy's column http://www.linuxgazette.com).
You don't mention your specific needs. What are the desired constraints on the created subdirectory's ownership and permissions? Let's say you created a group 'strange' and set the mode of the incoming directory to something like 3772 (sticky, SGID, world writable, executable and readable to owner and group).
It might allow one to force all directories created below that point to be group-owned by 'strange' and set to the same permissions as the parents. (That's the normal affect of an SGID directory (mode +2000) under Linux).
Only the owner of a file would be able to remove them (that's the normal affect of the sticky bit, mode +1000).
Having considered the OS level affects we then ask what ProFTPd directives would model your requirements. I can't even speculate, since I don't know them.
Even if you need to hack in some custom code (into the daemon) I would think that ProFTPd would be a cleaner code base to work from than wuftpd. ProFTPd is under GPL so you're licensed to modify it, and to distribute modified versions (so long as you make your patches available to the public under GPL if you exercise both of those rights).
There are a number of other FTP daemons available.
ncFTPd (by Mike Gleason) is shareware. You can freely use it for personal systems (up to 3 concurrent connectios) and some non-profit/educational institutions (read his license at http://www.ncftp.com for details). However it doesn't appear to exactly what you're looking for.
I do see (in ncftpd's documentation pages) a rather interesting discussion about "eventd" --- a deamon to process actions based on FTP deamon events (such as file and directory creations!). That looks rather interesting.... There's also a upload-event processor option in Mike's general.cf file that might be easier than writing a daemon (at the expense of greater server load since a new processes would be spawned for each such event, rather than a lightweight message from one daemon to another).
Yet another FTP daemon package is BeroFTPd by Bernhard Rosenkraenzer. Unfortunately he doesn't seem to maintain a web-based copy of his documentation (or even a web site for that matter), and I don't have the time to download that and read through the tar file. You can find BeroFTPd using a quick Freshmeat search. (http://www.freshmeat.net).
You'll probably find what you need in one of these packages, or perhaps with a bit of coding and patching to one of them.

(?) ftpacess and the Incoming Conundrum

From Ron McKown on Tue, 20 Jul 1999

howdy!
thank you so much for your quick response to my problem. i didn't realize that doing something like this would be so difficult! it looks like i will have to go with another ftp server afterall.

again, thanks for the excellent reply!

Ron McKown
GM Consulting


(?) IP forwarding and Linux

Turning it off

From Hal Pomeranz on Mon, 26 Jul 1999

Jim--

I admit that I'm being lazy and not searching for the answer in a FAQ, but could you tell me the right incantation under Linux to disable IP forwarding on multi-homed machines. Thanks muchly in advance!

--Hal

(!) It's already the default setting for most Linux kernels. However, you can force it with:
echo 0 > /proc/sys/net/ipv4/ip_forward
(you can 'cat' the contents of that node to view the current setting). It's more commonly necessary to use:
echo 1 > /proc/sys/net/ipv4/ip_forward
... to ENABLE the forwarding.
Of course this assumes that you have /proc enabled in your Linux kernel (also the default and STRONGLY recommended). I believe there's also a sysctl() interface to this, in case you've stubbornly built your system without /proc support (and replaced the entire procps suite of utilities including your 'ps' command).

(?) TCP/IP Port Relaying

From Lawrence Tung on Sun, 04 Jul 1999

(?) Hi, Jim:

I have only one registered IP address (let say 24.1.2.3) and I have a server that run as a firewall and use IP masquerade to serve a couple of other workstations (by using private 192.168.x.x).

(!) You're using IP masquerading to allow some of your client systems access to another network (presumably the Internet).
The phrase "serve a couple of other workstations" is confusing. You normally can't access a server on a private net through a masquerading router.

(?) Now, I want to use net2phone to connect to my workstations but the workstation is using 192.168.x.x address. Is there a way (or any package) that can accept listen to the server machine for a particular port and forward the request to a particular port on the workstations.

Let say:


listen to: 24.1.2.3:2000 forward to: 192.168.0.1:2000
listen to: 24.1.2.3:2001 forward to: 192.168.0.2:2000

I've tried to use ipfwadm but it doesn't work. Any idea? Or maybe I must have typed the ipfwadm command incorrectly.

Thanks. Lawrence

(!) I've never heard of net2phone.
I guess you were thinking about using ipfwadm's -r (relay) option. However you can't do it quite as you expected. What this allows you to do is to relay packets that match a given packet pattern to a socket on the localhost.
So you might be able to use a command like:
ipfwadm -I -a acc -r 12345 -D 24.1.2.3 2000
... with another command like 'redir' (Freshmeat URL: http://www.freshmeat.net/appindex/1999/03/14/921462694.html) like:
redir --lport=12345 --caddr=192.168.0.1 --cport=2000
The first command (issued on your Linux router/gateway --- the one doing the IP Masquerading) will accept traffic on port 2000 of your "real address" and redirect it to 12345 (any arbitrary port you've chosen). The other command (also executed on the same system as the first) will listen on localhost port 12345 and make a relay connection to 192.168.0.1 on port 2000. It will also automatically relay back any responses.
This is basically what programs like the TIS FWTK plug-gw (Firewall Toolkit, originally by TIS --- Trusted Information System Inc, now owned by NAI, Network Associates, Inc) and other proxy tools do.
Of course you don't actually need to use the ipfwadm command in your case. You could just use:
redir --lport=2000 --caddr=192.168.0.1 --cport=2000
redir --lport=2001 --caddr=192.168.0.2 --cport=2001
In fact there are several free utilities that do this. Another is simply called 'proxy' (Freshmeat URL: http://www.freshmeat.net/appindex/1999/04/21/924706079.html)
Of the two I just grabbed redir to write this answer (though I'd been planning on playing with this sort of thing for awhile anyway). I'm not particular found of redir's command line style, but it does support the TCP Wrappers library and it allows the option of being launched through inetd and to set it's TCP Wrappers name when its running standalone.
The 'proxy' command includes its own filtering parser (which doesn't seem to be as sophisticated as the TCP Wrappers package and surely hasn't been tested as extensively by as many netizens.
The cases where you might might want to do this ipfwadm redirection would be to "funnel" a bunch of different destination addresses to one process.
For example, you might want to force all of your local systems to transparent get redirected to a Squid web proxy any time they were access any port 80 on any address out on the Internet.
ipfwadm -I -a acc -r 3128 -D 0.0.0.0/0 80
... this will "catch" all traffic destined for port 80 of anywhere and redirect it to your router's port 3128. For a more detailed discussion of this sort of usage look at the SQUID FAQ: Transparent Caching/Proxying (section 17: http://squid.nlanr.net/Squid/FAQ/FAQ-17.html#ss17.2).
There are obviously other ways you could use this.

(?) more on: TCP/IP Port Relaying

From Lawrence Tung on Thu, 22 Jul 1999

(?) Hi, Jim:

Thanks for your help. The "redir" works pretty good but I guess it only support TCP but not UDP. Do you know any package that support UDP too?

Lawrence

(!) Look for udprelay at:
Metalab: Index of /pub/Linux/system/network/misc
http://metalab.unc.edu/pub/Linux/system/network/misc

(?) This month's "paltry" offerings

From denis miller on Thu, 08 Jul 1999

Even a "altry" month from you is better than 10 full offerings from the mainstream big budget computer mags.

Keep up the excellent work. Denis Miller

(!) Thanks. Did I typo on that one?
Well the good news is that I finished the printing chapter. Now all have left is some touch up on the two appendices (Glossary and "Emergency")

[ At press time for the Gazette, all the edits for LSA are supposed to be in. So, whatever typos have made it past the professional proofreader, all 3 authors, me, and whatever other technical editors stuck it out to the end, well, they're stuck like flies in amber now. Some of you out there may find these two portions to be worth the price of the entire book. And, in case anyone's coming to this late, thinking "what book?" -- that's Linux System Administration, due out very soon from Macmillan (www.mcp.com) -- Heather ]

Now all I have to do one final proof over it and there I'm not allowed to add new material that would change the layout --- just minor corrections allowed.
With luck the book will finally be out by September.

(?) Typos

From denis miller on Fri, 09 Jul 1999

Even a "altry" month from you is better than 10 full offerings from the mainstream big budget computer mags.

Keep up the excellent work.
Denis Miller

(!)Thanks. Did I typo on that one?

(?) No you didn't change the english language. It is why I will never be hired for my typing skills or beautiful legs!

(!)I only ask because you quoted it --- and I've been known to let quite a few typos out. It's the disadvantage of writing for an all-volunteer venue like Linux Gazette. We just can't proofread it and write as much as we'd like. (Heather will catch some of them --- but she already spends about a full working day every month on TAG; and usually gets squeezed into a sleepless night or two).

[ That's about 6 hours on improving the preparser each month (which I've named lgazmail), then whatever it takes to lace the threads together. Really tricky ones I may push to the next month, and then I complete them after the pub deadline. I do tend to sleep some.

I already caught a few typos this time around. -- Heather ]

No one's expressed much interest in my legs either. Heather's, on the other hand ....

[ I need a pink smily so it can blush? ;) -- Heather ]


(?) Typos

From denis miller on Sun, 11 Jul 1999

(?) If you need a volunteer to proofread and check grammar I offer myself as a sacrificial lamb. My mother tongue is English and I can swear at my computer in five languages.

Denis

(!) It's an interesting thought. On the one hand I could Bcc: you on every TAG reply I send out during the month. You could then proof them and comment on them.
I've been thinking of making TAG a mailing list (probably a manually operated one) for some time but hadn't given much thought to the mechanisms to use for it.
What I'd envision is changing it from "The Answer Guy" to "The Answer Gang" --- mail comes it to a small private mailing list, answers are batted around by comittee and, when consensus is reached on a response that is forwarded back to the original person.

[ I would definitely need to update the wizard graphic. -- Heather ]

Of course it would take away some of the "personal touch." A committee is unlikely to reach consensus on a "rant" (I might not agree with some of my own rants ten minutes after I send them).
So I'm not sure. Perhaps we should come up with a hybrid. One model would be: Questions come it, I respond with my usual "stream of consciousness" ranting (often supplemented by URLs from marginally relevant searches on Yahoo! and other engines), and I copy "the gang" --- then they can send comments, corrections, flames and suggestions which can then make it into the same issue as the original question and answer.

[ How about, the querent's mail arrives, one of the Gang fields it, everyone else polishes and tweaks afterwards, for instance with extra URLs, or a clarification. We already have a very minimal form of this, when you copy a maintainer on a reply; this might just formalize some extra eyes that should always see it. It should, however, be a limited crew. I'm kinda thinking it would be good to come up with different bubbles for everyone, and I don't want too many of them. -- Heather ]

I'm open to other suggestions.

[ Any non-PC Linux experts out there want to join? Curmudgeonly nature a plus :) -- Heather ]


(?) Spellcheck Award!

From Jeff Jourard on Thu, 01 Jul 1999

(?) Forgive me for being an inveterate speller and maybe even a bit of a Felix Ungar (the fussy Odd Couple guy), but when you wrote, "hoard of cheap servers" isn't it "horde" of cheap servers? Isn't "hoard" when you stash away a supply of things in case there is a shortage? As in toilet paper or coffee?

Sorry, can't help it,

Jeff

(!) You are absolutely correct. I meant "horde" not "hoard."
I don't get much editing between my responses to questions (often stream of consciousness under sleep deprivation circumstances) and the final HTML cut that y'all see.
Over the years I've noticed that a large number of my typos result in properly spelled words which are homonyms of the intended term. I suspect that I have a couple of layers of mental processing that work on different levels as I type. When I see typos I fix them into some properly spelled word --- which sometimes is not the word I intended. Thus my mistakes of this sort are due to carelessness rather than ignorance. (Not that I'm not ignorant --- just that this particular error isn't a result of that).
Of course I do know sysadmins to keep a hoard of computers (hidden in a storage closet or stashed in a corner of the server room) which they use to service and replenish their horde of production systems. But that's not what I'd meant in the article you were reading.

(?) ppp & voicemail

From Eric H. Matlis on Wed, 14 Jul 1999

Hi jim- I'm having a problem with my ppp/modem connections. I've recently added a voicemail service to the phone I use for ppp. When a new message is left of the system, the phone "beeps" several times when it is picked up. This beeping is interfering with my ppp scripts. I would like to know if there is a workaround for this- either to make pppd ignore the beeps, or to institute a time delay before dialing out, or something like that.

Thanks for you help
eric

(!) If the little beeps only occur when you first pick of the phone then modify your chat script to start with a few \d's (delays).
For example here is a simple chat script:
ABORT "NO CARRIER" ABORT BUSY
"" ATZ
"" \dATE1V1L0M0&C1&D2S7=45S0=0
OK-\dATE1V1L0M0&C1&D2S7=45S0=0-OK
ATDT374-5847
CONNECT ""
ogin: ppp
ssword: \qYouWish!\q
Change it to something like:
ABORT "NO CARRIER" ABORT BUSY
"" \d\d\d\d\d\d\d
"" ATZ
"" \dATE1V1L0M0&C1&D2S7=45S0=0
OK-\dATE1V1L0M0&C1&D2S7=45S0=0-OK
ATDT374-5847
CONNECT ""
ogin: ppp
ssword: \qYouWish!\q
... Read the chat man page for details.
pppd invokes chat scripts via directives in its options file(s) and on it's command line. The connect directive might look something like:
connect "/usr/sbin/chat -f /etc/ppp/chat.example"
You can add the -v option before the -f to make chat be "verbose" (then you can issue a tail -f command, in another window or on a different virtual console, to view the progress of the chat script as it occurs).
Hope that helps!

(?) Unsupported Floppy Formats: 'dd' Maybe

From WELLSCARGO on Wed, 14 Jul 1999

Jim,

Thanks for info on the minicom switching to the VC did the trick, all the hascii characters look just fine. I have one more for you if you have time. I have a customer that sends me gerber data for pwb designs on a 3.5" diskette.

The diskette labels say UNIX BAR FORMAT. They are unreadable on a DOS machine and I thought maybe they could be mounted with linux.

I tried mount -t auto and the path, but would not mount. Normally I have to to use a program from sydex called anadisk to do a sector dump and separate each file with a word processor. These files are nothing but ascii text, vector data. Was wanting to know if you have ever run across this type of format, others say they have heard of "TAR'" format but not BAR. Would like to send you a diskette to look at if you have time. If so please let me know where to send it.

Thanks a Bunch, Don Wells

(!) I supposed you could send me a diskette. However it might make more sense to try a few tricks on your own.
Clearly there is not MS-DOS filesystem on these diskettes. Probably there is not filesystem on them at all. (It's possible to dump raw data unto diskettes under UNIX and Linux, to treat a diskettes as a simple linear sequence of bits (almost like a virtual tape device).
First I'd try a command like:
dd if=/dev/fd0H1440 | file -
... this will dump/extract data off of your floppy (a 1.44 Mb diskette in "drive A:" in this example, change the if= parameter to suit your situation) and feed it to the 'file' command which will attempt to identify the file format based on "Magic numbers" (format signatures or characterist patterns).
Note: you'll probably see an error message about a "broken pipe" --- ignore that; it's to be expected from this type of command. 'dd' would feed the 'file' command the whole diskette through our pipe, but the 'file' command will close it's end of the pipe after a few hundred bytes. 'file' doesn't need to see more than that.
It could be that "BAR" is actually just an alternative 'tar' format (for example).
The next trick would be to try 'tar tf /dev/fd0' to see if GNU tar can read a "table of contents" from the device.
In any event, if you've been pulling the raw data off of these diskettes using something like AnaDisk then you can perform a similar operation under Linux using the 'dd' command. Simply try:
dd if=/dev/fd0 of=/tmp/mydata bs=18k
... then edit the /tmp/mydata file with any text editor. You can even run the 'strings' command on /tmp/mydata like so:
strings /tmp/mydata > /tmp/mytext
... and then edit that.
This might work.
Note that AnaDisk has support for all sorts of bizarre diskette formats (such as formats entailing the use of varying numbers of sectors on different tracks). The Linux floppy device driver is probably not going to tolerate those sorts of shenanigans (they were used for things like copy-protection under MS-DOS). Thus the 'dd' command might complain if that was the case. I presume you've already determined (through AnaDisk) what the specific formatting quirks on these floppies might be.
(It would be interesting to contact the author of AnaDisk and ask for a Linux port for those really unusual formats).
Another approach might be to install DOSEMU (and tweak its configuration to give sufficient floppy disk drive access).
Then you might be able to run AnaDisk under Linux, under emulation.

(?) Minicom Calling a Procomm Host

From WELLSCARGO on Mon, 12 Jul 1999

(?) James,

I am new to linux but very familiar with dos and windows. I use procomm quite a bit for BBS conections. I am running a procomm host at work (ansi) that displays extended ascii characters on the front page (972-641-8069). When I log on with procomm everything looks ok but when I log on with minicom the characters are messed up. I have everything set correctly as far as I can tell. Any suggestion would be greatly appreciated.

Thanks, Don Wells

(!) Are you sure you've set minicom to be an ANSI terminal? It defaults to VT102. Try [Ctrl]+[A], [T], [A] to toggle the emulation mode.
If the problem is stemming from the HASCII (high ASCII) line characters, first make sure you've set the line to be eight bit clean with a command like: stty cs8 < /dev/modem (note: you really redirect the INPUT of the stty command from your serial device --- it has to do with how it does its ioctl() calls).
After that I'd wonder on how you'd set your console character set. Are you doing this from a console or from an xterm? I'd try it from the console ([Ctrl]+[Alt]+[Fx] to switch out of a X Windows system to a virtual console, or VC as we call them in Linux. Once your at any VC you can just use the [Alt]+[Fx] function key combos to move among your VCs, and usually [Alt]+[F7] will get you back to the VC on which your first X Windows session is running).
I'd also suggest taking a look at CKermit. It's license doesn't allow the major Linux distributors to include it on their CDs, but it is a pretty good package for accessing modems under Linux. Note that CKermit doesn't provide terminal emulation under UNIX --- it (rightly) assumes that you ALREADY HAVE a terminal emulator through which you are talking to the system. So CKermit just passes data from the modem to your existing terminal (be it your console, telnet, xterm or whatever).

(?) SCSI Resets Due to Command Timeouts

From Gregory Smith on Fri, 09 Jul 1999

Hi,

I was hoping you could help. I have a Gateway P6-200 With an Adaptec 2940 SCSI card. The trouble is upon boot I receive timeout errors from the controller. I installed an IDE drive on a second system pulled the SCSI cable off the disks (ST32155W little SCSI cable,effectively disabling the drives) and was able to install on an IDE drive from the SCSI CD (SCSI-2 I think old style cable).

(!) I think you should take a deep breath, drink some coffee or tea, and re-read that.
I'm not sure quite what you meant but it sounded like you were having problems with your SCSI chain while you had the hard drive attached. You installed an IDE hard drive, disconnected the SCSI hard drive (leaving the SCSI CD-ROM drive attached) and you were able to install Linux.
Is that about right?
That would suggest that the cabling, termination or drive are the source of the problem.

(?) However I would like to install on my system ( that 2nd system was sort of hijacked once Linux was installed on it). I've been in the SCSI bios and turned down the speed settings from 20 to 8 , and turrned off syncronous and probably fiddled with all the setttings at some time. I've booted off the CD (RedHat 6.0) and floppy (RedHat 5.2) to no avail.

(!) I'd suggest resetting them all back to the factory default before trying any further experimentation.

(?) This is a system supplied by my employer so I would prefer not adding an IDE drive supplied by me (my home systems have RH4.2 and RH6.0). Any help would be appreciated. Oh yeah the bios on the AHA seems to auto assign the SCSI-IDs, do you think that could be the trouble? (I haven't tried forcing the IDs set.)

(!) It sounds like some "Plug n Pray" stuff. I'd disable that and manually assign the IDs yourself.

(?) TIA for any help you can supply.

Greg Smith

Hope you don't mind a syslog from the RH5.2 boot dump detailing the errors (it is sort of long).

(!) It's useful though I'll ellide it for publication.
> <4>Memory: sized by int13 088h
> <4>Console: 16 point font, 400 scans
> <4>Console: colour VGA+ 80x25, 1 virtual console (max 63)
> <4>pcibios_init : BIOS32 Service Directory structure at 0x000fd8d0
> <4>pcibios_init : BIOS32 Service Directory entry at 0xfd8e0
> <4>pcibios_init : PCI BIOS revision 2.10 entry at 0xfd901
...
> <4>ide: i82371 PIIX (Triton) on PCI bus 0 function 57
> <4>    ide0: BM-DMA at 0xffa0-0xffa7
> <4>    ide1: BM-DMA at 0xffa8-0xffaf
> <4>scsi : 0 hosts.
> <4>scsi : detected total.
...
So, you don't have your SCSI driver built statically into the kernel.
> <4>Partition check:
> <5>RAMDISK: Compressed image found at block 0
> <4>EXT2-fs warning: checktime reached, running e2fsck is recommended
> <4>VFS: Mounted root (ext2 filesystem).
> <6>(scsi0) <Adaptec AHA-294X Ultra SCSI host adapter> found at PCI 11/0
> <6>(scsi0) Wide Channel, SCSI ID=7, 16/255 SCBs
> <6>(scsi0) Warning - detected auto-termination
> <6>(scsi0) Please verify driver detected settings are correct.
> <6>(scsi0) If not, then please properly set the device termination
> <6>(scsi0) in the Adaptec SCSI BIOS by hitting CTRL-A when prompted
> <6>(scsi0) during machine bootup.
Did your check on your termination? It's attempting to auto terminate --- but you can't be sure of what that's doing. Check that only the devices at the ends of your SCSI chain are terminated. If you have not external devices then the SCSI host adapter is at one end of the chain (and should be terminated).
Contrary to what you read in most places, I've seen and heard that longer SCSI cables can be more reliable than shorter ones (within limits, of course). I assume that this is NOT differential SCSI. As such it can be extremely sensitive to the quality of cable used to connect these devices.
If the drive works fine when the CD-ROM is disconnected, and the gives these errors again when you reconnect it that suggests that both the CD drive and the hard drive are terminated (or they they are trying to use the same ID).
Make sure that the CD-ROM or the hard drive is not terminated. Try swapping them them (cables and termination).
> <6>(scsi0) Cables present (Int-50 YES, Int-68 YES, Ext-68 NO)
This line suggests that you're some how using two different sorts of cables connected to the same controller. Is this really a 2940 PCI card? Does it have headers (attachment points) for both 50-pin (flat ribbon) and 68-pin (micro DB) cables?
Don't discount the possibility that the hard drive is just bad. Try it in another SCSI machine. Look up these drive and adapter models at their respective vendor web sites to ensure that they are compatible.
> <6>(scsi0) Downloading sequencer code... 419 instructions downloaded
> <4>scsi0 : Adaptec AHA274x/284x/294x (EISA/VLB/PCI-Fast SCSI)
> 5.1.2/3.2.4
> <4>       <Adaptec AHA-294X Ultra SCSI host adapter>
> <4>scsi : 1 host.
> <4>  Vendor: SEAGATE   Model: ST32155W          Rev: 0362
> <4>  Type:   Direct-Access                      ANSI SCSI revision: 02
> <4>Detected scsi disk sda at scsi0, channel 0, id 0, lun 0
> <4>  Vendor: MATSHITA  Model: CD-ROM CR-506     Rev: 8S04
> <4>  Type:   CD-ROM                             ANSI SCSI revision: 02
> <4>Detected scsi CD-ROM sr0 at scsi0, channel 0, id 5, lun 0
> <4>scsi : aborting command due to timeout : pid 17, scsi0, channel 0, id 0,
>  lun 0
> 0x00 00 00 00 00 00
> <4>scsi : aborting command due to timeout : pid 17, scsi0, channel 0, id 0,
>  lun 0
> 0x00 00 00 00 00 00
> <4>SCSI host 0 abort (pid 17) timed out - resetting
> <4>SCSI bus is being reset for host 0 channel 0.
> <4>SCSI host 0 channel 0 reset (pid 17) timed out - trying harder
> <4>SCSI bus is being reset for host 0 channel 0.
> <6>(scsi0:0:0:0) Synchronous at 20.0 Mbyte/sec, offset 15.
> <4>scsi : aborting command due to timeout : pid 18, scsi0, channel 0, id 0,
>  lun 0
> 0x25 00 00 00 00 00 00 00 00 00
> <4>scsi : aborting command due to timeout : pid 18, scsi0, channel 0, id 0,
>  lun 0
...
and so on.
Since it's a system provided by your employer --- it's not unreasonable to expect them to get the hardware functioning (even if you are expected to maintain the OS and other software on it).

(?) SCSI Resets Due to Command Timeouts

From Gregory Smith on Mon, 12 Jul 1999

Hi again,

Thanks for your advice. It was indeed the "Plug & Play Scam" causing the problem. Once I disabled it the system wouldn't correctly scan the SCSI IDs from within the BIOS (or boot NT (of course)). So I shutdown the system configured on of the HDs to be SCSI ID 1 and powered back up. I was able to boot into NT then, I put the RH6.0 CD in and once it scanned the SCSI busses I knew it was going to work.BTW "Plug & Play Scam" is the actual name within the Adaptec BIOS, I guess that should have tipped me off :-).

(!) Actually I think SCAM is supposed to be an acronym for some sort of SCSI Configuration Automation Method (or something like that). However, it may be an unfortunately apt term.
Glad I could help.

(?) Well thanks again for your help. And now ( I'll bet you saw this coming!! ;-) ), I don't suppose you know why a sybase dump from a solaris system wouldn't be readable (sybase "load database" command) into a linux sybase server ( I've got sybase 11.03 for linux and solaris)? (Hey it is a shot in the dark no?)

Thanks again for the help, Greg Smith

(!) I'd ask the Sybase support team if there are any issues with this. Are their db dumps supposed to be cross platform readable? Are there big-endian vs. little-endian (byte ordering with 32-bit register) problems?

(?) P.S. here is the error mesg from the " load database " command

> Backup Server session id is:  15.  Use this value when executing the
> 'sp_volchanged' system stored procedure after fulfilling any volume change
> request from the Backup Server.
> Backup Server: 6.28.1.1: Dumpfile name 'v991991670AFEF   ' section number
> 0001 mounted on disk file '/home/gs/sybdumps/greg9915.dump'
> Msg 21, Level 20, State 1:
> Line 1:
> WARNING - Fatal Error 3223 occurred at Jul 12 1999  1:15PM.  Please note
> the error and time, and contact a user with System Administrator (SA)
> authorization.
> Msg 3208, Level 16, State 1:
> Line 1:
> Unexpected end of file while reading beginning of dump.  Please confirm
> that dump media contains a valid SQL Server dump. The SQL Server error log
> may contain more information on the problem.
(!) It sounds, from these errors, like the load database command doesn't recognize the file you're providing as one of it's dump images. You're using a Sybase SQL command to generate this greg9915.dump file, aren't you?
(I wouldn't expect anything involving the Solaris 'dump' command to work on a Linux system).
When trying to transfer data from one database to another I think the best method is to export all of the data through a series of reports, and import it at the other end. Of course, that only transfers the data --- which generally means that all of your schema, triggers, business rules, etc. must be transferred by hand.

(?) Plug and Pray SCAM

From Gregory Smith on Wed, 14 Jul 1999

Hello again,

WOW that was fast, you know what's funny I've been using Linux for about 6 years and never expected any "real" help especially this fast (I originally used TAMU distribution because I was able to download it onto 1.2 Mb floppies w/o X11). And other than a question I had about 1 1/2 years ago I never really got info by asking around (I would fumble around till it worked or I gave up.) I don't think I ever got this response time from my own company (I also used to be a field service rep fixing mini-computer systems). I can't thank you enough for the generosity or time.

(!) Glad I could help.
I never did get around to trying TAMU (from Texas A&M University, wasn't it?).
I wish I could offer such high service levels to all my Answer Guy correspondents. However, it is all volunteer work. That's why I was happy to see companies like Linuxcare come in to provide the commercial support option. (So happy, in fact, that I now work for them; but that's another story).

(?) In response to your questions--

(!) In response, to my questions which were in response to your questions which .... (ugh!)
(!) I'd ask the Sybase support team if there are any issues with this. Are their db dumps supposed to be cross platform readable? Are there big-endian vs. little-endian (byte ordering with 32-bit register) problems?

(?) From what I understand from their download page there is no support for the Linux port. So the answer to the 1st question is "good question", and apparently we have problems doing a dump/load to other platforms (we support Solaris, HP-UX and AIX), sorry I guess I should have asked around here instead of wasting band-width and thinking it was "only" Linux that couldn't read a .dump file

(!) You're using a Sybase SQL command to generate this greg9915.dump file, aren't you?

(?) Yes from an isql command prompt, I'm using the "load database" and "dump database" commands

(!) If you did an strace (Linux) or truss (Solaris) on the process while it was running this command, or issued a 'file' command on the resulting dump file (try to look up its "magic number" you might find out the underlying file format being used.
It may be that your isql command is passing the data into the system's copy of the 'dump' command. Those are NOT platform independent.
(!) When trying to transfer data from one database to another I think the best method is to export all of the data through a series of reports, and import it at the other end. Of course, that only transfers the data --- which generally means that all of your schema, triggers, business rules, etc must be transferred by hand.

(?) Yep this is what I was trying to avoid. Oh well looks like I'll be learning more and more about our DB, (man I liked Oracle, or at least I thought the imp and exp commands created dumps readable by other *nixs)

(!) Hmmm. I'm not an SQL guy, so I have no basis for comparison. I know that both of these (and several other DBMS packages) are available for Linux.

(?) Anyway, I thank you for the help and time you've spent on my problems. Grace and Peace to you,

Greg Smith

(!) Glad I could help.

(?) Assembly Language Programming for an old DESQview User

From Ed Damvelt on Mon, 19 Jul 1999

(?) Good evening.

I saw your answer to a question regarding Desqview386 and your recommendation of Linux.

From 1985 until eight years ago, when I moved from Europe to Mexico, I made industrial automation programs (assembler for all routines and MS-C just to compile it, because my data base/index file software is in C) and complete hardware, running, if necessary, under Desqview386. Since I am here I have not been active in this field, so I lost a bit the thread.

Nevertheless, recently I started engineering in automation again, and want my programs to run in ASM again. I thus need a multitasking environment and Linux seems to be the proper choice nowadays; I am one of the Windows-haters, but forced to use it still. For me the questions now are: What conventions must the assembler file answer to in order to run under Linux? Search as I did, I only found info about how to run existing programs, not how to program myself. Can you tell me where to find this info? Are there ASM- and C-compilers to have for Linux? Yes, where? What is there to do to run multiple programs? Etc. I guess you got the gist of my needs. I do hope that I do not have to re-write my whole ASM-library; it cost me a lot of time to write identical procedures to MS-C and, where convenient, Turbo-Pascal in such way, that they are much more efficient, practically insensitive to type/pointer mix-up and much faster.

I really would appreciate getting some pointers to search variables from you.

Regs, Ed Damvelt.

(!) Well, assembly language programming is rare in any form of UNIX. However, it is somewhat better supported under Linux than under most other UNIX variants.
I'm not an assembly programmer per se, though I have played with Z-80, 6502, and 8086 assemply.
Your best resources for ASM programming under Linux seem to be:
Assembly HOWTO
http://metalab.unc.edu/LDP/HOWTO/Assembly-HOWTO.html
NASM - The Netwide Assembler Project - FREE 80x86 assembler
http://www.web-sites.co.uk/nasm
asmutils: Linux/i386 assembly programming page
http://lightning.voshod.com/asm
This last link in particular leads to a small package called 'asmutils' --- which includes straight assembly language replacements for about thirty small UNIX utilities. There's even a 757 byte web server. (That was not a typo: seven HUNDRED and fifty odd BYTES!). All of the others are smaller. Most of the others are under half that size. (And those are STATIC BINARIES --- with no dependencies on any shared libraries).
(That's pretty interesting in that "Hello World" compiled statically under glibc 2.x comes in at 90K (kilobytes). The assembly language version I cooked up in five minutes using one of the asmutils programs as a template assembled into about 90 bytes).
So, you and Konstantin Boldyshev (the author of asmutils) might have quite a bit of fun creating a large suite of raw assembly language tools for Linux.
These will probably be of particular interest to people like Tom Oehser (maintainer of Tom's Root/Boot, "The most Linux you can fit on a Floppy) (http://www.toms.net/rb) and to the people who work on embedded Linux systems (who have a mailing list and an FAQ at http://www.waste.org/~zanshin). (I've copied some of them on this message).
In addition to pointing them at these resources (of which they were probably already aware) this will give them an opportunity to comment on what I've said and expand the content (or make corrections). You might want to join The embedded Linux mailing list (as their interests are similar, though quite a bit of their work is down in C, too) and possibly in participating in the Tom's Root/Boot mailing list or in the asmutils and Lightning Project.
Together the micro-Linux (very small distributions like Toms, LRP, ODL, Trinux, LOAF, etc) embedded, and assembly language projects form a interesting niche within the Linux community.
Linus has said that the most interesting things happening in the future of Linux will be on the desktop and in the embedded realms. I agree.

(?) DESQview/386 Die Hards into the Next Millennia

From Mike Green on Mon, 19 Jul 1999

Hi Dennis,

Just wondering if you know where I could find some information on DESKView 386's Y2K compatibility?

[ His name's Jim... Dennis is his last name. -- Heather ]

Thanks,

(!) Not a clue. I haven't used DESQview in about five years. I've been primarily using Linux for about the last seven.
I presume that Quarterdeck's aquisition by Symantec has spelled complete obscurity and orphanage to DV. They probably didn't even have the decency to release the sources to a "free world."
You might be far better off with a combination of Linux and its DOSEMU or VMWare. It's a pity that you'd lose DESQview's UI (I'd really like to see a Linux console manager that would match the features and feel of the DESQview popup menu system --- but add configurability like DV/X). However you gain support for modern hardware (including CD's, CD-R, CD-RW, DVD and DVD-RAM) and procotols (running DV under a TCP/IP stack used to be like waltzing with a bear in a china shop!). You also lose all problems with memory management (forget about conventional vs. EMS and "largest program size").
All that and you get the sources, too. (A feature that would be even more exciting if I were a real programmer, and not just the occasional hack).

(?) CDR Media: Silver and Gold and Blue, Oh my!

From HThorne328 on Sun, 11 Jul 1999

Can you please help me. What is the difference between silver, gold, blue, etc., on the CDR disks? Also what does matte mean? Thank you. I'm very confused.

(!) I'm pretty sure that matte refers to the finish (texture) on the back of the CDR media (the "label" side or "non-recording" surface). A matte finish is probably better for writing on (using using permanent marker). Whether writing on your CDR media is advisable (as opposed to cutting labels to cover the back surface) is a matter that's best answered by the maker of the particular brand of media you're buying.
It just so happens that I found a great FAQ (*) on the topic of CDRs by Andy McFadden the other day (while answering other mail, naturally).
(Elsewhere he makes frequent mention of the back surface of the CD discs and how some of them have the recording foil exposed while others have an additional layer of plastic --- which I guess at least one brand refers to as "Infoguard." I've seen some CDRs like this, with a delicate foil on the back which could be easily scratched --- thus ruining the data that was stored on its other side. I don't consider them to be suitable for any purpose. Luckily they don't seem to be common anymore. Even the cheap bulk CDR media have the recording foil fully encased).

(?) Kudos

From HThorne328 on Mon, 12 Jul 1999

http://www.fadden.com/cdrfaq
Wow, that was all I was hoping for and more. Great job!!!! Thank you

(!) Glad I could help.

(?) Downloading a copy of Linux

From Richard Marsh on Mon, 26 Jul 1999

Hi good day I would line to download the linux program please let me know where and how to download and install this program. and what file I need to have. I want to get to know that operating system. everyone is talking about it and I want it to be my main operating system

Thank You..

(!) I'm afraid that "the linux program" is actually a bit of a misnomer. It is true that Linux is a program. Specifically it is a kernel. You could go to ftp://ftp.us.kernel.org and download any of the versions of the Linux kernel that you'll find there. They range from archaic .10 and .9x versions through the current 2.2 (stable) and 2.3 (developmental) versions.
So, you could download one of these kernels (in source code form, of course). Then you'd compile it (more on that later) and you'd have a copy of "the linux program" to run.
The Linux kernel is after all just a program. It implements about 180 system calls, provides file systems, device drivers, a sockets interfaces with TCP/IP networking suite, and some memory and process management APIs and interprocess communications methods.
Of course that's not of much direct use. A kernel doesn't do anything for a user. It provides a set of services to your applications and other programs. You use those programs and they use the kernel services.
In a technical sense "Linux" is just the kernel. Of course the common sense of the term refers to a large suite of utilities that run under this kernel (combined with the kernel. The most obvious things you need to run this program (the kernel) are:
The Linux kernel is written in C. Linus Torvalds uses GCC and most of the other developers use that or one of its derivatives (such as egcs, now merging back into GCC). This mostly means that you want to compile your Linux kernel on a Linux system. (You could cross-compile it on some other UNIX or UNIX-like system --- but that would be somewhat more complicated.
To boot it you'd need something like the LILO package or a copy of LOADLIN.EXE (and a copy of MS-DOS or one of its clones to run THAT under).
Of course this hypothetical discussion of running the kernel by itself is a bit absurd. To learn Linux and to make any practical use of it, you need a whole suite of programs to install it, as well as a few programs to run under it.
Most of us, particularly the techies among us, refer to different collections of a Linux kernel with GNU, BSD, MIT and other (mostly free) software as "distributions." Distributions combine a kernel with a suite of installation and configuration tools (like 'fdisk' to re-partition your hard drive, and /sbin/lilo to install and update your boot loader (master boot record code) etc). They also include libraries (like DLLs in MS-Windows) and, of course lots of software (like editors, commmand interpreters, compilers, web servers, graphics handlers and drawing programs, etc.
There are many distributions. The most current and up-to-date list that I know of is maintained in a section of the Linux Weekly News which lists links to about 100 of them, and posts any news about them that gets the attention of their editors.
You can read a recent one at:
http://www.lwn.net/1999/0722/dists.phtml
There are some spcial "micro-distributions" like Tom's Root/Boot, LOAF (Linux on a Floppy), DOSLinux (which installs into a DOS subdirectory) and various special purpose systems like LRP --- the Linux Router Project. Some of these fit on a single floppy. Others fit in about 20Mb or less of archives.
However, most distributions take up over a 100Mb. Consequently they are usually distributed on CDs. There are a couple of places to get very inexpensive sets of Linux CDs. I tend to think CheapBytes http://www.cheapbytes.com first in this category. You can get Debian or Mandrake CDs for as low as $1.99 plus shipping and handling ($5.00). (Mandrake is a derivative of the Red Hat Linux distribution -- it builds on it by adding a few extra packages and refinements, etc).
Now I realize I sound like an ad. You can certainly find whole distributions to download over the Internet. On some sites you can find ISO 9660 CD images (these are 650Mb images suitable to be "burned" right off your drive and onto your CDR or CDRW media). I wouldn't recommend downloading one of those with anything less than a T1 at your disposal.
It's also possible, with some difficulty and quite a bit of patience, to install a Linux distribution with a small set of floppies and an FTP connection. I've installed Red Hat 5.2 with a single boot floppy (and one supplemental, if I recall, it's been awhile). I had to try several times to get it right and to get past the occasional disconnects. That was over a DSL line. I wouldn't try it over a modem.
With Debian you'd cut a set of seven or eight HD floppies, install the "base system" using those, then you could selectively add packages as needed. Although this is possible with the current Debian "stable" release (2.1) it's much easier with the "unstable" (code-named "Potato") version. I have this running on my system at work, and I put a machine on it for an installfest earlier today.
Debian is well suited to installation over the Internet because it has many small packages and relatively sane dependencies. So you can install almost exactly what you need without getting any unwanted space and bandwith consuming "extra" baggage. Using the apt-get and apt-find front ends you basically just issue a command that says: "install that" --- and the system connects to the Debian archive mirror system, finds the latest version of the package for your distribution release, fetches it, installs it, and does the basic initial configuration. It automatically determines any pre-requisite packages (dependencies) and prompts to install those as well.
(Another thing I like about Debian is that you can upgrade all of the packages that you have installed with one commend. If you use the command:
apt-get update && apt-get dist-upgrade
... you end up with a fully up-to-date system. This seems a bit scary at first. Most of us have had "simple" upgades and installations "break" our systems (particularly those of us from the MS-DOS and MS-Windows worlds). However, I've been experimenting with this feature for several months (tracking the "unstable" developments, no less). About once on every day that I'm in the office I switch to one of my VCs, hit the up arrow a couple of times and re-issue this command from my history.
So far I haven't had one upgrade related problem on that system. None. Not one. Wow!
Despite all this I wouldn't necessarily recommend Debian as your first version of Linux. It is a "power-users" distribution. It's a bit rough around the edges and it does some things just differently enough that you might find it frustrating to learn Linux. When you ask other Linux users in your area for help you'd like their answers to apply to your distrubution as much as to theirs. Stormix (a Debian derivative; similar to how Mandrake is a Red Hat offshoot) offers some interesting possibilities for the future.
So, in summary:
You can "download" Linux. However, it's much faster and probably cheaper to buy a CD.

(?) And from Radioland....

From Larry Snyder on Thu, 22 Jul 1999

Hi Jim --
I was among five guests on a local computer call-in radio show this past Monday. We're all open-source/linux geeks as opposed to the usual topics dealt with. We managed to give away 10 copies of the CheapBytes RH6 CD, and handled almost all of the questions pretty well. Got one that threw me: What's the max swap on an x86 box? I was about to go into the 1.5-2X ram, until the caller said they had a P2-400 (X2) box with 2G of ram. Then I started drooling and wondering why they didn't just get an Alpha (personal preference).

(!) The maximum swap file or partition under Linux is 128Mb (or is that actually 127Mb)?
You can have upto 16 active swaps (any combination of partitions and swap files).
However, the old guideline of 1.5 to 2 times physical RAM is horribly outdated. I'd recommend one or two 127Mb swap files at the most. Using two is not really for the extra swap space, but to provide kernel with a place to do load balancing, which it will do if you have separate swaps . Obviously for that to make any sense you need to put the swaps on separate spindles (physical hard disks) and preferably on different controllers as well.

(?) I did a little digging on the kt site, and I can't remember where Jim Pick's site wound up. I know it varies depending on the kernel version. Can you get me a 2-3 line answer that I can give to the radio people so they can provide an answer?

(!) Jim Pick got the name "kernelnotes.org" (so http://www.kernelnotes.org is the site formerly known as http://www.linuxhq.com). However, http://www.linuxhq.com does seem to be back up, with basically the same content. So, there's no real problem either way. (There is probably some interesting inside gossip regarding the whole affair, but the public statements seem to have all been mutually agreeable).

(?) I hate leaving things hanging.

thanx!
-ls-


(?) Video Timings: Configuration Curse

From pavlin on Mon, 19 Jul 1999

Hi Answer Guy :)

I'm using RedHat 6.0 and I can not run a fine X session with my LG Studioworks 44i monitor.

It does not run well with the standard timings, xvidtune did not help.

I've tried to calculate the video timings as is described in Video timings HOWTO, but it's still bad So can you help me with the correct video timings for this monitor, or where I can find them?

(!) I have no idea how to get better timings out of your monitor. This is yet another occasion when I wish there were an XFree86 "Answer Guy" to whom I could punt these sorts of messages.

[ Allow me to pipe in. Each distribution seems to have a different set of preferred modelines - you may find that the modelines provided by SuSE or TurboLinux are more helpful to you. In particular TurboLinux 3.01 had a much longer list of possible monitor types - yeah, that's right - real listings of monitors, not just a few generic entries to pick among. They're up to 3.6 now (based on a 2.2.9 kernel) so you might want to look at them anyway. FreeBSD also had a much broader list of modelines than I have seen out of Red Hat, last time I looked. Perhaps you can fetch a package for X prepared for one of these others, and extract the modelines you need from it.

Where you have multiple modelines offered for a particular resolution, try commenting out all but one at a time so you can see what that particular line looks like. -- Heather ]

(?) I'm bulgarian, so sorry for the poor english :) Boris

(!) I'm sorry for my poor understanding of your problem. Even if I was a wiz at doing these sorts of timings, I would need a lot more info about your monitor; and I'd probably need to see it in person.
If xvidtune is functioning on your system, but doesn't seem to help with the display problems on your monitor then it may be that the monitor itself is just too far out of spec for any video timings to help. How does it look under MS Windows?

[ You may find it worthwhile to follow Eric's more detailed instructions in the Video Timing HOWTO, and create a brand new mode for your monitor, instead of trying to modify one that is present. Whether it comes out a "standard" resolution is probably not as important to you as whether it looks crisp and readable, without "ghosts." -- Heather ]


(?) Accessing Private Net Addresses from the Public Internet

From mike on Mon, 19 Jul 1999

I'm at my wits end and just wondering if you could help me with this:

I ran out of ip's for my network so I wanted to set up a private 10.0.0.0 network. I wanted to use a Linux box to connect this 10 network to my other network. I have 10 network using IP Masquarding to access the network through the Linux Box and I can get to the outside network from the 10 network, but I can not see the 10 network from the outside.

The linux box has 2 ethernet cards , but I don't think the packets know how at go from eth0 to eth1. Any help or a point in the right direction would be great.

Michael Collins

(!) Of course packets from outside networks can't get to your 10-net addresses. They don't have routes to your private net addresses.
It's not clear, from your message, whether the "outside" network you are talking about is the Internet, or some element of your own internetwork (a LAN under your administrative control).
In any event the usual way to provide access to your internal/private networks from the outside is to configure a proxy server on one of the real IP addresses. The exact details of these proxying services would depend on the specific services and protocols that you wished to propagate through this connection.

(?) Linux gazette article, July 1999

From Chris Mikkelson on Mon, 19 Jul 1999

In your "answer guy" column, you made the following off-the-cuff comment:

It would be sheer idiocy for Linux to adopt a straight polling strategy for it's networking interfaces. However, it might be possible to have a hybrid. If the interrupt frequency on a given device exceeds one threshold the kernel might then switch to polling on that device. When the polling shows that the activity on that device as dropped back below another threshold it might be able to switch back to interrupt-driven mode.

Well, this reminded me instantly of a research paper I had recently read, called "Eliminating Receive Livelock in an Interrupt-driven Kernel." It is available online at

http://www.research.digital.com/wrl/techreports/abstracts/95.8.html

The problem with interrupt-driven processing is that the high overhead (and priority) of servicing an interrupt can starve the machine under high load. That is, not only does latency increase, but throughput can drop to practically zero under high load (this will be particularly evident on a gigabit-range network, 100baseT maybe, 10baseT -- a 486 can keep up with that ;-)

The solution implemented for the paper was as follows -- when receiving a network interrupt, start a polling task and disable that interrupt. When the polling task doesn't find significant new traffic for some number of cycles, stop the polling task and re-enable interrupts.

The platform this was implemented on was BSD (but I don't know if it made it into *BSD), but it could just as easily be done on Linux. It is also a rather simple and elegant solution, and drastically improved the behavior of the system under high loads.

(!) It sounds similar to what I suggested, except that it sounds like you routinely disable the interrupt and switch to polling mode whereas I'd suggested that you'd only do it based on certain thresholds of activity.
In any event, you'd be welcome to submit a patch to the Linux kernel team.
Look in the CREDITS file for a list of e-mail addresses of major kernel developers. It's recommended that patches be initially sent to one of them (other than Linus) so that they can review it and marshall it towards the main kernel. Sending things directly to Linus might work, or it might get lost in the flood. It's not recommended. Let the others on the team see it first.

(?) Helpless

From leslie on Mon, 19 Jul 1999

Hi wondered if you can help me I'm thinking of putting win98 on my computer will dao work on it or do I have to stay on win95.
Thanks for any help

(!) I can't help you. I don't know what 'dao' is (Please, no Tao-ist jokes!) and I have no interest in Win '95 or Win '98
Please call Microsoft or look for a Linux version of 'dao'

[ Could this person mean disk at once CD recording? We had a considerable discussion about that several months ago... but this request is too vague to tell if it applies. -- Heather ]


(?) Free Memory vs. Buffers

From george samuel on Mon, 19 Jul 1999

Dear James,

I find that the amount of memory free decreases after copying large files. --(I have a PII 300 with 128Mb ram kernel 2.2.10-ac10 ). the amount of free memory as shown by free becomes ~6Mb even after doing a sync and verifying that there are no dirty blocks.If I again do some copying - swap out happens and the amount of free memory decreases. The amount in buffer used increases.I read in kerneltraffic that memory allocated for caching filesystem metadata is not given back but is kept for future use --that happens only when I mount some filesystem and later unmount it.I am ignorant .Please elaborate on this

Thank you,

Love,
Sam

(!) Don't worry about it.
The memory that's listed as being in use by the buffer cache can be used by applications as the kernel sees fit.
Here's my current 'free' output:
             total       used       free     shared    buffers     cached
Mem:         63200      61488       1712      31712       3000      31236
-/+ buffers/cache:      27252      35948
Swap:       104416          0     104416
Here's a bit more info on my current state:
uptime:
     4:27am  up 5 days, 16:00,  9 users,  load average: 0.00, 0.00, 0.00
 
uname -a:
    Linux canopus 2.2.0 #8 Fri Jan 29 19:17:29 PST 1999 i586 unknown
(The uptime is so short because I installed a new distribution on a secondary partition recently --- and I've been playing with it).
Notice that my free memory is less than 2K. That is typical. It just means that my kernel isn't using that small chunk of RAM for anything better (buffers, and caching are better uses for it).

(?) Copying boot partitiion

From the Linux User Support Team (L.U.S.T) List on Mon, 19 Jul 1999

(?) Hello all,

I have a disk in a Redhat Linux 6.0 machine that has developed some bad sectors, about 200 meg's worth. Everything seems to be working but I would like to replace the disk. Is there a way I can copy the whole partition to another disk and then just swap them. I suppose I can do something like mirroring the disks but I haven't a clue where to start.

Thanks for any help.
Darren Pedley

(!) I usually mount new disks under /mnt after fdisk & mke2fs to make it ext2fs


mount /dev/newdrive /mnt
cd  /

for i in `\ls |grep -v  proc |grep -v  mnt`
do
cp -aRv  $i /mnt/
done

boot with boot stiffy & rerun lilo

all done

(!) Ack! So complicated.
If you have three partitions that you want backup to /mnt (let's say /, /usr, and /home) you could use something as simple as:
for i in / /usr /home; do
cp -pax $i /mnt
done
.... the -x will prevent the GNU cp command from crossing over filesystem/mount boundaries. Thus you needn't worry about inadvertantly copying /proc or recursing down into /mnt.
(Obviously to just get the root filesystem you'd just use cp -pax / /mnt; to list all your currently active filesystems just use the mount command with no arguments; to list all the partitions/filesystems on your system use the 'fdisk -l' command).

(?) SiS 6326 and XFree86

From Victor Renteria on Mon, 19 Jul 1999

I have Red Hat 5.2 and Window 98 installed on a partitioned 6 Gig disk (each OS has 3 Gigs). After I boot and log onto Linux and type "startx" I get a blue screen with a thin vertical line from top to bottom. This vertical line moves from left to right only; no desktop, no icons, nothing but this line. I have an PC100 mainboard with an onboard SiS 6326 display adapter and a Sound Pro sound card. When I type Ctl+Alt+Backspace on the keyboard it takes me back to the shell without any error messages. What is the matter?

From what I read the generic VGA driver will not work. I can verify this because I have tried it. What in the world can I do? If available, where can I download a driver from and how do I install it. Remember I am new and don't know the commands to access the A: drive. I know a few basic commands, very few.

Any advise would be helpful thanks.

(!) Well, first I look at the XFree86 web site to see which X server (driver) you should be running with that chipset. I'd look into:
XFree86 Video Card/Server List
http://www.xfree86.org/cardlist.html
... which tells me that you should be using the svga (Generic "super VGA") driver/server. (In XFree86 terminology an X "server" is a program that is compiled to drive a particular combination of video and input devices --- it "serves" all of the X clients, which are programs that share the screen and the input events).
Here's their section on the SiS sets:
SiS 3D PRO AGP  .........................................  XF86_SVGA
SiS 5597  ...............................................  XF86_SVGA
SiS 5598  ...............................................  XF86_SVGA
SiS 6326  ...............................................  XF86_SVGA
SiS SG86C201  ...........................................  XF86_SVGA
SiS SG86C205  ...........................................  XF86_SVGA
SiS SG86C215  ...........................................  XF86_SVGA
SiS SG86C225  ...........................................  XF86_SVGA
I also look at other resources on their site of see if there are any configuration samples or notes:
Information for SiS Users
http://www.xfree86.org/3.3.3.1/SiS.html
This isn't terribly informative. However it suggests to me that you might need to get the latest X distribution. The Red Hat 5.2 distribution is over a year old now. With the way that video chipsets change that's actually pretty ancient.
Unfortunately the Red Hat web site gets harder to navigate as they get bigger. Seems to be an endemic problem among corporate web sites. With a trip to their search engine (provided by Google! (http://www.google.com)) I find that your updates should be at:
http://updates.redhat.com/5.2/i386
... although I was unable to check that (I left my browser trying to connect for several minutes while typing other parts of this message. Their corporate pages came up quick enough, but it looks like their "updates" host is a bit overloaded (which seems odd since it's 3:00 am on a Sunday nite/Monday morning).
In any event, get the update from one of their mirror sites like Walnut Creek's CD-ROM archive site:
ftp://ftp.cdrom.com/pub/linux/redhat/old-releases/redhat-5.2/updates/i386
Once you've fetched the RPM files you using a command like:
rpm -Uvh *.rpm
... in your download directory, maybe /usr/local/from/cdrom.com/ for example.
Then you want to run the XF86Setup program to let it try to configure your installation of XFree86.
Peruse the XFree86 web site for details. Also consider finding a local users group and seeing if they run any "installfests." The kind of hands-on, face-to-face help that a few Linux people can give at an install fest will beat out what I can tell you in a short e-mail every time.
You can search LG back issues for the canonical lists of users groups (I seem to have listed three of those back in issue #29 when ranting about Winmodems: http://www.starshine.org/mirrors/lgaz/issue29/tag_winmodem.html)
... checking those I see that the old LUGWWW in the Netherlands seems to have moved, but that it is now listed in the Linux Users Groups "Web Ring" at:
Linux User's Groups Webring
http://www.nlug.org/webring
... however, the other two lists of LUGs seem to still be valid.

(?) Reading CD Discs on an IDE CDR Drive

From balou nguyen on Wed, 14 Jul 1999

I recompiled my kernal 2.2.9-19 to use my cd-writer as per the cd-writer howto. I had to enable scsi-emulation in the block devices, and enable scsi support for cdrom in the scsi. Now xcdroast works great, but I can't mount my cd, and I can't use cdplayer.

I can still play the cd if I go through xcdroast though.

Commands I have tried include:


mount -t iso9660 /dev/sg0 /mnt/cdrom
(!) I would never expect that to work. The sg driver is for "generic access" to a SCSI device. It doesn't provide the semantics for block read/write (like a hard disk or other filesystem driver)
(?)
insmod ide-cd
mount -t iso9660 /dev/cdrom /mnt/cdrom
(!) What are the major and minor numbers and type of the device node to which your /dev/cdrom points? If /dev/cdrom is not a symlink, make it so.

(?) or


mount -t iso9660 /dev/hdc /mnt/cdrom
(!) Is this drive the master on the secondary IDE channel? If not, than this is your problem. Try /dev/hdb (slave on primary channel) or /dev/hdd (slave on secondary channel).

(?) I've also tried the other various recommendations in the howto without success...

(!) You may have me stumped. I haven't purchased an IDE CDR or CDRW yet. So I don't have first hand experience with this. (I've been meaning to get a CDRW or a DVD RAM drive soon. Maybe I'll know better in a month or so).

(?) Persistent LILO: Won't Start! Won't Go Away!

From Teemu Pentinsaari on Wed, 28 Jul 1999

hi,

I'm having alot of trouble getting LILO off my MBR, it stays like glued and I don't know what to do anymore.

I had fully workin Linux Redhat and everything was going fine, but then I tryed to get lilo off the mbr and the sunshine stopped. My computer hangs up in booting showing only first two letters of lilo, then whatever you do, it hangs up. I have wiped out my hd using Linux-fdisk, dos f-disk, partition magic 3 and NT40 installation partitioning tool, I have convertted my hd to ntfs back to fat and again to ext2 but LILO is still sitting on my MBR. I have spent last 26 hours trying to get it off the MBR from running Linux , I have tryed to use lilo -param -param commands but they wont resolve my poblem.

(!) The easiest way to wipe your MBR and partition table on a Linux box is with a command like:
dd if=/dev/zero of=/dev/hda count=1 bs=512 && sync && echo done.
... if you see it echo "done" then you have successfully wiped the partition table and MBR on your first IDE drive. (Use /dev/sda to blow away your first SCSI drive).
Nota Bene: THIS WILL RENDER YOUR SYSTEM NON-BOOTABLE AND MAKE ALL OF YOUR FILES AND FILESYSTEMS ON THAT DRIVE INACCESSIBLE!
(I hope you knew that).
It would help quite a bit if you told me which -param -param you were using. It would help even more if you issued a command like:
lilo -v -v -v &> /tmp/lilo.out
... and included the lilo.out file in your next message. The -v options will make the /sbin/lilo boot map updater VERY verbose. (My simplest system generated about 70 lines of output from this command).

(?) what can I do ?

Is there a handy way to read MBR in binary ?

(!) dd if=/dev/hda count=1 bs=512 | od -x
... you can pipe the output from this dd command into any number of utilities to render relatively readable encodings of the data. For example you might use:
dd if=/dev/hda count=1 bs=512 | cat -v
... to look for ASCII strings embedded in the mix.

(?) Is there other commands than lilo -param to edit MBR ?

(!) Any good disk/binary editor should do it. There are several hex/binary editors for Linux. One way would be to use dd to capture the data then run emacs on the temporary file. You can use emacs and xemacs to edit in hex using the command: M-x hexl-mode
(Note: if you use viper mode, the vi emulation package that I use, then you'll want to use C-z to suspend your viper keybindings while you use hexl-mode's bindings).
There's also 'beav' (Binary editor and viewer), lde (Linux Disk Editor), bvi (Binary vi) and a number of others for Linux.
None of these has the features that I liked in the old MS-DOS hex editors like Norton's DiskEdit and Paul Mace's MUSE. It would be nice if lde were extended with a set of templates that matched various C struct's (data structure definitions) for things like partition tables, superblocks, inodes, etc, and if you could easily bounce from partition table to superblock to directory and from directory entry, to inode, to corresponding data blocks and extent (indirect) blocks, and through the free list and bad blocks "file") (i.e. add extra navigation commands).
However, I'm certainly not enough of a expert in low-level Linux disk and data structures to write the code for any of that. 'lde' looked like the most promising of these that I've see so far. It supports color ncurses and recognizes some data structures (though it's a bit confusing and could use quite a bit more documentation).

(?) thanks a lot,
Teemu Pentinsaari

(!) In the worst case (assuming you have a full backup) try:
dd if=/dev/zero of=/dev/hda
... to write a stream of ASCII NULs over the whole disk. (This is presuming that you boot from a rescue/destroy floppy, of course).
Fans of the old Norton "DiskWipe" utility could use a simple shell script on their Tom's Root/Boot (http://www.toms.net/rb/) which was just a for loop like:
		for i in 0 1 2 3 4 5 6 7 8 9 ; do
			dd if=/dev/zero of=/dev/hda bs=1024k; sync
			dd if=/dev/urandom of=/dev/hda bs=1024k; sync
			done
		dd if=/dev/zero of=/dev/hda; sync
... which would make about ten passes over the disk with ASCII NULs and random bits. It might take all night, but I don't that even the super spooks with the forensic micro-electron-magnetoscopy (or whatever it's called) would get the goods on you when you were done.
Any way --- lilo's -v (verbose) is one of your friends. 'dd' (the UNIX data dumper) is another. Make their aquaintance and SQUASH THAT BOOT RECORD!

(?) The Lost Art of Helper Apps

From Josh Stewart on Mon, 12 Jul 1999

(?) I don't like streaming video because it looks and sounds bad. Do you know a wayfor saving a real video to my hard disk and I don't care how big it because I have a fast connection. Example: How would I save this file: pnm://209.196.146.50:7090/air1/realmedia/myfriend.rm

(!) I've never use streaming audio or video over the Internet. So, I'll only be guessing at things a bit here.
The URL you've give would be typical of one that would invoke a "Helper Application" in a traditional web browser.
Helper Applications existed before Netscape "plugins" and Java, JavaScript, and frames and CSS and most of the buzz/hype stuff that the big web sites and software companies are pushing unto the web. The idea was simple: URLs start with a format specifier: ftp://, http://, telnet://, gopher:// etc. The only ones you usually see these days are http:// and ftp:// which are handled directly by your web browser. (Gopher is still supported by most web browsers, too, from which I've heard. I haven't seen a gopher site in so long I have no way to test this).
For any service that the browser doesn't handle itself, it consults a list of "helper apps" These bind the service prefix to a program (such as the real audio player, or whatever).
So the question is, can you replace your realmedia player with a program that speaks the correct protocol to the realmedia server on the far end and then writes that out the the disk instead of out to your sound card and video subsystem.
I don't know. I don't know what protocol they are using to stream the data do you.
Another question might be: Is there a utility for Linux that could allow you capture the output to your video/sound through some sort of "loopback" arrangement. (Guess what! I don't know the answer to that either).
However they are interesting questions and I'll pose them as "stumpers of the month"
Finally another question comes to mind --- is the poor quality of this material (as you're experiencing) due to the delivery mechanism (the fact that it's streaming over a presumably low bandwidth connectin as you're viewing it, or is it due to some other factor? Will looping it out to your disk improve it?
My guess is that saving it to disk (without improving the delivery bandwidth by which it gets to your system) probably won't help. I'd guess that the server is doing some scaling of the image/sound quality on the fly, as it delivers it to you and in response to you speed and latency of your connection.
Of course it would make sense if your friends (the content providers) simply provided you with access to MPEG videos and MP3 files via FTP or HTTP. Then you'd download (at whatever speed, who cares) and playback at your leisure.
But that would probably be too easy among your friends, and is probably not an option at many of the "new media" sites on the modern stupor hypeway.

(?) Kernel Patches and Change Logs

From John Covici on Sun, 11 Jul 1999

Hi. I found your link at linuxhq.com and I would like to ask a question to which I have not been able to get an answer after much looking.

Where can I look at changelogs for recent kernels (2.3.x and maybe 2.2.x)? I looked in the patches themselves, at linuxhq.com, at freshmeat.net (which has so much that I may not have completely searched it) and Linux Documentation Project.

I hope you can answer me individually -- thanks so much for your help.

John Covici

(!) The Linux kernel changelogs are rather informally maintained. Brief summaries can be found at:
Cutting Edge:
http://edge.kernelnotes.org
... while more detailed information can be found in the patches themselves. There is a "Patch Browser" which allows you to preview the diffs (patches) using a web browser. This is obviously only useful for glancing through the list, guesstimating the impact of the changes based on the various sizes of various patch files to various files, and or reading the changes to the various README, CHANGES, and Documentation/* files.
The Patch Browser can be found at:
http://www.kernelnotes.org (sort of formerly http://www.linuxhq.com)
For unofficial (non-mainstream) patches the best site I've found is:
The Linux Kernel Patch Archive
http://linux-patches.rock-projects.com
Rock Projects seems to have their own Linux distribution available:
http://linux.rock-projects.com
This seems to be in beta --- and it seems to be targeted to very techie users. If you're the sort of person that takes a FreeBSD installation, changes to the /ports directory and types: 'make world' than this might be the Linux distribution for you. You can download all 200Mb of this, or send the author $8 U.S. and he'll send you a CD. (Note: actually it seems he'll use the Australian equivalent of C.O.D. if you're in a place where that's possible for him, which apparently doesn't include the U.S.).
Naturally you can learn more about Rock Projects at their master web site: http://www.rock-projects.com (He seems to like using lots of "hostnames" as psuedo-URLs --- I'm guessing these are mostly virtual hosted off of one system).
There used to be a nice collection of unofficial patches at:
Linux Mama
http://www.linuxmama.com
However, this seems to have fallen into decay. Apparently Kurt Hewig (the original maintainer of Linux Mama) got busy with other matters and no longer has time for these. The old patches are still there. They just haven't been updated in about a year.

(?) Installing Win NT 4.0 Workstation and Dual booting Win NT 4.0 Workstation and Win 95 B

From Steve Gunderson on Sun, 11 Jul 1999

Hi Answer Guy,

I have several (shotgun approach) questions which I would like to present you with. If you could shed some light on any or all of them, I would appreciate it.

  1. While running the NT 4.0 install discs, I get the following error:
    Stop: C0000221, unknown hard error\systemboot\system32\NTDLL.dll.
    I have Win95 B installed and am attempting a dual boot. I have an extended partion (220 Meg FAT 32) ready for NTFS. Will the install work if I reformat w/o Win95?

(!) I think a Linux installation would work much better.

[ For one thing, ZipSlack (http://www.slackware.com/zipslack/) would fit in 100 MB. -- Heather ]

(?)

  1. How would I create a Dual boot for Win NT 4.0 Workstation and Win 95 B.

(!) I don't know. However, there is a pretty good series of Linux Documentation Project HOWTOs on various multi-boot configurations like:

(?)

  1. Is there a utility that will let me Multi boot from two separate hard drives? Both have Win 95 installed and I want to install NT 4.0 workstation on one of them, possibly by itself.

Thank you in advance for your help.
Steve Gunderson

(!) You could look at a commercial package called "Partition Magic"
I've personally never used it, but I know it supports Linux pretty well.
You see, I've gotten out of the habit of installing Microsoft based operating systems on my computers. I've never tried to run two MS operating systems on a single system. (Actually my old box, antares used to have a triple boot MS-DOS 5.0, OS/2 2.0, and Linux --- but that was a long time ago --- and MS had disowned OS/2 by then anyway).
I suppose you could install Linux and run NT and '95 inside of VMware (http://www.vmware.com). I know it will run both of them. Heck you can run both of them concurrently if you have the RAM. You can have each running full screen or in windows (under the X Windowing System, XFree86). I think you can even switch from full screen to windows on the fly.
VMware is a commercial package. It appears that work on WINE (*) (a re-implementation of the MS Windows APIs and base programs and utilities) is continuing.
Bochs, of course, is a package which emulates an entire PC CPU and chipset. It is distributed in source form, can be compiled and run on most Unix platforms (and there is a port to MS Win32) and can run MS Windows, or Linux or most any other PC operating system.
Please note that I'm the LINUX GAZETTE Answer Guy. I volunteer time, writing and research to answer Linux questions. (I also work at a company that provides commercial support for Linux, though that's a more recent development).
Because Linux follows UNIX conventions this also entails answering many UNIX questions. Because most of the systems out there, running Linux or otherwise, are PCs I also answer quite a few generic questions about PCs.
I volunteer my time in this endeavor because:
  1. It's fun.
  2. Linux is free. I benefit from it and providing support is a way for me to contribute back to the community (since I'm not much of a programmer).
  3. It often forces me to learn more about Linux and the other software that I use.
  4. It gains me some small degree of recognition.
I don't support NT or other forms of MS Windows because:
  1. they aren't fun to me.
  2. Microsoft doesn't pay me to and doesn't give me, or anyone I know, anything for free, and isn't a participant in my "community."
  3. I don't want to know any more about MS Windows.
    I professionally supported MS-DOS and Win 3.x products for a few years, and I never liked MS Windows. The superficial changes to the MS Windows UI in '95 and '98 are no improvement to me, and the underlying structural foundation "feels" like a desparate attempt to shore up the hull of a sinking ship by welding more and more slag over it. (One of the few things I learned from the brief stints of welding that I've done: You can't make a sloppy weld stronger by adding more metal over the seams).
  4. recognition as an MS Windows expert will get you a cup of coffee in some places (so long as you toss in a couple of bucks). Of course, it might get you tossed out of a few other places (*).
To get answers about NT, perhaps you should go to the vendor that sold you their software. Wasn't "technical support" supposed to be one of the added values of buying commercial software?

(?) 5 1/4" Floppies: Truly Dead

From Terry Allan on Fri, 09 Jul 1999

Dear, mr. answerguy. I am consulting with a movie rental store. There current computer system is running on a menu driven operating system called PC-MOS. I know what your thinking, that I mis-pelled PC-MOS and it should be PC-DOS. Unfortunately, it really is PC-MOS.

(!) No. I'm not thinking that. I used PC-MOS occasionally a few years ago. My favorite local pizza parlor runs a billing and order entry system under PC-MOS.
PC-MOS is/was a multi-user PC-DOS clone that was published by TSL (The Software Link) during the late eighties. There were also a couple of other multi-user/multi-tasking operating systems with more or less DOS compatability. I professionally used CCI's version of Concurrent DOS (licensed from Digital Research's C-DOS, which was later called MDOS).
I can't seem to find links to TSL in Yahoo! and Google searches. I guess they must have disappeared completely. Apparently they were involved in some landmark lawsuits related to shrink-wrap software licenses. Most of the links I found at Alta Vista and Google were in discussion of these and UCC Article 2B (ancestor of the UCITA) laws that relate to the enforceability of these licenses.

(?) Anyway, I had them back some files up on a 5'1/4' floppy disk. And when I put the floppy into my 386 Dos-based computer to try and read it, the computer tells me that the disk is not formatted, and would I like to format it. My operating system on my computer will not even recognize the disk as a valid disk. Can you offer any suggestions? Is there any conversion software utilities that could make the data files readable on my dos-based machine.

-James

(!) People don't use 5 1/4" (I don't think you meant 5 1/4' -- FOOT) diskettes and more.
Is this a high density (1.2Mb) drive? Is it a 360K diskette?
I'd buy a $30 dollar 3.5" disk drive and install that. I'm pretty sure that your 386 and PC-MOS will support the hardware.
1.2Mb floppies were always much less reliable than their 3.5" 1.44 Mb cousins. Also those drives could not reliably interoperate with 360K media and the 1.2Mb media weren't terribly reliable when formatted to 360K
My advice: remove all 5 1/4" drives (some of us may want to store on shelves for reading legacy media as it shows up) and replace them with 3.5" drives (at least).
It would be nice to replace 3.5" HD (1.44Mb) media and drives with something like LS120 or Zip Disk. However, none of the large capacity formats is really ubiquitous enough to declare it to be the new de facto standard.
CDRW isn't more than about three times more expensive than LS120 --- but it has five times the capacity. DVD-RW isn't more than than ten times more expensive, but it does offer more than 20 times the capacity.
I'm not suggesting LS120, CDRW, or any of that to your situation. PC-MOS and your old 386 probably won't support these newer media. The versions of PC-MOS and CDOS that I remember didn't have support for SCSI --- or had very limited support for only a few SCSI host adapters. You might be quite challenged to find a controller that you could use with this old OS.
This brings us naturally to the question: Can you migrate this software to run under DOSEMU (under Linux) or to some other operating system that's been updated within the last half decade or so?

(?) How to Use a Disk with a Bad Track 0

From nguyen kim thai on Thu, 08 Jul 1999

(?) Dear Sir.

How are you? I'm Writing to ask you How can I using my hdd with track 0 bad? Please reply me as soon as you can. yours

LinhNGO

(!) I presume that you mean that track 0 SECTOR 1 is bad.
In that case the way to use the disk is as a door stop, or paper weight. They aren't heavy enough to be used as boat anchors and they aren't aerodynamic enough for use as Frisbees(TM)
For years I've thought that HD manufacturers should have a setting on the drive (possibly in NVRAM) which would contain the CHS (cylinder, head, sector) address of the virtual track zero. (Even just a cylinder sector value set by jumpers would be something).
I suspect that most modern drives (IDE and SCSI) do apply some of the same bad sector management to their diagnostic and track 0 handling as they do the rest of the drive.
These vary among drive models but, as I've said before, the integrated electronics that operate most disk drives are running rather sophisticated firmware for managing their cachine, bad sector remapping, error recovery and detection (with logging and data migration) etc.
So "bad spots" on the disk surface generally should not cause much trouble that would be visible to the user or the OS (on most late model drives). The problems we usually see are those that affect the whole drive (a head dies, taking a whole side of a whole platter with it, a spindle developes "stiction" and the whole set of platter just doesn't spin, a motor fails or the voice coils that move the head arm set toward and away from the hub get fried). Those are the sorts of things that all result in losing the whole drive --- or massive portions of it.
(For stiction you can sometimes get it "kick started" by dropping the drive several inches unto a reasonably hard surface, for other failures you can go to specialty service and repair shops --- which are much more expensive than replacing the drive. Those are are mostly used to ATTEMPT to recover the data that hasn't been backed up.)

(?) Get your private, free Email by Vietnamese at http://vol.vnn.vn
B?n c? th? t?o m?t h?p th? mi?n ph? tr?n

(!) When sending e-mail over the Internet --- it is still considered improper to include "high ASCII" (accented characters, etc) in your main text. You can use "quoted printable" (a MIME format) or (if you really MUST) put your internationally rich content into a file attachment (uuencoded or MIME Base64 encoded).
I've replaced the accented characters (VISCII?) in your message with question marks.
I realize it's "unfair" that most of the modern computing infrastructure was built without consideration for non-English languages and character sets. However, it's still a fact. Please don't send "8-bit" ASCII to people unless you know for a personal fact that they are running 8-bit clean software and compatible ISO/NLS (nationalized language support) (i.e it should be fine when exchanging mail throughout the .vn and related domains).

(?) Benchmarks

From Andreas Kupries on Mon, 05 Jul 1999

The sentence

"There are lies, damned lies, and benchmarks"

(from http://www.linuxgazette.com/issue42/lg_answer42.html) is incomplete. The completed sentence is:

There are lies, damned lies, statistics, benchmarks and delivery dates.

(Not my invention, saw it as sig somewhere on usenet).

(!) One of the pages I linked to in this article implied that this was a paraphrase of a comment by Benjamin Disraeli (http://www.skittler.demon.co.uk/victorians/disraeli.htm)
I don't actually know any about Disreali other than what I just read in this link that Yahoo! spit out. I'd heard the name before, that was all. Overall he sounds like quite a chap. We could use a few more like him in modern government ... on both sides of the big puddle, I'd say.

(?) What part of "Win Modem" Didn't you Understand?

From Willy B Mac on Sun, 04 Jul 1999

Hi, hope you can help me. I've looked through your site and couldn't find the answer, even though it might be there. I have doslinux installed and it works great. The problem is that it won't detect my modem - a Lucent Win Modem. Another problem I am having is When I get a file for linux, like the pcmicia ( prob not exactly what it is, but you get the idea) I can't find it when I get Unix fired up. I put it in the doslinux folder, but can't find it then. Thanks for any help you might be able to give me :)
WillyBMac
By the way, Great site you have there :)

(!) Linux doesn't support winmodems (or, more precisely the winmodem manufacturers and their chipset vendors refuse to support Linux). If you search the site a bit you'll find that I've answered this question several times every other month.
If you are dropping files into your DOSLinux folder from Win '95 they are probably appearing in your root directory when you start Linux (through the LINUX.BAT). In any event that's not the best way to accomplish the file transfer. You'd be much better to put the files into your own C:\TMP or into some sort of C:\DOWNLOAD or D:\DLOADS (folders you'd create for the task).
DOSLinux puts a root filesystem into a DOS subdirectory and provides access to your MS-DOS directories and filesystems.
As the name implies the use of DOSLinux does require some understanding of how MS-DOS and Linux work. If you don't understand MS-DOS at all (you've only used the Windows GUIs on top of it) then you'll have a difficult time of it.
DOSLinux is a good hack for experienced users but a bad choice for newbies. I'd suggest adding a whole hard disk and installing a full-sized, general purpose Linux distribution (like Red Hat, S.u.S.E., Caldera etc.) on that.
As for the modem: Throw it away. Get a real modem. (External modems are a much better idea. They are more reliable, easier to use for troubleshooting and will work with almost any computer --- PC and non-PC alike).

(?) Seeing only 13M of RAM

From Leon Vismer on Sun, 04 Jul 1999

Howdey James,

I know that you have answered the question regarding how to get Linux see 128M RAM before, however I still just get linux to see about 13M of RAM (13M is what the command top and procinfo display) where I have 128M installed on the machine.

Some machine details: Pentium II 350 with an EPOX motherboard and 128M 100MHZ RAM, running Redhat 6.0 with kernel 2.2.5. I use lilo to boot and I include a snippet from the lilo.conf

>        image=/boot/vmlinuz
                    ....
>                    append="ram=128M"
>                    read-only

Any ideas from your side would be greatly appreciated.
Regards
Leon Vismer

(!) It sounds like your system is "seeing" (using) all 128Mb of RAM and that you are probably must misreading the output from 'top' and/or 'procinfo'
Here's an excerpt from 'procinfo' on one of my systems:
Linux 2.2.0 (root@canopus) (gcc 2.7.2.1) #8 [canopus.(none)]

Memory:      Total        Used        Free      Shared     Buffers      Cached
Mem:         63200       61304        1896       25688        3940       13192
Swap:       104416           0      104416
Note that it lists 63200 as my total memory (this is a 64Mb system.
Here's a screen shot from the top of a 'top' session (cut using the 'screen' cut and paste features):
3:27am  up 4 days, 18:04,  8 users,  load average: 0.00, 0.00, 0.00
57 processes: 55 sleeping, 1 running, 0 zombie, 1 stopped
CPU states:  0.9% user,  1.1% system,  0.0% nice, 98.0% idle
Mem:   63092K av,  61224K used,   1868K free,  39184K shrd,   1384K buff
Swap: 231276K av,  24800K used, 206476K free                 16788K cached
This another 64Mb system.
If you really aren't seeing more than 13Mb (more likely to be 16Mb actually) on your system then you may want to double check your CMOS settings and consider testing the hardware using some other OS.
The append= directive should no longer be necessary with newer (2.2.x and later) kernels. However, you didn't mention which kernel you're using and specifying a correct value won't hurt.

(?) CD Duplication Services: Spam?

From Worldwide Ad Network Customer Service on Sat, 03 Jul 1999

Subject: A Fair price for CD duplication

Hi,

I was wondering who you use to get your CD's duplicated and if you are happy with the service they provide?

I have a CD duplicator which makes 7 copies every 10 minutes. I'm not sure what to charge for this service. My thought is very simple, find out what everyone else is charging to duplicate CD's and then offer better service at a lower price!

I get jewel cases and blank media from overseas. I buy in volume so they cost me pennies each!

Thank you for taking time out of your day to reply. Britt

(!) I think you're a bit too late to this game. Anybody who really needs CD's burned probably has a burner of their own (suitable for about 4 copies per hour or less --- but enough for most people's needs).
Your materials costs may be inconsequential (pennies each) but you obviously have other costs to consider. (The fact that you're asking me this question suggests that you haven't studied business economics at all --- or that this is a clever ploy to advertise your new service without being labelled as a spammer).

[ If so, it's less than likely to get you positive clicks. For one thing, I clean off sigs, unless Jim specifically refers to them, and I reduce the sender's name to the actual name rather than any extra fluff, in an effort to keep the bylines short and friendly. On the plus side, at least the message itself was short. -- Heather ]

First there are your equipment costs. You have to amortize the cost of your duplication system over its expected lifetime (so that you'd be able to replace it as needed if you wanted to make this into a sustainable business). You'd also have to leave a bit of margin for maintenance, repairs and replacement of the cost (in case the duplicator fails during it's expected lifetime). Plus you want to add a small margin over that to support purchase of additional equipment for increased capacity. You may not expect to "grow like hotcakes" but it's silly not to plan for some degree of expansion.
Next you have to consider postage and or parcel delivery costs. This will be a major factor in your proposed business since you clearly don't intend to cater to an exlusively local clientele. The "pennies per copy" is suddenly overwhelmed by the "dimes per copy" of shipping cost (for low volumes) and/or dollars per order (for larger volume requests).
Then we ask what services you offer (over and above the basic duplication/production of CDs and package in jewel cases). For example you might need to print labels for the jewel cases and/or offer silk screening or labeling of the CDs themselves. Some, possibly most, of your customer might prefer to have their CDs packaged in cardstock sleeves or mailers rather than jewel boxes. For multi-CD sets your customers might need various other packaging options.
Professional graphics design of labels and the jackets, sleeves, etc is more art than technology.
If you really want to make a business of this I'd make the custom CD duplication an adjunct to your own production. You could do mail order Debian (or Red Hat or other Linux distribution) CDs. You'd be in competition with Cheapbytes (http://www.cheapbytes.com/) of course. However, you might be able to open up new markets in places where Cheapbytes and it's competitors haven't yet reached.
I haven't seen Linux CDs advertised in the back of Popular Science and Popular Mechanics magazines, yet. There are far less interesting items listed in their little "classified" sections. You could also advertise in various other niche magazines. If you're selling your single or dual CD package for less than $10 you'll probably make a small margin and get relatively few returns. You probably will get a lot of technical support calls --- regardless of how boldly you assert that "support is not included" on your marketing and packaging. Responding to support requests can be time consuming and therefore can become a significant cost of your business. (Yes, it can cost almost as much to NOT provide service as it does to provide it).
Of course there are other niches you can reach. For example in my role as an instructor at Linuxcare I find that we periodically need small production runs of custom CDs for our labs. Currently we have our own support people doing these (graveyard shift mostly). It's easy to keep that extra machine "cooking" while working on phone calls, e-mail and documentation. We also need floppies cut in about the same quantities.
When I was teaching at Mission college last term I took some extra copies of the free Red Hat 6.x CD and distributed to my class to encourage them to work and play with the class materials on their home systems.
I imagine that lots of instructors would like to cook up small runs of CDs for their classes. The free source and free content movements make this feasible for some materials. Obviously there are major copyright concerns as we branch into more mainstream materials.
(You should not ignore liability issues if you plan on making a business of this. If you copy a CD full of commercial music or software for one of your customers it won't matter whether you knew what was on there or not, and it won't matter whether you prevail in court; the costs of defending yourself may leave you destitute. If you opt to incorporate --- to limit your personal liability --- then you've got to factor in the considerable costs of incorporation into your business plan).
One of the sad facts about life in the modern world is that it's practically impossible to run a simple "mom & pop" shop or service without putting in plenty of effort into the research, planning and paperwork. It's what I hated about running my own consulting service.

[ But I'm glad that he did all these things before he gave it back to me. When I began consulting years ago, I'd never bothered to get even as much as a DBA. If this business is the only income for you and your family, you also need to make sure that your utility and other regular bills have some regular way to get paid, even while you're starting up. It might even require some government funding or a business loan, which are a lot more paperwork.

Also, in my case, I sell knowledge, and my own time and experience to crystallize it into usable form for small businesses. The first already has its storage space, and the latter is somewhat easier than many products to keep inventory of. For yours, even at minimal levels of success, you need some physical place to keep CDs and shipping packages. -- Heather ]

However, you might learn quite a bit by "doing it wrong" with a sort of "hobby" business. You might find that you have the knack for it and actually enjoy it as well.
Anyway, good luck and have fun.

(?) Proxy Program?

From Figueroa Alfonso on Sat, 26 Jun 1999

(?) Does anybody has a proxy program ??

(!) One of the oldest and most common proxy server packages is NEC's SOCKS. You can usually find a set of SOCKS version 5 client and server RPMs at: ftp://contrib.redhat.com
A couple of others can be found at Freshmeat (search on "proxy server"): http://www.freshmeat.net
I've used DeleGate -- which is easy to set up and seems to be pretty well-written. You can find it at: http://wall.etl.go.jp/delegate
DeleGate is a server/proxy. It is compatible with SOCKS clients (so you can just use the SOCKS client RPMs with it). It's also possible to manually traverse a DeleGate proxy (similar to how you can connect to a TIS FWTK proxy and manually tell it where your real destination lies). DeleGate seems to have some caching features as well as the security oriented proxying.
If I read it correctly, DeleGate has added ICP (Internet caching protocol) standard features to allow it to act as a caching peer with other ICP FTP and web caches (such as Squid).
Of course you didn't specify which sort of proxy server you're looking for. If all you're looking for is simple caching (not tailored for security) you could use Squid, or Apache.
DANTE is supposed to be another SOCKS compatible proxy server. This one claims support for SOCKS version 4 and version 5 clients. I've never used that one but you can find it at: http://www.inet.no/dante

"Linux Gazette...making Linux just a little more fun!"


More 2¢ Tips!


Send Linux Tips and Tricks to gazette@ssc.com


New Tips:

Answers to Mail Bag Questions:


Xterm Huge Font by Default

Date: Sat, 24 Jul 1999 03:59:08 -0700

When you run X in 1024x768 or 1200x1024 you might notice that a typical xterm comes in a font that's just a bit too small to read.

Of course you can use a [Ctrl]+[Right Mouse Click] to bring up a small menu of alternate fonts (ranging from "Tiny" to "Huge") to interactively change these to a more (or less) readable setting. However, that gets old after awhile, and it's irritating to have to teach that to every new user as we migrate more people from those "legacy" systems like MS Windows.

So, here's how you can change the default font for your xterms.

Basically all you have to do is add an entry to your "X resource database." The "X resource database" is sort of like your shell environment.

Just as the environment contains a list of values associated with names. In the case of the environment you have names like PATH, TERM, HOME, etc. The X resource db contains patterns like XTerm*foreground: X applications (clients) query the X server and get the patterns that most closely match the names of the settings that they are looking for.

Thus the resource pattern XTerm*foreground: matches XTerm.menu.foreground, XTerm.terminal.foreground and XTerm.anything.else.foreground. So, whatever value this resource pattern has (a color, for example) will be used for any settings that don't have a more specific match. If you had XTerm*foreground: Cyan and an XTerm.main.foreground of Wheat then the "main" windows would be set to "Wheat" (an off white color) and all of the others would have a "foreground" color of cyan (a bright bluish green). (I'm just making up some of these names, by the way -- I don't know if xterm looks for any XTerm.main* or XTerm.terminal* etc.

Just as the programs you start under a shell may take settings and options from environment variables, so an X client can take settings from the X server's resource database.

When you start your X server, one of of the things the typical xdm, xinitrc, ~/.Xclients, or ~/.Xsession will do as part of the process is to invoke the xrdb command. So you can set these resources by editing files and restarting X. By default the system will look for a file named ~/.Xdefaults and merge those into any settings that are compiled into the server. In fact you can change your resources without restarting X by using a command like:

 		xrdb -merge ~/.Xdefaults

So, to change your "normal" font size for your xterms you can use a setting like:

	XTerm*VT100*font: 10x20

... there are many other settings (like X XTerm*VT100*font1: through XTerm*VT100*font6: (which correspond to the tiny, through the Huge settings).

You can get a list of (some) resources using the appres command. Some can be found in the man pages. There is no comprehensive list of these that I know of. I suppose is all in the source code, somewhere!


Redhat 6.0 on a Sharp Widenote

Date: Wed, 28 Jul 1999 15:30:38 -0500 (CDT)
From: jwang@CS.UH.EDU (John I-Chung Wang)

Hello

I've recently installed Redhat 6.0 on a Sharp Widenote after swapping the factory 1 GB drive for a more suitable 6.4 GB drive purchased over the web.

The interesting thing about the Widenote is that the display is a letter box format (16 x 9) screen which has a resolution of 1024x600. It works just fine at the default 1024x768 settings except that the lower 168 lines are not visible hence the command panel for the enlightenment GUI is not easily used.

Various websites on the Internet had proposed XF86Config files but all of them tried to combine the horizontal modeline arguments of the 1024x768 settings with the vertical modeline arguments of the 800x600 settings. This approach does not work and admittedly, the web pages advocating those settings stated that they still could not get them working.

Well, the solution is far more simple. the display is a 1024x768 display in every respect except that only 1024x600 is visible so you actually want to keep all the timing sections of the 1024x768 modelines the same, except for the 768 which indicates what can be displayed. So just use the LCD 1024x768 XF86Config file except change the one 768 to 600 in each modeline for each 1024x768 setting ie.:

	Modeline "1024x768" 44.9 1024 1048 1208 1264 768 776 784 817
becomes:
	Modeline "1024x768" 44.9 1024 1048 1208 1264 600 776 784 817
	                                             ^^^
	                                       only thing changed

Note there are multiple Modeline's for the 1024x768 setting, I changed all of them to be on the safe side though presumably only one need be changed, I'm just too lazy to figure out which one. Of course, it does mean that if you wish to use the full 1024x768 on the external monitor port, you'll have to swap XF86Config files.

This solves the problem without having to rewrite the XF86Config file from scratch. I thought I would email the Gazette since I'm too lazy to mess with authoring web pages at the moment.

[I moved your PPP question to the Help Wanted section. -Ed]


suprasonic II modem info

Date: Fri, 16 Jul 1999 05:23:19 -0500
From: Giancarlo Castrataro <weenrdog@bluemarble.net>

To get the suprasonic II modem to function properly, try the following steps:

0) Set modem to jumpered config, boot, and back to PNP (this resets PNP config)
1) Configure modem properly in windows 9X to reasonable settings...
2) I used com1/com2, and irq 3
3) Set bios to PNP OS: NO
4) Ensure that the modem entry in isapnp.conf is commented out (should be already)
5) Use /dev/ttySn and /dev/ttyS(n+1) for each modem respectively

(step zero is if you are having problems with getting the modem to work in win9X)

I also have information on getting the modem to work in windows 98 SE. I found that all I had to change was one registry key, and shotgun shows up under the DUN modem types.

Computer Science Student at Indiana University,
GC


Preventing core dump files from appearing

Date: Sat, 24 Jul 1999 01:11:55 +0200
From: xvudpapc <xvudpapc@savba.sk>

Hi everybody,

I want to contribute with a small but very useful tip. I'm not a programmer, so I'm quite disinterested in linux core dumps and I wondered how to remove them. I found out that this worked. Put it in .bashrc or in a .login script.

	ulimit -c 0

Enjoy,
Juraj


Linux partition sizes

Date: Tue, 20 Jul 1999 21:54:19 -0600 (MDT)
From: "Michael J. Hammel" <mjhammel@graphics-muse.org> Thus spoke Dana J. Hall <danahall@concentric.net>
My question is, if you would be so kind, could you go into a little more detail. I know how to run fdisk, that is not the problem, but I am a little unclear as to what would go onto the system partition, how large to make it and what is considered data files.

The system partition should be about 2G. That's because if you decide to take the easy route and install everything from a RH distribution you', they get automatically shoved into the system partition.

That said, you should understand I'm talking about KDE and GNOME system libraries and environment files - the core bits of these two. An application written for GNOME or KDE can be installed under /usr/local later, after you download from the net and build it yourself. But the KDE and GNOME environment and development files are likely to go under the system directories during installation. There's really no reason to change this.

red hat manual says the boot partition should be about 16meg and the root partitiion about 500m - 1 gig. They state that all apps go on the root partition but I don't think that is what I want.

Only the apps *they* install will go there. Don't bother trying to separate out the applications to another partition during installation (in fact, I doubt you can do so). What you're separating with multiple partitions is

  1. what comes on the installation CD
  2. the data you create on your own
  3. programs you download and build on your own.

Over time, you end up replacing the tools on the CD with newer versions you download from the net. In most cases, you'll build and install them under /usr/local, then use rpm to remove the original version you installed with RH 6.0. In cases where using rpm to remove the original will break many dependencies (Perl is a good example of this), you can just install the new version, they get automatically shoved into the system partition.

That said, you should understand I'm talking about KDE and GNOME system libraries and environment files - the core bits of these two. An application written for GNOME or KDE can be installed under /usr/local later, after you download from the net and build it yourself. But the KDE and GNOME environment and development files are likely to go under the system directories during installation. There's really no reason to change this.

Any clarification would be much appreciated. I'm what I would call a "liitle past beginner stage, but not much" Linux user. I am a developer, mainly on the Tandem mainframe (about 15 yrs), some windows development and about 2.5 yrs on Linux using as a workstation and developing. My only experience has been with Slackware.

Thanks again,
Dana Hall

Best of luck to you. You should sign up for the Boulder Linux Users Group mailing list. There is always some help there. I still learn things from the folks on that list, but they manage to help just about every level of user.

--
Michael J. Hammel, the Graphics Muse


ssh tip

Date: Thu, 22 Jul 1999 16:31:33 +0200 (MET DST)
From: Frido Ferdinand <frido@euronet.nl>

Just discovered a neat trick to using ssh-key authentication in a nice way, this will let you connect to remote hosts without typing in your password all the time. It's also very convienient to make (perl) scripts connect to remote hosts without using scary .rhosts/rsh combinations.

To use this just do the following:

1 Install ssh
---------------
You can get the source from: ftp://ftp.cs.hut.fi/pub/ssh/
or RPMS from: ftp://ftp.replay.com/pub/crypto/linux/redhat/i386/


2 Run ssh-keygen
----------------
ssh-keygen - authentication key pair generation
Run it and use a good long passPHRASE. (phrase not word)


3 Edit .xinitrc
---------------
Put in your .xinitrc ssh-agent in front of the command

for example 

	# Window Maker default X session startup script 

	PATH="$PATH:/usr/X11R6/bin"

	exec /usr/local/bin/ssh-agent wmaker
	exec /usr/local/bin/xscreensaver -no-splash &

I think that if you use xdm you should edit your .xsession file.
Now every time you start up ssh-agent, the program that will manage your
ssh-keys, will start up in the background.


4 Run ssh-add
-------------
When you're in X just type in your favourite terminal,

ssh-add

It'll ask you for the passphrase of your key, type it in and your
private key will be loaded in memory.



5 Authorize the remote host 
---------------------------
Now on the host to which you want to connect, do the following:

copy the contents of the generated public key (.ssh/identity.pub) 
to the "authorized_keys" file on the remote host. Be sure to set
the permissions of this file to 600. 

Now connect to your remote host with: ssh remote-host. If everything
goes well you won't need to type in your password but still have
a good secure authentication scheme.


6 Examples
----------

Run command 'ls' on remote host:

	ssh remote-host ls

The ssh-agent uses two environment variables: 

	set | grep SSH gives

	SSH_AGENT_PID=10953
	SSH_AUTH_SOCK=/tmp/ssh-frido/ssh-10952-agent

In your perl script put:

	$ENV{"SSH_AGENT_PID"} = 10953;
	$ENV{"SSH_AUTH_SOCK"} = "/tmp/ssh-frido/ssh-10952-agent";

And you can do:

	$output=`ssh -q remote-host ls` 
	print $output

I normally use this to call other scripts. This way  you can have one script 
which accesses multiple servers !

There's lots of other things you can do with it, just experiment with it !
Thanks to some of my collegues for some great tips. 


Tips in the following section are answers to questions printed in the Mail Bag column of previous issues.


ANSWER: Toshiba Tecra 8000 and 4030CDT

Date: Tue, 27 Jul 1999 14:49:10 +0100
From: "Olsson, Hasse" <Hasse.Olsson@cai.com>

Tom Wyrick (twyrick@paulo.com) wrote:

I recently attempted to install RedHat Linux 6.0 on a Toshiba Tecra 8000 notebook computer, and ran into a couple of problems. The first time I installed it, everything appeared to be working properly, except the keyboard keys were too "touchy". Many times, it would act like the keys were sticking and print a character twice when it was pressed once. (I've seen a couple other references to this issue on Usenet, but no solutions were posted.)

After I used Linux for several days on the notebook, I encountered a situation where it didn't unlock the hard drive for read/write usage after it finished performing a disk check with fsck, and subsequent reboots failed due to the file system being stuck in "read only" mode. At this point, I decided to reformat and do another install from scratch. This time around, the only changes I made were #1, not to put the system in runlevel 5 so it started in X immediately upon boot-up, and #2, enabled the apmd service for advanced power management. When this install completed, I had problems right away where Linux would boot - and then I wouldn't be able to type on the keyboard at all. (Every so often, I was able to get control of the keyboard back - but only after multiple reboots by hitting the power button on the notebook.)

Has anyone else out there had any luck running Linux on a Tecra 8000?

Thanks, Tom.

I had the same problem on my old notebook (digital Hinote) and Redhat 6.0. Now I've just installed Linux Mandrake 6.0 on My Tecra 8000 and every thing works perfect. Mandrake has:

You can try to update these or simply get Mandrake..

Just an extra note. On my Hinote I solved the Keyboard problem by connecting an external PS/2 mouse. So this might also be true in your case.

Cheers Hasse

Another response...

Date: Fri, 2 Jul 1999 15:20:39 -0400 (EDT)

From: Padraic Renaghan <padraic@renaghan.com>

You can find information about Linux on the Toshiba Tecra 8000 at: http://www.shroom.com/linux/laptop/8000.html.

Also take a look at:

You can find information about Linux on the Toshiba 4030CDT at: http://www.gumbley.demon.co.uk/linux-tosh-4030-cdt.html
There is a specific section on that page called "My Custom X Server for the Cyber 9525" that should help you out.

--
Padraic Renaghan


ANSWER: Graphical FTP & sync FTP

Date: Fri, 2 Jul 1999 15:28:38 -0400 (EDT)
From: Padraic Renaghan <padraic@renaghan.com>

For graphical FTP, I like IglooFTP: http://www.littleigloo.org.

For keeping my webserver, renaghan.com, in sync with the changes I make in my local development area, I like sitecopy: http://www.lyra.org/sitecopy/.

Sitecopy doesn't really synchronize ftp.server1 with ftp.server2 as it replicates changes you make on source.ftpserver to destination.ftpserver.

--
Padraic Renaghan


ANSWER: Dell Optiplex GX1 and the PS/2 Mouse

Date: Fri, 2 Jul 1999 16:49:22 -0700 (PDT)
From: "Allen D. Tate" <computermantate@yahoo.com>

Someone sent me a solution to my problem. I was sure it would be something simple and it was. The solution is listed below. The original problem is listed below the solution.

The solution:

hey, about your mouse problem in X windows. You probably have /dev/mouse linked to the wrong address. Make sure that ls -l /dev/mouse produces this output:

	ls -l /dev/mouse
	lrwxrwxrwx 1 root root 5 Jun 10 06:22 /dev/mouse -> psaux
	 
	and/or make sure in XF86Config:
	 
	Section "Pointer"
	Protocol    "PS/2"
	Device      "/dev/psaux"
	
The problem:
Date: Wed, 16 Jun 1999 07:14:20 -0700 (PDT)
Allen D Tate <computermantate@yahoo.com> asked:

I have a Dell OptiPlex GX1, Pentium II w/64 MB RAM and I'm trying to get X Window up and running but when I run startx, I get no response from the mouse. Has anyone ran into a similar problem? If so how did you fix it? I tried changing the mouse settings in the X86Config file but it didn't seem to help. Any comments or suggestions will be greatly appreciated.

Thanks,
Allen Tate
Evansville, Indiana


ANSWER: FAT32 and Linux

Date: Mon, 5 Jul 1999 16:27:57 +0530
From: "Aranya" <aranya@bol.net.in> rakeshm@za.ibm.com asked:

I just got a new PC and it came with Win 98 (and FAT32) pre-installed. I also recently read an article saying that Linux does not get along with FAT32. =&gr; LILO can;t be loaded on FAT32. Is this correct ?

I plan on installing Red Hat Linux 6.0 on a seperate slave drive, and having a dual boot. I need to keep my Win98 as well as everyone in the family uses it, and likes Games. Has anyone had any problems with Win98 and Linux ? Is there anything that I have to watch out for ?

Thanks
Regards
Rakesh Mistry

Gone are the days when Linux did not support FAT32. AFAIK, the last version of the kernel that DIDN'T support FAT32 was 2.0.32 and since then, FAT32 has been a part of the vfat fs. Since, RH Linux 6.0 has a 2.2.x kernel, there is absolutely no problem with making it co-exist with Win98 or using LILO.

Akshat


ANSWER: Vertical scroll bars and fvwm95

Date: Wed, 07 Jul 1999 14:17:54 +0200
From: "Remco Schellekens" <rse@dasc.nl>

In reply to your question how to get scrollbars in xterm under fvwm95:

It's not that difficult as you think it is. Under SUSE you probably have a= .fvwm-whateverfile in youre home directory, otherwise use the system.fvwm-whatever-rc file commonly located= in /usr/X11R6/lib/X11/fvwm.. Now look for xterm startup instructions (Exec xterm ......) and make sure= switch "-sb", wich enables the scrollbar, is included. By the way press CTRL+Middle mouse button on an xterm, and= first function you can set/reset is "enable scrollbar" no matter what kind of window manager you are using.

Greetings,
Remco


ANSWER: KODAK Picture Disk & gimp

Date: Wed, 07 Jul 1999 10:52:52 -0500
From: "Richard N. Turner" <rnturn@baxter.com>

About the inverted images you get back from Kodak:

You must remember that the image you see through viewfinder of your camera is actually projected and recorded upside down on the film (just like it is on your retina) and that's why Kodak stores them that way. Just kidding... I've been getting pictures on Kodak's floppies and have wondered about the inverted images as well. (The camera /does/ record them upside down, though.)

Seriously, you can use "xv", which should be available on your RH5.1 CD-ROM, to invert the upside images that you receive on the Kodak disk. At least that's what I've used. It may be possible to pull this off using the GIMP but I've yet to find such an option among the gazillion other things it can do.

[In the GIMP, right-click on the image to get the pop-up menu. Choose "Image / Transforms / Rotate". Select 180 and press OK. -Ed.]

BTW, I've heard that "xv" may not be part of the newer RH distributions. I hope that's not true; I've been using "xv" since I was running Consensys SVR4.2 on my old '486 and have gotten so used to it. I still use it to load JPEGs on my root window and haven't found a substitute that can do that yet.

Another response...

Date: Mon, 26 Jul 1999 17:07:19 +0200
From: sleske@filesvr1-cddi.informatik.uni-essen.de (Leske Sebastian)

If I understand you correctly, the pictures you load from the photo CD are upside down and you simply want to correct that, i.e. turn them around. To do that, you can use the 'rotate' function from the 'Transform tool' in gimp. In principle that lets you do rotation by any angle you want, but by holding the Ctrl-key, it lets you select the rotation angle in 15-degree steps. Just rotate the image by 180 degrees, and it should be 'right-side-up'.

As an alternative, consider using the ImageMagick tool (available from just about any Linux ftp site, and a part of most distributions). The 'display' program (part of ImageMagick), has a function to rotate an image by 90 degrees (key / ), you would just have to do that twice to get the desired effect. If you want, you can also automate the process with the 'mogrify' program (also part of ImageMagick). To rotate the file picture.jpeg in your currnent directory, just enter: mogrify -rotate 180 picture.jpeg The advantage of this is that the process works automatically. mogrify -rotate 180 *.jpeg for example, would rotate ALL jpeg-pics in your current directory. That's probably easier than doing it by hand for every picture. You should know, however, that mogrify overwrites the original picture file with the transformed version, so if you want to keep the original file, you should copy it first before using mogrify. (If the files are directly from the CD then you have the CD anyway, so then you won't need to make a copy).

I hope that helps. I'd like to know whether those tips did the job for you, maybe you could send me a short mail telling me whether it worked or not.

Greetings,
Sebastian Leske


ANSWER: xterm Scrollbars

Date: Wed, 07 Jul 1999 11:07:57 -0500
From: "Richard N. Turner" <rnturn@baxter.com>

Kedric,

The default xterm does not include scrollbars when you run it.

You can fix this manually for each xterm by bring up the "VT Options" menu by holding down "Ctrl" and clicking the middle mouse button (or chording the left and right buttons if your a two-button mouse user). You should see listed as the first menu item "Enable Scrollbar" which, in your case, is probably unchecked. Turn it on and you'll get a scrollbar.

If you always want a scrollbar you'll need to get into the menu definitions for fvwm95 and fix the command for launching an xterm. You'll probably want to include some xterm options so your xterm command will look something like:

     xterm -sb -sl 512

These options mean:

     -sb        ! Turn on a scrollbar.
     -sl 512    ! Save 512 lines in the scrollback buffer.

See the xterm(1x) for other useful options that you could specify.


ANSWER: Linux Gazzette Question

Date: Sun, 11 Jul 1999 10:16:29 -0700
From: Ted23 <ted23@isle.net>

I have had similiar problems with Windows98 and Linux with FAT32 partitions. What I chose to do was to first install Windows98 with FAT32 partitions on the entire drive. Then use a 3rd party software such as Partition Magic 4.0 to cut the hard drive in half both at FAT32 and preserveing my Windows games,...er I mean data. Then Install Linux, using disk druid on the unused partition, and completely reformatting it over to LInux partitions. I have had no problems doing that and have installed many dual boot systems that way. If you need some more help feel free to contact me.

Ted23 http://www.asenteck.com/~ted23


ANSWER: Netflex3 cards on redhat

Date: Wed, 14 Jul 1999 02:58:29 -0400 (EDT)
From: "John E. Vincent" <john@lusis.org> Subject: (fwd)

As far as I remember from setting up a friend's machine, you would need to compile or install the module for the TI thunderLAN cards. I hope this is a step in the right direction for you although I can't remeber the module name itself.

John Vincent


ANSWER: IPChaining and Firewall rules

Date: Sat, 17 Jul 1999 07:46:10 -0600
From: Warren Young <tangent@cyberport.com>

In Issue 43 of the Linux Gazette, the following appeared in the Mailbag:

I have a small home network with 5 systems. I use Linux as my proxy/firewall/dial-upon demand internet server and fileserver. Before I upgraded to RH6 I could go to any site on the Web. Now with RH6 I cannot get to some sites. ie: www.hotmail.com, www.outpost.com and www.iomega.com to name a few. I can get to them from my Linux box but not from the network. It sends the request and I see some data return but then everything stops.

I just tried, and those sites worked fine from my Win98 box which is proxied to the Internet via a RH6 box.

I think perhaps you are missing a few important rules, such as rules to allow DNS replies. My own script for enabling masquerading and firewalling is available at the URL below, in the "scripts" section.

That script is quite a bit more complicated than yours, but it offers a much tighter firewall. Plus, it's very well commented, so you should have no trouble modifying it to meet your needs. You should only have to modify the variables at the top of the script and leave the rest alone.

You should still read through the rest of the script, however, to ensure that its actions are acceptable to you. For example, it opens inbound Web access. This may be harmless, but if your webserver holds private documents, you'll want to comment that rule out.

Good luck.

Another response...

Date: Wed, 21 Jul 1999 13:42:15 -0700 (PDT)
From: Ray Van Dolson <rayvd@bludgeon.shocking.com> I had a similar problem using my Slack 4.0 box as the masquerading gateway... looks like your timeouts are ok, but I don't think it hurts to increase those a little... here's what fixed the problem for me though: Open your local ethernet init script (for me it's /etc/rc.d/rc.inet1, it's the file with the ifconfig eth0 lines in it, use grep if you're not sure). Look for a line similar to this one: /sbin/route add -net ${NETWORK} netmask ${NETMASK} eth0 This line sets up the eth0 routing table... make it look like this: /sbin/route add -net ${NETWORK} netmask ${NETMASK} window 8192 eth0 Below or nearby there should also be a line to set up your gateway route, looking similar to the above. Do the same thing basically, here's what my line looks like: /sbin/route add default gw ${GATEWAY} netmask 0.0.0.0 window 8192 In short, I think the problem has something to do with the packets being sent from your masq box to the web box being either too large or too small or are not reassembled correctly... setting this window setting seems to correct it though! Hope it works for you...


ANSWER: Any inetd wizards out there?

Date: Sat, 17 Jul 1999 08:06:46 -0600
From: Warren Young <tangent@cyberport.com> Subject: Re:

Your 2-cent tips column in issue 43 contained an answer to a question about using inetd to bind a given server to a particular address on a server with several virtual IPs. While the solution will work if you just want a given server to work on _one_ of those IPs, you can't, for example, run two different FTP daemons, each configured differently, and have inetd choose which ftpd to use depending on the requested IP address.

The correct answer to the original question is that inetd is not terribly useful for virtual hosting. Virtual hosting requires servers that know how to bind to a single IP address on their own. You then run multiple copies of that server, each configured for a different IP address.

I suppose it's possible to change inetd to allow what the original poster wanted, but so far as I know none of the alternative inetds does this. If you're _really_ interested in this feature, you might want to join one of the alternative inetd development projects (xinetd looks closest) and add your feature. There's a pretty good chance that the regular inetd people won't be interested in your patch because it would require changes to the inetd.conf file format. xinetd has already changed that format, so they should be open to other changes.


ANSWER: Installing Linux on > 2gb drives

Date: Sat, 17 Jul 1999 19:02:09 +0100
From: "Ray" <rjsinplym@btinternet.com>

Just been browsing the magazine for the first time today and thought I'd respond to the question of using large hard drives.

It's not a tip just an observation that I've installed Suse 6.0, RH 5.2 and then RH 6 on a 10.2 gb drive with now problems at all. The linux partition was on the last 2 GB of the drive, well outside the 2 gb maximum. The RH manual states that it's down to the bios as regards whether this will work or not so I would guess that it's possible on the mojority of new(ish) PC's. Mine is a year & a half old but worked ok. The only problem I had was that when I tried to compile a new kernel and update lilo using yast with suse 6 it then reported the error of the kernel lying outside the 2gb limit.

sincerely
Ray Smith


ANSWER: X won't start

Date: Sat, 24 Jul 1999 16:54:02 +0200 (CEST)
From: Roland Smith <rsmith@xs4all.nl>

Concerning your error:

	execve failed for /ect/X11/X (errno 2)

Errno 2 means "no such file or directory" (see /usr/include/asm/errno.h).

The file /etc/X11/X which shoud be a symbolic link to the X server, does not exist. It implies that your X installation is not complete, the configuration program has not made the correct link. Most of the time this is the last thing the configuration program does.

If you know which X server you should use, do the following: (supposing you use the XF86_S3 server, like I do) "ln -s /usr/X11R6/bin/XF86_S3 /etc/X11/X"

Now X should start if correctly configured.

Regards, Roland


ANSWER: FAT Compatibility

Date: Mon, 26 Jul 1999 17:31:49 +0200
From: sleske@filesvr1-cddi.informatik.uni-essen.de (Leske Sebastian)

you sent an e-mail to the Linux Gazette asking about FAT Compatibility:

At work I have a Linux (Redhat 6.0) workstation and at home I have a WinnNT machine. What are some good utils that I could use to write to a disk with a FAT fs under Linux? (I'm assuming that this would be easier than trying to get NT to read ext2...)

Maybe I can help here. The Linux kernel has built-in FAT support. All you need to do is to mount the disk (hard disk or floppy disk, it doesn't really matter) with a FAT filesystem. Then you will be able to access it just like a Linux disk.

How you do that depends on your system setup. You could either add an entry to your /etc/fstab file or mount 'by hand' using the mount command.

This is explained in detail in the 'DOS-Win-to-Linux-HOWTO', which can be found at any site of the Linux Documentation Project. A list of mirrors is at http://metalab.unc.edu/LDP/mirrors.html. Use any mirror and to go the 'Howto' section.

I hope that helps. I'd be interested to know whether you've been able to solve your problem, maybe you could send me an email if you've found your solution. Otherwise, feel free to mail me for more info.

Greetings,
Sebastian Leske


Published in Linux Gazette Issue 44, August 1999


"Linux Gazette...making Linux just a little more fun!"


Ted, a Rich Text Word Processor

By Larry Ayers


Introduction

Last month I wrote about the evolving AbiWord word processor. Another similar effort called Ted is being developed by Mark de Does, a programmer in the Netherlands. Rather than attempting to emulate the features of the ubiquitous MsWord, Mark has settled on a more modest goal (but a goal more likely to be achieved by a single developer): a word processor analogous to WordPad, a small application bundled with Windows. The idea is to facilitate document exchange with Windows users, using RTF (Rich Text Format) as the compatible file format. Both MsWord and WordPad can read RTF documents created with Ted, though for various familiar reasons the opposite won't always be true. But if you would like to be able to send documents formatted with your choice of fonts and even including embedded images and hyperlinks, Ted is well worth trying.

Mark de Does' motivation for starting this project two years ago were threefold:

Ted is primarily a one-man project. The graphics and regular-expression code and the spelling dictionaries were borrowed from other free software projects, but the bulk of the code is Mark's. Feedback and suggestions from users have been important; Mark writes:

Feedback in the form of bug reports and feature requests from users have been essential for reaching the point where I am now. Though this kind of contribution is commonly not as highly appreciated as coding work, it might actually be more important. It keeps our feet on the ground and us from autistic excursions into pure technology.

Obtaining and Installing Ted

The Ted ftp site, hosted by a Linux user's group when Mark's site was unable to handle the load, is the place to visit for the latest binary packages as well as source code (Ted is licensed under the GPL). The binaries are statically linked with the Motif libraries and are packaged in RPM as well as tar.gz files. Static linking means that it isn't necessary to have the proprietary Motif libs in order run Ted. I've found that the source distribution compiles easily using the freely available Lesstif libraries and headers, and the resulting binary is much smaller due to its use of local shared libraries. In order to successfully compile Ted you will also need to have the development packages for the libtiff, libgif, libjpeg, libpng, and libxpm graphics formats. These should be included on just about any Linux distribution CD.

After installation you will find the executable, Ted, in /usr/local/bin, a dictionary file in /usr/local/ind (a three-megabyte binary database derived from the ispell dictionary), and a sample RTF file (TedDocument.rtf, located in /usr/local/info) which is simultaneously a demonstration of Ted's capabilities and a help file. Dictionary files are available for a growing variety of languages.

To get an idea of what Ted can do, try loading the above-mentioned file in Ted; just type Ted /usr/local/info/TedDocument.rtf at a shell prompt.

Here is a screenshot of the first page of this file.:

Ted Window


Mark maintains a web site devoted to information and news about Ted.


Formatting and Images

As in most word processors, tab-stops are visible above the text window and can be adjusted with the mouse. Ted has its own font directory, /usr/local/afm, with a few basic Postscript fonts installed. More fonts can be added, though the procedure sounds a little tricky. In the Font menu, below items which toggle bold and italic, is an entry which will invoke the Font Tool, a small separate window which allows changing the font of a selected region. At first I assumed that setting the font in the Font Tool window would change the font for subsequently typed text, but it only works for selected text. The default font is ten point Helvetica; this can be changed by creating a file in your home directory named Ted. The following line in this file will cause new documents to use 14 point Times New Roman rather than Helvetica:

Ted.defaultFont: Times,,,14

Tables are well supported. A simple four-cell table can be inserted by selecting Insert Table from the Table menu; additional rows and columns can be added using the same menu. The table cells dynamically expand as they are filled with text. A window called Table Tool can be summoned from this menu. The Table Tool allows fine-tuning of margins, row and column size, and style of cell. The cells can be freely expanding (the default) or of a fixed or minimum size.

The image-insertion capabilities are one of Ted's strong points. Images in any of the common image formats, including JPEG, GIF, TIFF, and PNG, can be inserted into a document, then positioned and resized. When a file is saved in the RTF format, the image is converted to a Windows MetaFile, which is basically a wrapper for a BMP bitmap image. Save the file as an HTML file and a copy of the image file is created in a subdirectory of the parent document's directory. An image link is created which points to the new image file. There is one disadvantage to RTF documents with images: the files can be very large. The images within the document are necessarily in a bulky and uncompressed form. Image-laden files saved as HTML tend to be much smaller.

I tried opening several RTF files including embedded images using MsWord and they were all displayed properly.


Hyperlinks and Bookmarks

Another impressive pair of features are the ability to place hyperlinks and bookmarks in a file. The hyperlinks, either referring to local files or remote URLs, are set by entering the information in a dialog box. Bookmarks are defined in a similar manner. If a document is saved as an HTML file these links become "<a ref>" or "<a name>" HTML tags. These references can be accessed from a file saved in RTF format by means of the same dialog boxes used to set them.

The HTML tagging produced by Ted is rather unusual, though Netscape can interpret it just fine. The intent is for the browser-rendered HTML to reproduce as accurately as possible a document's appearance in RTF format. This necessitated extensive use of the "<font>" tag, as well as use of the "<div>" tag rather than "<p>" to separate paragraphs.


Conclusion

Ted should be useful to users communicating with the mainstream Windows-centric world, but I've found it to be a valuable piece of software in its own right. Using Ted is an easy way to create nicely-formatted documents with in-line graphics without having to deal with HTML or LaTeX tagging, and without needing to fire up a bulky browser in order to view them.



Copyright © 1999, Larry Ayers
Published in Issue 44 of Linux Gazette, August 1999

"Linux Gazette...making Linux just a little more fun!"


The Graphics Muse

By Michael Hammel



muse:
  1. v; to become absorbed in thought 
  2. n; [ fr. Any of the nine sister goddesses of learning and the arts in Greek Mythology ]: a source of inspiration
© 1999 by mjh


Button Bar
Welcome to the Graphics Muse! Why a "muse"? Well, except for the sisters aspect, the above definitions are pretty much the way I'd describe my own interest in computer graphics: it keeps me deep in thought and it is a daily source of inspiration. 

[Graphics Mews][WebWonderings][Musings][Resources]

This column is dedicated to the use, creation, distribution, and discussion of computer graphics tools for Linux systems.

This month is a slightly abbreviated version of the Muse.  Although I do have a decent discussion in Web Wonderings, I didn't have time for any of my normal Musings.  That means there won't be any discussion on 3D Modellers as I had planned.  I'm going to work with Ivan Reyes over at LinuxArtist.org to try to bring that discussion to you in September.

Things are very busy right now.  I'm chairing a committee which is planning a Linux expo in Colorado next year and I just started my own business.  That latter bit of news will become more apparent to my regular readers in the fairly near future.  In fact, because of the work I'm doing to get my business started, there won't be any Graphics Muse column next month.  Sorry, but I need to find a way to pay the bills.  Even I can't go more than a year without a job.
 
In this months column you'll find:
  • Cataloging and Clipping - a discussion on automated gathering of online data.

The companion site to
The Artists' Guide To The Gimp.
edited by
The Graphics Muse - Michael J. Hammel.
The Artists' Guide to the Gimp
Available online from Fatbrain, SoftPro Books and Borders Books.  In Denver, try the Tattered Cover Book Store.



Other Announcements:
 AutoTrace 
 Panorama Tools 1.8b1 for Mac/Win/Linux 
 Joffer's Linux Guide to new graphics card is back! 
 New Quick Mask Tutorial for the Gimp 
 GIMP 1.1.7 
< More Mews >
Disclaimer: Before I get too far into this I should note that any of the news items I post in this section are just that - news. Either I happened to run across them via some mailing list I was on, via some Usenet newsgroup, or via email from someone. I'm not necessarily endorsing these products (some of which may be commercial), I'm just letting you know I'd heard about them in the past month.

gd library pulled from circulation

http://www.boutell.com/gd/

The gd library has been temporarily removed from circulation. We will at some future date, make a new version available that either (a) does not contain any GIF-related code or (b) is offered only to parties holding a license from Unisys to use the LZW compression algorithm. 



Apple Open Source QuickTime Streaming Server Now Supports Linux
From NewsAlert

The Apple Open Source Streaming Server code has been updated to support Linux on Intel-based systems. Developers can now create Linux-based streaming server products without making additional modifications to the source code.

Full story



SGI Announces Project Mongoose: IRIS Performer for Linux

We've been hinting that something big is on the horizon -- and if  you haven't already heard the buzz that's swept through the IMAGE conference, have we got something exciting to tell you!

Yesterday, SGI announced that work is underway to make IRIS Performer available for the Linux platform. The project (codenamed 'Mongoose') is based on the existing IRIS Performer API and targeted for release before the end of 1999. Results are already very promising.

We anticipate you'll have many questions about availability, platforms, compatability, distribution, beta copies, etc -- we'll announce more details during the Friends of Performer meeting at SIGGRAPH.

For comments, feedback, or question you'd like addressed at the meeting please send email to mongoose-feedback@corp.sgi.com.

See you at SIGGRAPH!

Allan
----
Allan Schaffer allan@sgi.com
Silicon Graphics http://reality.sgi.com/allan

http://reality.sgi.com/performer/perf-99-07/0103.html



Easy Software Products Releases ESP Print Pro Beta 1

Hollywood, MD (July 16, 1999) -- Easy Software Products today announced the first beta release of ESP Print Pro, a completely new printing solution for UNIX®.  The new product is based on the company's Common UNIX Printing System technology and supports Digital UNIX, HP-UX, IRIX, Linux, and Solaris.

comp.os.linux.announce posting



COMPUTER GRAPHICS FORUM

COMPUTER GRAPHICS FORUM is the journal of Eurographics, the European Association for Computer Graphics. Each year we have the opportunity to change the picture appearing on the cover of the journal. We therefore organize a competition for a new cover picture. The first prize winner gets 300 Swiss Francs, but the biggest prize is of course the fact that your picture will appear on all the 2000 issues, including the conference issue.

IT IS SUFFICIENT TO SEND IN IMAGES VIA EMAIL AS ATTACHMENTS, OR TO UPLOAD THE IMAGE(S) VIA ANONYMOUS FTP TO: ftp.cwi.nl/incoming/CC99

To give you an idea what we are looking for, visit our Web page, http://www.cwi.nl/~behr/Covercompetition.html. This page also gives you the information about this competition.

Apart from sending in images via email, or uploading them to our ftp-site, you can also send mounted slides, or drawn or scanned images, to the address below.

Information about EUROGRAPHICS can be found at: http://www.eg.org/

Prize Coordinator:
Behr de Ruiter
Centre for Mathematics and Computer Science
Kruislaan 413
1098 SJ Amsterdam
The Netherlands
Email: behr@cwi.nl



Blender News
July 2, 1999

- Free T shirts!
NaN celebrates its first anniversary by giving a free Blender shirt with every C-key purchase in july.  Thanks to the support of the growing Blender community it was an exciting first year! With the Siggraph exhibition in august I expect to gain serious interest by the international computer graphics community. A good start for the 2nd NaN year...
http://www.blender.nl/shop/

Blender 1.65 out

Check the changelog: http://www.blender.nl/stuff/blenderbeta.html

- Plugins freeware
As promised, some of the C-key features will be freed after a period.  We start with releasing the plugin development kit in the 2nd half of august.

- Python scripting
Because of Siggraph preparations and holidays the Python release is postponed a month.  The Python interface is shaping up quit well. We didn't expect it to be so powerful! When things work out as expected this system acts as a true API and outperforms a traditional plugin-API completely. And best of all:  scripts are cross-platform and in their nature 'open source'.

-Ton-
http://www.blender.nl
info@blender.nl



Xi Graphics Announces latest version of maXimum cde

In an effort to help the Linux operating system break into the mainstream corporate computer market, a Denver-based company is packaging the free operating system with a commercial quality GUI, or graphical user interface.

With its new maXimum(TM) cde for Linux, Xi Graphics, Inc. (www.xig.com) is offering Linux desktop and laptop users a powerful graphical user interface -- one that's already an industry standard for UNIX workstations offered by IBM, HP, Digital, Sun and others. The fully integrated package includes Motif and CDE built on the Accelerated-X Display Server and running on the Linux operating system.

Xi Graphics has also completed updates adding new desktop support for the Matrox G400, 3dfx/STB Voodoo3-2000 and 3000, the Diamond Viper 770 Ultra (nVidia Riva TNT2) and Diamond viper 550 (TNT) and adding the portable computers HP Omnibook XE, Hitachi M120D, CTX EZBook 700G.  comp.os.linux.announce posting

http://www.xig.com



New Site: Linux Video and DVD project
   Jul 15, 1999, 13:14 UTC
From LinuxToday

Thanks to Matthew R. Pavlovich for this announcement.

The goal is to bring support for video capture, tv out and dvd playback to Linux. The primary focus will be with Matrox products, but as the project grows, so will the supported hardware.  The Marvel, Rainbow Runner, TV Tuner and DVD module are all prime targets.

First order of business will be the DVD support, because we have docs and its the coolest.  Also on this site, there is very pre-alpha work being done for the MJPEG encoder found on the Matrox Marvel and Rainbow Runner. Its in cvs, module mgavideo. It is the same chipset found on the LM33 module, so a lot of the driver can be reused.

I need lots of help. If you want to contribute, please contact me.
http://livid.on.openprojects.net/


Did You Know?

...there is a web site for AC3D Users?  For more information, to a look at http://www.eilers.net/ac3d/.  The page is sponsored by Hartmut Eilers and includes a mailing list.

...there is a Perl module for generating 3D Pie charts?  Look on the CPAN mirrors for "ThreeD-Chart".


Reader Mail

Ariel Rios Osorio wrote:
I'm working in a web editor called galway that includes support for script-fu.  I think this is the only tool available for this purpose. It is programmed using guile scheme. Please take a look. Suggestions are welcome!
http://erin.netpedia.net
'Muse:  Ok, I'll post it in the Muse.
By the way, besides Structure and Interpretation of Computer Programs, there other great Scheme books that I recommend to you, The Scheme Programming Language by Dybvig, the Little Schemer, the Season Schemer.
'Muse:  I had a few other emails regarding this subject.  I've posted the information I received in TheGimp.com's Tips and Tricks section, under "Useful Printed Texts."

John Vincent <john@lusis.org> wrote

I've been reading your column since LG started publishing it. I also have your GIMP book which is great. I wanted to make a comment about video formats that you may not have been aware of. Newer sites that have quicktime movies are probably using QT4. This codec isnt supported under linux yet. The java version of the player from apple won't even run under linux. This was a highly debated subject on slashdot when the 2nd starwars trailer came out. Slashdot being a community of mostly linux users, as you know, were hunting for formats that could be read under linux. Just thought I would pass that tidbit on. Thanks for all the great articles and all the great work.
Similarly, Moritz Bunkus <m.bunkus@tu-bs.de> wrote:
Quite good article about playing video files. Just one remark.

You said you weren't able to find videos which xanim wasn't able to play. Unfortunately one rather popular movie, the second Star Wars - Episode 1 trailer, comes in Quicktime format and uses a Sorensen codec which is not supported by xanim.
http://www.starwars.com/episode-i/news/trailer/index.html

'Muse:  Thanks for the feedback.  I'd heard about this but until Moritz passed me the URL I hadn't seen the trailer.  I didn't try this trailer, however, since it's a 14Mb download and my littl'e 28.8 throughput just can't deal with it while I'm working on other things.  Maybe I'll start the download one night before going to bed.

Cort <ccww@cyberway.com.sg> wrote

It's probably not very important, but in your review of MpegTV you did not mention that the command line version (mtvp) is freeware.  Also, the SDL library does not have to really be in /usr/X11R6/lib, a symbolic link works fine on my system.

As for playing VCD, I use

xreadvcd | mtvp -ac0 -aq2 -
but some VCD requires
xreadvcd -a 1 | mtvp -ac0 -aq2 -
'Muse:  The symbollic link didn't seem to work on my box, but maybe I didn't set things up quite right.  I install quite a bit of stuff on my box, so it's not hard to imagine I got something wrong.  As for these other options for playing VCD's, they still don't work for me.  I can't seem to get mtv, with or without xreadvcd, to play these disks.  Too bad.  I'd love to see what's on this Sheryl Crow CD I have.

Lorenzo Del Pace <pa0214@panservice.it> wrote in with this important question:

My name is Lorenzo, and I am italian.  I read with much pleasure and interest the articles of The Muse, appreciating them very much.
'Muse:  I'm glad you find them useful.
But now, I have a question, and I hope that you can answer it: I read on this month's Linux Gazette that you use a pretty old SVGA (a Mystique) along with a Commercial X server.

I wonder wether is the case, for the medium Linux user as I am, to buy a good graphics card (such as the TNT fron nVidia, with OpenGL hardware support), or to spend my money for a commercial X server, given tyhe fact that I cannot afford them both!

This is not a silly question for me, for I am still a bit confused on when is good (or even necessary) sacrifice some money to get commrcial products for Linux and when it is not.

'Muse:  That is a good question.  The simple answer is actually a question:  what do you need to do with your computer?  What you plan on doing with your computer will determine what you need to spend money on.

If you can only spend money on the hardware OR the software (but not both), and you REALLY need 3D graphics, then spend the money on the video card.  But, do you REALLY need 3D graphics?  What tools do you use that require it?  Are you doing graphics development?  Is it 3D graphics development and do you have to have a 3D, interactive modeller (like Side Effects Houdini)?  The only other big need for 3D graphics are games, and right now there aren't many that require 3D video cards for Linux.

This curiosity has arisen in me reading your article: you must be a professional (?) graphics user, so before making your choice you must surely have evaluated the variuos opportunities.
'Muse:  My purchase decisions are based on two things: what do I need to do right now, and what will benefit me in the long term.  I spend more up front for hardware in the expectation that the extra expense will allow me to use that hardware for a longer period (thus I won't have to keep upgrading hardware every few months or even every year).  I spend less up front for software because my software needs vary fairly often.  Thus, I spent more money for the Matrox Mystique a few years back, and it's still working quite well 2 years layer.
May I ask you what do you really think of Commercial X Servers (like the ones of Xi Graphics), and to whom you'd suggest one?
'Muse:  I recommend end users buy low end video cards and spend the extra cash on a commercial X server.  I've used XFree86 servers but was not satisfied with their quality.  Take that with a grain of salt, of course.  It's been 2 years since I've used XFree86 with anything other than my Matrox Mystique.  However, I tried the SVGA server from XFree86 last year in order to make use of it's support for XInput (so I could use my drawing tablet), but it produced some artifacts on my display, enough that I finally decided to go back to my AcceleratedX server and forget about the drawing tablet for now.  I've heard Xi has added better tablet support in their latest releases, but I don't have a copy of that so can't say if it's any better than the version I have now (which doesn't support X Input for use with the Gimp at all).

Most end users have no need for 3D - even most games on Linux don't make use of hardware acceleration yet.  If you're not doing 3D work, then you just need a fairly fast 2D card, and most of the cards available today handle 2D drawing quite well.  Spend a little extra on extra memory on the card so that you can have high resolution running with a Truecolor visual (ie 16 million colors).

Of course, high end users - like the folks at Digital Domain trying to do effects for films - really do need that hardware acceleration.  I don't often get asked by those folks what I recommend.  They know what they need, and are even in a position to help push the advancement of 3D support for Linux better than I am.

As to which commercial X server, I'd recommend Xi Graphics.  There are only 2 commercial X servers for Linux currently:  Xi and Metro Link.  Metro Link's servers are fairly good, but I wasn't impressed with their installation tool.  X servers are a strange bit of software - end users only deal with them once and seldom have to muck with them after that.  So the installation tool is one of the most visible aspects of the product.  Being able to select a video card or monitor by name makes life easy.  All of the X server configuration tools (including XFree86) allow this, but I like Xi Graphics the most.  I especially like the text based installation tool - none of the X based tools (for any of the X server vendors) is very easy to use.

Still, the decision on which to use should depend on how well that product supports your hardware.  You need to be able to try it out - both Xi Graphics and Metro Link allow you to try demos of the server to see if it will work with your hardware.  But you should also check to make sure they have money back guarantees that extend at least 30 days beyond the date of purchase - preferrably 60 days.  Sometimes it may take a while to find strange behaviours in the server until you get the right combination of applications running at the same time.

This would be an important answer for me, and still an important one for the Italian *.comp.linux newsgroup, that usually gets involved in discussions of this kind, but without any owner of a commercial server...
'Muse:  To my knowledge, none of the X server vendors have any native italian speakers working for them.  Metro Link and Xi Graphics are mostly english speaking (although Thomas Roell at Xi is German).  I'm not sure about XFree86, since they have developers from many parts of the world involved in their project.  It might just be that none of them has time to follow newsgroups anymore.  I know I don't.
Thank you in advance, and excuse me for my intrusion in your mailbox.
'Muse:  No problem.  It's no intrusion.  You ask a very important question that I'm sure many of my readers have also wondered about.
With best wishes and compliments for your work,

Yours
Lorenzo Del Pace

P.S.

The "News" part of the Muse's columns is fantastic: lots of people (me too) have discovered products freely available they only dreamt of before!

'Muse:  I'm glad you find it useful.  You should also keep an eye out to freshmeat.net. That's where I pick up many of the announcements I post in the Muse.



Cataloging and Clipping - gathering online data

One of the projects I've been working on lately has had to do with gathering information from the Web.  At first glance the information can seem difficult to collect - so many different pages with so many formats.  How does someone make sense of all that data, especially when it's wrapped inside the sometimes incomprehensible world of HTML?

Well, that was my dilemma originally.  I knew that many of the popular Linux sites (freshmeat and slashdot, for example) have much of their data in standard text files that can be parsed manually.  And I knew that there were some tools available for parsing those files.  Perhaps those tools could be extended for parsing Web pages.  So, my first step was to start looking for these site-specific tools over at Freshmeat.net.

Most of the tools at freshmeat were perl or python scripts, and many were capable of processing various popular sites.  The tools included names like sitescooper, pagesucker, as-news, etc.  One wonders what people drink before naming their projects.

One of the tools I found was called DailyUpdate, a perl based parsing system.  DailyUpdate was originally a free package but now has been renamed NewsClipper, a commercial open source product.  The product's open source version is free, with personal versions running $29.95US and corporate versions running $299US.

NewsClipper is rather slick.  It's a perl script that makes use of a series of existing Perl modules (the complete list of dependencies is provided in the README and can be downloaded via the automated CPAN archives).  A template file is created of an HTML output file that includes NewsClipper command embedded in HTML comments.  NewsClipper reads the commands, fetches and parses the specified sites on the Internet and replaces the commands with appropriate HTML in an output file.  You can specify the name of the input template and output HTML files on the command line as well as have NewsClipper download updates to any existing handlers you might have that have recently been updated.

The trick to NewsClipper is it's use of three types of handlers:  acquisition, general, and output.  There are over 190 handlers available from the NewsClipper site.  Handlers are just perl scripts that filter the data either as it is retrieved from the remote site, after it's been retrieved but before output to HTML, or as it's being output.  By far the majority of handlers are written for acquisition - the retrieval of data from Web sites.  A few stock general and output handlers are provided as well.  As you'll see, I was able to use these latter filters without modification, allowing me to focus on the acquistion filters completely.

[ More Web Wonderings ]



Downloading from CPAN:
One of the interesting things I learned while playing with NewsClipper was how easy it is to update my Perl modules.  In order to link NewsClipper to a database, I installed mSQL.  In the book, Official Guide to MiniSQL 2.0, by Brain Jepson and David J. Hughes there is a chapter on using mSQL with Perl.  Here I found the little pearl which made updating my Perl modules a breeze.  I simply run
% perl -MCPAN -e SHELL
and I get into a shell hooked to the CPAN archives.  I can then just run
cpan>  install <module>
where <module> is the name of the module you want to install.  What's really nice is that any prerequisite packages are also installed.  There are cases where you might not want to install the prerequisites (none came up when working with NewsClipper or mSQL, however), but for most cases this little trick will be a real time saver.  If you use this, be sure you're logged in as a user who has write permissions to the directories where existing Perl modules are installed.  Normally, this would be the root user.  I did wonder if running this as a root user with a connection across the Internet was a possible security violation for my local system, but since I don't do it often I didn't worry about it.

No Musings this month.

Those two big projects I'm working on are taking quite a bit of my time these days.  I'll have the 3D Modellers review soon.  But be prepared - major changes are coming to the Muse!
 

The following links are just starting points for finding more information about computer graphics and multimedia in general for Linux systems. If you have some application specific information for me, I'll add them to my other pages or you can contact the maintainer of some other web site. I'll consider adding other general references here, but application or site specific information needs to go into one of the following general references and not listed here.
 
Online Magazines and News sources 
C|Net Tech News
Linux Weekly News
Linux Today
Slashdot.org
TheGimp.com

General Web Sites 
Linux Graphics
Linux Sound/Midi Page
Linux Artist.org

Some of the Mailing Lists and Newsgroups I keep an eye on and where I get much of the information in this column 
The Gimp User and Gimp Developer Mailing Lists
The IRTC-L discussion list
comp.graphics.rendering.raytracing
comp.graphics.rendering.renderman
comp.graphics.api.opengl
comp.os.linux.announce

Future Directions

Next month:  No Muse next month.  But expect some big changes in the near future!

Let me know what you'd like to hear about!


© 1999 Michael J. Hammel


Copyright © 1999, Michael Hammel
Published in Issue 44 of Linux Gazette, August 1999

© 1999 Michael J. Hammel
indent
AutoTrace
Panorama Tools 1.8b1 for Mac/Win/Linux
 Joffer's Linux Guide to new graphics card is back! Bigger and b
 New Quick Mask Tutorial for the Gimp
 GIMP 1.1.7 
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.



AutoTrace
This project is for converting images to vector graphics. Currently I created a plugin for GIMP (www.gimp.org) to do this. It is in a very early stage and most of the code is still missing.

AutoTrace transformation plug-in (Alpha Version 0.025)
Marting.Weber
Marting.Weber@Allianz.De
http://homepages.go.com/~martweb/AutoTrace.htm



Panorama Tools 1.8b1 for Mac/Win/Linux

A new very high quality interpolator (Lanczos windowed sinc) has been added. The program can now also be used for high quality general image manipulations (enlargements, rotations, skewing etc). The existing standard interpolator (Polynomial) has been reworked to closely resemble the bicubic interpolator of Photoshop. A comparison with test images is available at my site: http://www.fh-furtwangen.de/~dersch/interpolator/interpolator.html

A gamma/degamma  correction algorithm with settable gamma value is included. This allows the user to internally linearize the images prior to transformation, and later automatically gamma-correct them again.

The Gimp version is now compiled with the current gtk-version 1.2.3, and runs under the current stable Gimp release 1.0.4. Also, the Makefile has been changed to the standard Gimp format, and compiling on other platforms should be simple.

See the Readme at http://www.fh-furtwangen.de/~dersch/Readme for general features, and download a copy at my site.

Helmut Dersch



Joffer's Linux Guide to new graphics card is back! Bigger and better!

Joffer's old Linux RIVA128 Xconfigurator Guide is back online, now going by a new name: Linux SVGA Guide.  Are u having problems getting your graphics card to work with X Windows in Linux?

The solution isn't far away...

http://joffer.dhs.org is the clue. Check out Joffer's completly rewritten SVGA Guide!

Get your RIVA128, TNT, G100 and G200 up and running with lots of colors using 1024x768 or higher resolution! It's not as hard as you think!

The address is:  http://joffer.dhs.org - just click on LINUX in the menu!
comp.os.linux.announce posting



New Quick Mask Tutorial for the Gimp
by Zach Beane

This tutorial shows how you can do vignette effects using a new feature of GIMP called QuickMask.

QuickMask is a convenient way to modify selections using pixel-changing tools such as the paintbrush, eraser, or any plug-in filter. It lets you make very precise adjustments to your selections.

This tutorial doesn't use QuickMask for complex masking; it's intended to show how you can use it to create quick and easy vignette effects. It's even easier than my older vignettes tutorial.

http://www.xach.com/gimp/tutorials/quickmask/



GIMP 1.1.7

GIMP 1.1.7 is now available. It has a boatload of cool new features.
indent
© 1999 by Michael J. Hammel
Graphics Muse
© 1999 Michael J. Hammel
indent
more musings...



 
indent
© 1999 by Michael J. Hammel
Graphics Muse
© 1999 Michael J. Hammel
indent

Cataloging and Clipping - gathering online data (continued...)

The Template File

After you've got NewsClipper installed (there are a lot of prerequisites, but if you follow the order in the README backwards - from bottom to top - you'll have them installed in no time), you're ready to give it a whirl.  Included in the Open Source version is a template file.  This file contains some samples of NewsClipper acquisition, general and output filters.  You can actually try it out without modifying it.  If you have problems you can comment out the NewsClipper commands for all but one filter by changing lines like this

<!-- newsclipper
to
<!-- Xnewsclipper
The format of a template file is fairly simple:
...HTML formatting ....
<!-- newsclipper
<input filter=name params=xxx>
<filter name=yyy>
<output name=zzz>
-->
...more HTML formatting...
The first line is just the tag telling NewsClipper that the following filters should be processed.  If you change the name from newsclipper to Xnewsclipper then NewsClipper will ignore this and simply copy the entire comment to the HTML output file.  Since it's wrapped in a comment, the three filter lines will be ignored by the browser.

The input line tells NewsClipper which acquisition filter to run and what parameters to pass to it.  Acquisition filters can have as many parameters as they want, but in practice most of the ones provided with the distribution had few, if any.

The filter line allows you to write a processor for the output from the acquisition filter.  Acquisition filters will return data as a string, an array or as a hash.  There are stock filters for converting hashes to strings or arrays and examples of using these are given in the template file.  Although it seemed at first this was where I'd be making modifications or writing new filters, it turned out that I was able to use only stock general handler here.  Most of my changes happened with the acquisition handlers.

Acquisition Handlers

Nearly all of the acquisition handlers provided in the distribution make use of a few subroutines provided in the NewsClipper perl modules:  GetURL, GetLinks, GetText, GetHtml, and so forth.  These subroutines make it very easy to grab the entire site or just portions of it.   GetURL will grab the entire site and return it as a string.  GetText and GetHTML do similar things, but filter out parts of the page.  GetLinks is used to retrieve just the HREF links on the page.

Once the page or portions of it have been retrieved, the acquisition filters can do a little more processing on the data.  Some of the handlers will break the data into hashes, perl lists of name/value pairs.  When this is returned back to NewsClipper, it can be passed to the map general filter, which then passes it to the hash2string filter  for HTML formatting.  I'll show how this works in an example in a moment.

General Handlers

Once the acquisition handler completes, it returns data to NewsClipper who then passes it to any general filters.  In practice I've found the best use of general filters is in formatting the HTML output using the hashes returned from the acquisition filters.  But they can be used for just about anything you can think of when processing the strings, arrays and hashes that acquisition filters will pass to you.

Output Handlers

These handlers, like general handlers, seem best suited for formatting.  One of  the most common uses is to place arrays into multicolumn lists.  In practice, I used these only to the formatted HTML from my general handler as a string.  In this way I was insured that no further processing was performed on my already formatted HTML by another output handler.

Adding a database - mSQL

All handlers are stored whatever directories (there can be more than one) are listed in the NewsClipper.cfg configuration file.  By default, this is installed under $HOME/.NewsClipper/NewsClipper.cfg.  Whenever NewsClipper automatically downloads an updated filter, it will place it in the first directory specified by the handlerlocations variable.  When I began to modify existing acquisition filters I copied them to similarly named files - such as from cola.pm to colagm.pm - in the same directory where the original resided.

Once I had a copy of the original, I added the following line to add mSQL access from within the file:

use Msql;
This was added right after the "use strict;" line.  Using the Msql.pm perl module's interface, I could then access the database from the acquisition script.  Note:  it's important that the person or script that runs the NewsClipper.pl script, which will runs the acquisition filter and accesses the mSQL database, is someone that has read and probably write access to  the mSQL databases.

The next step was to modify the acquisition handler to parse the data (if it wasn't already) for adding to the database.  The best way to explain this is to show an example.

Example - grabbing and logging submissions to comp.os.linux.announce

First, take a look at the template file for grabbing recent submissions to comp.os.linux.announce:

<!--
   #####################################
   comp.os.linux.announce
   #####################################
-->
<p>
<table width=100% border=0 cellpadding=2 cellspacing=0 NOSAVE>
<tr>
<td colspan=2 ALIGN=LEFT bgcolor="#00f000"><font size=4><i>c.o.l.a</i></font></td>
<td ALIGN=LEFT bgcolor="#00f000">
   <font size=2>Select All:
      &nbsp;&nbsp;Yes<input type=radio value=yes name=gmcolaall>
      &nbsp;&nbsp;No<input type=radio value=no name=gmcolaall CHECKED>
   </font>
   </td>
</tr>
<tr>
<td bgcolor="#00f000" ALIGN=CENTER VALIGN=TOP>Keep</td>
<td bgcolor="#00f000" ALIGN=CENTER VALIGN=TOP>Drop</td>
<td bgcolor="#00f000" ALIGN=LEFT VALIGN=TOP>Title</td>
</tr>
<!-- newsclipper
  <input name=colagm department=sorted>
   <filter name=map filter=hash2string format='
      <tr>
      <td ALIGN=CENTER VALIGN=MIDDLE>
            <input type=radio value=keep name=gmcola%{index}></td>
      <td ALIGN=CENTER VALIGN=MIDDLE>
            <input type=radio value=drop name=gmcola%{index} CHECKED></td>
      <td ALIGN=LEFT VALIGN=TOP><font size=1>%{url}</font></td>
      </tr>
      '>
   <output name=array numcols=1 prefix='' suffix=''>
-->
</table>
</p>
Here you can see the NewsClipper commands are embedded within a table.  For each hash returned by the colagm acquisition filter, the hash2string general handler is called.  It then formats some HTML and fills in any variables, shown as %{var}, with the value of the hash with that name.  So the variable %{url} gets replaced with the value from the hash with the name url.

The colagm.pm acquisition handler looks like this (my modification are shown in red:
 

# -*- mode: Perl; -*-

# AUTHOR: John Goerzen
# EMAIL: jgoerzen@complete.org
# ONE LINE DESCRIPTION: Latest messages from comp.os.linux.announce
# URL: http://www.cs.helsinki.fi/~mjrauhal/linux/cola.archive/*.html
# TAG SYNTAX:
# <input name=colagm department=X>
#   Returns an array of links
# X: One of#     last50   - search cola-last-50.html for entries.
#     sorted   - search cola-sorted.html for entries.
#     www      - search cola-www.html for entries.
# LICENSE: GPL
# NOTES:

package NewsClipper::Handler::Acquisition::colagm;

use strict;
use Msql;

use NewsClipper::Handler;
use NewsClipper::Types;
use vars qw( @ISA $VERSION );
@ISA = qw(NewsClipper::Handler);

# DEBUG for this package is the same as the main.
use constant DEBUG => main::DEBUG;

use NewsClipper::AcquisitionFunctions qw( &GetLinks );

$VERSION = 0.3;

# ------------------------------------------------------------------------------
sub gettime
{
   my $sec;
   my $min;
   my $hour;
   my $mday;
   my $mon;
   my $year;
   my $wday;
   my $yday;
   my $isdist;
   my $datestring;

   ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdist) = localtime(time);

   $datestring = $year + 1900;
   $datestring *= 10000;
   $datestring += $mon*100 + $mday;

   return $datestring;
}

# This function is used to get the raw data from the URL.
sub Get
{
   my $self = shift;
   my $attributes = shift;
   my $url;
   my $data;
   my $colafile;
   my $start_delimiter;
   my $end_delimiter;
   my $urllink;
   my @results;
   my $tempRef;
   my $query_line;
   my @query_lines;
   my $sth;
   my $newcount;
   my $dbdate;
   my $title;

   $attributes->{department} = "last50"
      unless defined $attributes->{department};

   #
   # Determine which file to search.
   #
   if ( "$attributes->{department}" eq "last50" )
   {
      $colafile = "cola-last-50.html";
      $start_delimiter = "newest ones first";
      $end_delimiter = "Last modified";
   }
   elsif ( "$attributes->{department}" eq "sorted" )
   {
      $colafile = "cola-sorted.html";
      $start_delimiter = "order by the subject";
      $end_delimiter = "Last modified";
   }
   else
   {
      $colafile = "cola-www.html";
      $start_delimiter = "the last one first";
      $end_delimiter = "Last modified";
   }

   #
   # Build the URL which is to be queried.
   #
   $url = join("",
      "http://www.cs.helsinki.fi/~mjrauhal/linux/cola.archive/",
      $colafile);

   #
   # Now run off and get those links!
   #
   $data = &GetLinks($url, $start_delimiter, $end_delimiter);

   return undef unless defined $data;

   #
   # Weed out any User Group messages
   #
   @$data = grep {!/(LOCAL:)/} @$data;

   # Open the Msql connections and select the databases of interest.
   my $dbh1 = Msql->connect();
   $dbh1->selectdb('gm-news');

   # Clear the "new article" table - if we haven't processed those
   # entries yet, then we'll see them again anyway.
   $query_line = join("", "DELETE FROM new_cola");
   $sth = $dbh1->query($query_line);
   $newcount = 1;

   #
   # Now run through the list to find only the news ones.  Then add these

   # to the proper database.
   #
   while (@{$data})
   {
      $_= shift @{$data};

      # Escape single quotes.  We take them out later when we display them, if
      # necessary.
      $title = $_;
      $title =~ s/'/\\'/g;

      # Query the Accepted table for this article name.
      $query_line =
         join("", "SELECT title FROM accepted WHERE title = '", $title, "'");

      $sth = $dbh1->query($query_line);
      if ( $sth->numrows > 0 )
      {
         next;
      }

      # Query the Rejected table for this article name.
      $query_line =
         join("", "SELECT title FROM rejected WHERE title = '", $title, "'");

      $sth = $dbh1->query($query_line);
      if ( $sth->numrows > 0 )
      {
         next;
      }

     # Article has not been seen previously.  Add it to the new database.
      $dbdate = gettime();
      $query_lines[0] = "INSERT INTO new_cola VALUES (";
      $query_lines[1] = $newcount;
      $query_lines[2] = ", ";
      $query_lines[3] = $dbdate;
      $query_lines[4] = ", '";
      $query_lines[5] = $title;
      $query_lines[6] = "', '";
      $query_lines[7] = "cola";
      $query_lines[8] = "', '";
      $query_lines[9] = " ";
      $query_lines[10] = "', '";
      $query_lines[11] = " ";
      $query_lines[12] = "', '";
      $query_lines[13] = " ";
      $query_lines[14] = "')";

      $query_line = join('', @query_lines);
      $sth = $dbh1->query($query_line);

      # Abort on errors encountered while inserting into the new article table.
      if ( length(Msql->errmsg) > 0 )
      {
         print "<!--News Clipper message:\n",
            "Failed new article db update for colaGM handler\n",
            "Error message: ", Msql->errmsg, "\n",
            "-->\n" and return undef;
      }

      # Everything went ok, and it's a new article.  Save it for return to the
      # caller.
      push @results,
      {
         index    => $newcount,
         url      => $_
      };

      $newcount++;
   }

   $tempRef = \@results;
   MakeSubtype('ArrayOfCOLAHash','ArrayOfHash');

   bless $tempRef,'ArrayOfCOLAHash';
   return $tempRef;
}

# ------------------------------------------------------------------------------

sub GetDefaultHandlers
{
  my $self = shift;
  my $inputAttributes = shift;
  my @returnVal;

  my @returnVal = (
     {'name' => 'limit','number' => '10'},
     {'name' => 'array'},
  );

  return @returnVal;
}

1;

One thing I didn't show here was that I added some new parameters to the handler so that you can grab different c.o.l.a. archives.  You can grab a copy of the source if you want to try it out yourself, but you'll need to create the proper databases too.

The gettime subroutine is just something I added to format a date stamp for the database.  There may be easier ways to do this - I'm not the worlds best perl programming.

The rest of the changes, near the center to end of the Get subroutine, are used to parse the returned links and check if they already exist in one of two tables.  If not, the new link is added to a third table and added to the outgoing hash.  It may look a little complex if you're not familiar with SQL syntax, but really there isn't much too this.  In this case, the returned values from GetLinkx() is just a list of links, which makes processing the site's data pretty easy.  In other cases I had to break apart HTML line by line, searching for key words, then stripping out extra tags and HTML to get at the text and/or links of interest.  The thing is, since this is all done in Perl, and Perl is great for parsing text, this all really wasn't too difficult.

What all this gets me is a table of new entries from the c.ol.a. archives in a table, from which I select the articles of interest.  The template file produces an HTML page with a form which gets submitted to a CGI script to move new articles into either the accepted or rejected database.  Later, I can write scripts for producing web pages with the accepted or rejected entries.  And any future runs of NewsClipper on this template file will only produce new entries from c.o.l.a!  Pretty nifty.

Writing your own acquisition filter - MakeHandler.pl

There is a perl script included with the NewsClipper distribution called MakeHandler.pl that assists you in writing your own acquisition handlers from scratch.  Although I've heard it's quite useful and very easy to use, I've never used it myself.  All of the sites I was interested in (at least so far) have handlers written for them already, so I just had to modify them for working with my mSQL database.

Supported Linux sites

The default handlers include support for downloading Slashdot, Freshmeat, LinuxToday, Linux Daily News, and c.o.l.a, along with many, many others.  Interestingly enough, the Slashdot handler grabs the main page instead of the backend pages, apparently because the author was worried that the backend was not kept up to date.

Although I didn't see one, I suspect using NewsClipper to download the Freshmeat database file would also be possible.  Since it's a simple text file with a common format for each entry it should be pretty easy to parse.

Caveats

One of the limitations of NewsClipper appears to be that it doesn't like sites that don't have closing tags in all the right places.  For example, did you know that paragraph tags, <p>, have closing tags, </p>?  Without them, it's possible NewsClipper's acquisition filters can get confused.  You might be able to process these sites using GetURL() and parsing the pages manually, but you'll be happier if you can just find sites that do the right thing.  Interestingly enough, I've discovered that my pages here in the Muse are not right - Netscape's Composer doesn't add that closing </p> tag.

And who said writing this column wouldn't be educational?
 
indent
© 1999 by Michael J. Hammel


"Linux Gazette...making Linux just a little more fun!"


Cosource.com Enters Live Beta!

By Norman M. Jacobowitz


Cosource.com is a web site which gathers financial support for Open Source projects. Users who have been frustrated by some missing software feature, nagging bug, or unsupported hardware can use Cosource.com to fund an effort to get it fixed. Developers can write Open Source projects ... and get paid for it. Projects that run on any platform are welcome.

Let's say you have a sound card for your home PC, for which there is no Linux driver. You learn that the manufacturer would prefer to have a Linux driver, but for whatever reason there isn't one. Here's how you would solve the problem with Cosource.com:

  1. Go to the site and register as a member, and login.

  2. Browse the request lists. If someone else already has submitted the same request, just add that request to your watchlist. You'll be notified whenever a proposal to develop your request is submitted.

  3. If there's not already a request submitted, you can enter a new request for a driver for your sound card via the 'Submit Request' form, listing the full functional requirements per the instructions found on there.

  4. Developers can then submit proposals to develop the driver. As part of a developer's proposal, he or she names someone who serves as an 'Authority', or third-party peer-reviewer for the project. It this Authority who serves as arbiter of success or failure for the project.

  5. You and other members -- perhaps even the manufacturer of the card -- then review proposals, and may elect to commit funds to one or more. The minimum commitment is $10 US.

  6. Whichever proposal first gathers enough commitments to cover its bid wins and enters development. The Authority reviews and tests the software prior to release.

  7. Once the Authority declares the project complete, it is released ... then you and all others who committed funds pay your commitment via credit card. Cosource.com then pays the developer and authority for their work.

The above example shows how non-developers can now have Open Source packages written to suit their needs. Plus, no single individual or corporation is stuck with paying the full tab for the development.

The card manufacturer mentioned above can help make their product available to the Linux Community at a fraction of the full cost of paying to develop the driver themselves. This process also gives developers a financial incentive to spend more of their programming time producing Open Source products.

Organizations or individuals who own the copyright to a complete software package may also use Cosource.com to solicit funds in exchange for re-licensing their product as Open Source.

It's the goal of Cosource.com to make all of the above factors work in favor of the entire Open Source community.

Cosource.com is now conducting a Live Beta program. Everyone is welcome to sign up as a member (it's free) and test the site. Hopefully, the site will be fully live and relatively bug-free within a few weeks.

Norm Jacobowitz is VP of Marketing at Cosource.com. Write him at norm@cosource.com.


Copyright © 1999, Norman M. Jacobowitz
Published in Issue 44 of Linux Gazette, August 1999

"Linux Gazette...making Linux just a little more fun!"


perlpp: cpp on Steroids

By Dr. Warren MacEvoy


The point of this article is to introduce a tool I call perlpp, the Perl preprocessor. Since I wrote it, perlpp is not available in any Linux distribution. See Resources for information on obtaining perlpp and the examples described here.

perlpp is a beefy version of cpp, the C preprocessor; it can do what cpp can do and much more. For example, introducing the idea of code templates in any programming language is easy with perlpp.

Using perlpp, the Perl preprocessor, requires at least a rudimentary knowledge of programming in Perl. Perl 5 or later must be installed on your system.

Since Perl is such a useful language, almost every programmer should know a little about it. I will start by covering some of the rudiments of Perl used in the examples. If you are already fairly comfortable with Perl, move on to the next section.

Variables. Scalar variables, which can take on values of strings, integers, or doubles, always have a $ as the first character. List variables, which are simple lists of scalars, always have a @ as the first character. All variables are global, unless preceded by my when first used within a block.

String quoting. Strings can be quoted three ways in Perl. They can be quoted almost exactly using single forward quotes ('), quoted with interpolation using double quotes ("), or system quotes using single back quotes (`). We will present more detail on this later, but basically:

Loops. Perl supports the csh-style loop of the form

foreach $index (@LIST) { statement1;<\n>
   statement2; .... }
as well as the C-style loop:

for (do-once; check-first-each-time; <\n>
   do-last-each-time) { .... }
Both types are used in the examples.

In fact, the basic syntax of Perl mimics C in many respects, so C programmers can read Perl scripts fairly easy. No, that is too bold: a C programmer can write C-looking Perl, and it will mostly work as expected. A Perl programmer would solve the same problem in a completely different manner. In doing so, he may accomplish something difficult to imagine: a program more obscure than what can readily be written in C. If you don't believe me, look at the perlpp source, which is a Perl script.

Perl is a great deal more than this tiny view, but these ideas should be enough to understand the examples. See Resources for more information about Perl.

Introduction

Let's begin by talking about cpp. C programmers don't get far before learning that C programs, at least logically, pass through two stages of translation. The first stage, the preprocessing stage, uses commands such as

#include <stdio.h>
and

#define FOO(x) bar(x)
to translate the hybrid C/cpp input file into a pure C input file, which is then input to the pure C compiler. Pictorially,

input_file -> cpp -> cc1 -> object_file
While the intended job of cpp is to preprocess input files for a C (or C++) compiler, it can be used to preprocess other files. For example, xrdb uses cpp to preprocess X11 resource files before loading them. cpp is a very useful tool, but a programmer can quickly run into limitations, essentially because cpp is a macro-processor with limited facilities for computation and the manipulation of text.

The reason I wrote perlpp was to overcome these limitations for a scientific computation problem at Pacific Northwest National Laboratories, where I wrote the chemical equilibrium portion of a ground water transport model. For the sake of compatibility with the rest of the model, it had to be programmed in FORTRAN. For the sake of compatibility with Linux, Sun and SGI development environments, it had to be FORTRAN 77. The problem statement was roughly this: given the chemical equilibrium equations for a given set of species, automatically generate an efficient reliable solver for these equations.

This created a need to go from chemical equilibrium equations in symbolic form to the generation of a Maple V (a symbolic mathematics package) batch file from a template, followed by the inclusion of the results from that batch file into a template-generated FORTRAN subroutine library that satisfied the requirements of the project.

This environment required the automatic generation of several kinds of programs from templates and was a natural breeding ground for thoughts about useful preprocessors. Although it took me most of a week to come up with the alpha version of perlpp, it easily saved that amount of time just for that one project. Solving the same problem without it may have taken four or five weeks longer. Furthermore, without perlpp, the project would be much harder to maintain.

What Perlpp Does

perlpp takes input files and generates perl scripts which, when run, create similar but better output files.

Example 1: Hello World!

Create a file called hello.c.ppp containing the lines

#include <stdio.h><\n>
int main()
{
printf("Hello World!\n");
return 0;
}
Now run the perlpp command by typing:

perlpp -pl hello.c.ppp
The -pl option is discussed later. If you check, perlpp created the file hello.c.pl, which contains the following Perl script:

#!/usr/bin/perl<\n>
print '#include <stdio.h>
';
print 'int main()
';
print '{
';
print '  printf("Hello World!\\n");
';
print '  return 0;
';
print '}
';
Your mileage may vary on the exact contents of the first line. See "Troubleshooting" if you have problems generating this script.

Running hello.c.pl generates the same text as the original input file, hello.c.ppp. In this way, perlpp can be viewed as an obscure and computationally expensive way to copy text files.

The -pl option means ``create a perl program''. If you leave it off, it simply runs the program and saves the output in hello.c. This means

perlpp hello.c.ppp
is equivalent to

perlpp -pl hello.c.ppp<\n>
  ./hello.c.pl > hello.c
  rm hello.c.pl
except that the file hello.c.pl is never explicitly created.

So our first example, hello.c.ppp, when normally processed by perlpp, creates a copy of itself, hello.c. While this should not excite you, it should not surprise you either. After all, if you processed a text file using cpp, containing no cpp directives, you would get back exactly what you put in.

cpp is interesting only when the input file contains cpp directives. Perlpp is only slightly interesting when the input file contains no perlpp directives, because it generates a Perl script that regenerates the input file using print statements. To get any further, the perlpp directives must be used.

Directives

Only four directives are available for perlpp, along with a default directive. Each describes how a given line of input will be translated into the perl script.

  1. ! Perl source rule: if the first character of a line is a ! (bang), copy the remaining part of the line to the generated perl script verbatim.
  2. ' print exact: If the first character of a line is a ' (single quote), then generate a single-quoted (uninterpolated) print statement. Executing this print statement will produce the remaining part of the input line exactly.
  3. " print interpolated: if the first character of a line is a " (double quote), generate a double-quoted (interpolating) print statement. For more on interpolating strings, see the perlop man page. If use locale is in effect, the case map used by \l, \L, \u and <\U> is taken from the current locale. See the perllocale man page. [It should be noted that \\ (two backslashes) in an interpolated string translates into a single backslash, so \\n interpolates to \n in the output. This will show up in our next example.]
  4. ` print system: if the first character of a line is a ` (back quote), then generate a back-quoted (system) print statement. Executing this print statement will produce the output of, first, interpolating the remainder of the line as in rule 2 above, then running the interpolated text as a shell command.
If none of the characters bang(!), single quote('), double quote(") or back quote(`) begin a line, a default translation occurs:

Example 2: Salutations

Create a file called salutations.c.ppp containing the lines:

  #include <stdio.h><\n>
  int main()
  {
  !foreach $s ('Hello World!','Hola Mundo!',
     'Ciao!') {
  "  printf("$s\\n");
  !}
    return 0;
  }
Let's first look at the generated Perl script by typing:

perlpp -pl salutations.c.ppp
In salutations.c.pl, you will find

  print '#include <stdio.h><\n>
  ';
  print 'int main()
  ';
  print '{
  ';
  foreach $s ('Hello World!','Hola Mundo!',
     'Ciao!') {
  print "  printf(\"$s\\n\");
  ";
  }
  print '  return 0;
  ';
  print '}
  ';
Look carefully at the print statement generated by the printf statement in salutations.c.ppp:

print "  printf(\"$s\\n\");<\n>
  ";
Perlpp goes to the trouble of adding backslashes where appropriate so that double quotes do not prematurely terminate the string. The same idea applies to the other forms of quoted print statements perlpp generates.

Let perlpp run this script for us with

perlpp salutations.c.ppp
This generates the file salutations.c,

#include <stdio.h><\n>
int main()
{
printf("Hello World!\n");
printf("Hola Mundo!\n");
printf("Ciao!\n");
return 0;
}

Example 3: Fast Point Template

This last example uses perlpp to generate a template for fixed-length vector classes in C++, where loops are unwound. Unwinding a loop means, for example, replacing the code

for (int i=0; i<3; ++i) a[i]=i;
with

a[0]=0; a[1]=1; a[2]=2;
Unwinding the loop does not change the effect of the code, but it does make it faster. This is because the index variable does not have to be incremented and compared between each assignment.

Such a fixed-length template class would be useful, for example, in a graphics library where two-dimensional and three-dimensional vectors of fixed types (float, int, double) would be used by the package. All of these would be essentially the same--and thus a candidate for a template class--except that the performance overhead for the looping may not be acceptable in such a high-end application.

perlpp can help here. perlpp is first used to generate a Perl program (using the -pl option) from a template file, Point.Template.ppp. The Point.Template.pl script is designed to create different fixed-length vector classes, depending on what arguments are passed to it. Using the back-quote print system directive, this script is then used in the primary source file, testPoint.cpp.ppp, to generate the specific desired class.

The file Point.Template.ppp is fairly long, and available by anonymous FTP as noted in Resources. Consequently, I will consider only the portions of this file which illustrate something interesting about how to use perlpp.

The first interesting line of Point.Template.ppp is

! eval join(";",@ARGV);
This, of course, will translate into the Perl statement

eval join(";",@ARGV);
Only the leading bang is deleted. Executing this line joins all the command-line arguments of the script, separated by semicolons, and evaluates that as a sequence of Perl statements. This is an extremely crude form of command-line argument processing, but it serves our purposes.

The next few lines check that the previous command-line evaluation actually defined three crucial variables:

If they were not defined, the script writes to STDERR about it and exits with an exit code of 1.

After this, the template goes about the business of generating the desired class. This begins with

"class $name {<\n>
"public:
!#
!# Declare internal array of desired type and size
!#
"  $type a[$dim];
"  static const int dim=$dim;
Here $name, $type and $dim are used to create specific text in the class definition. In Perl, # denotes a comment, so !# is effectively a comment in perlpp.

The first instance of loop unwinding is seen in the default constructor for the class. The lines

!  for ($i=0; $i<$dim; ++$i) {<\n>
"    a[$i]=0;
!  }
translate into the Perl segment

for ($i=0; $i<$dim; ++$i) {<\n>
     print("    a[$i]=0;
");
}
This loop is executed in the Perl script as the preprocessor, where the assignment will be expanded to a sequence of assignments in the C++ class source. Loops are unwound in a similar fashion in other parts of the class definition.

Efficiency aside, the next block of the perlpp source provides a class constructor that would be impossible to declare using standard template facilities: one with as many arguments as the dimension of the vector class to be constructed.

  !  @arg=(); for ($i=0; $i<$dim; ++$i) { $arg[$i]="$type
a$i"; } 
  !  $args=join(',',@arg);
  !
  "  $name($args)
If you are new to Perl, the first line may be difficult to understand. It begins by setting the @arg list to an empty list, then loops to build $dim entries in @arg: "$type a0", "$type a1", etc. The reason elements of @arg are denoted by $arg[$i] in the for loop is that @arg, once subscripted, refers to the scalar variable available as the ith entry of @arg. Remember, scalar variables always begin with a $ character--even those tucked inside a list.

Following this declaration, the constructor is defined to initialize the vector with its arguments:

"  {<\n>
!    for ($i=0; $i<$dim; ++$i) {
"      a[$i]=a$i;
!    }
"  }
This is followed by the definition of subscript operators, which are perfectly standard. After this, another feature of perlpp is illustrated: the code for defining all the assignment operators is generated using a loop structure:

!  foreach $op<\n>
("=","+=","-=","*=","/=")
{
    .
    . # define the $op assignment operator
    .
!  }
Since all the assignment operators are defined in essentially the same way, this loop allows the template to be written more compactly than with the standard template facilities. This makes the template faster to write, maintain and debug.

A similar loop follows this to define the various binary operators for the class: addition, subtraction, etc. These loops reduce the redundancy of effort in defining the template, which, amusingly, is itself a tool to reduce redundancy of effort. Okay, I admit I am easily amused.

The rest of the template declares and defines three operators, I/O functions and a scalar multiply. They do what they are supposed to do, and nothing new about perlpp is learned by going over them.

Let's move on to using Point.Template.ppp. First, convert it to a Perl script with the command:

perlpp -pl Point.Template.ppp
Now look in the test program source file, testPoint.cpp.ppp. The only interesting line is

` ./Point.Template.pl '\$name="FixVect"'<\n>
'\$dim=2'
'\$type="float"'
This runs the Point.Template.pl script just generated with the arguments:

$name="FixVect"  $dim=2 $type="float"
With these arguments, the template script prints out a FixVect class, which represents two-dimensional arrays of floats. The back-quote perlpp directive includes this in the testPoint.cpp source file.

Generating template classes in this way is not completely satisfying, because the idea of declaring and defining the class must usually be separated. However, this can be corrected by modifications of the template file. Essentially, a fourth variable could be set on calling the script, $use, which has a value of either "declare" or "define". Using if clauses, the script would then provide either the definition or declaration portion of the class. This is yet another way in which the redundancy of a template can be reduced using perlpp.

Conclusions

I don't want to leave you thinking of perlpp as sort of a ``compression algorithm.'' Keeping ideas together in a project simplifies maintaining them. The goal of perlpp is to prevent ``concept leakage,'' where several parts of source files redundantly represent an idea, and those source files have to be maintained separately.

Essentially, perlpp replaces the rather rigid (but simple!) text-processing language available as cpp with the expressive (but complex) text-processing language available as Perl. Many programmers use Perl in any case, so knowing the syntax of Perl pays twice: once as a language in itself, and once as a powerful macro language for any programming language.

If you don't know Perl, then perlpp is just another good reason to learn it.

Resources

perlpp is available as a tar file by anonymous FTP at ftp://zot.mesastate.edu/pub/wmacevoy/perlpp/perlpp-0.5.tar.gz (local copy here.) The distribution includes installation instructions for perlpp.

The examples from this article are at ftp://zot.mesastate.edu/pub/wmacevoy/perlpp/lj-article.tar.gz (local copy here).

You must have Perl 5, or later, installed to use perlpp. All Linux distributions have Perl available as a package in some form. The web page http://www.perl.org/ is a great place to begin if you want to learn more about Perl.

Troubleshooting

perlpp is a Perl script that generates Perl scripts. To use it, you must have Perl installed, and perlpp must be able to find it. If perlpp does not work, check that the first two lines of perlpp reflect the actual location of your Perl executable.

If these are correct, make sure that execute permissions are set for the script (chmod 755 perlpp), and that perlpp is visible from your PATH.

If you just installed perlpp, you may have to refresh your shell PATH directory cache with hash -r (if you use bash) or rehash (if you use csh).

Acknowledgements

Thanks to the Linux community for providing such a wonderful environment for reliable scientific computations. I try very hard not to taunt every time a colleague of mine tries to accomplish something useful on a machine which crashes so often they have come to expect it.

I also want to thank Mike Littlejohn for test-driving perlpp and this article, as well as Karl Castleton, Steve Yabusaki and Ashok Chilakapati for getting me on the groundwater modeling project.

Finally, thanks to Pacific Northwest National Laboratories, the Associated Western Universities fellowship program, and Mesa State College for allowing me the time, resources and opportunity to develop perlpp.

A Story

Over the summer, I left my Red Hat 5.0 machine running in my Mesa State College, Grand Junction, Colorado office. I then went to Pacific Northwest National Laboratories in Richland, Washington, where I dreamed up perlpp.

I used my Linux box remotely for the whole summer: web-browsing, e-mail, obtaining old source files, using Emacs, Maple, TeX, Perl or the FORTRAN compiler. It's true that I used these tools on the PNNL machines as well, but sometimes a license was not available, or the Linux tool was better for my purposes than what I could obtain at the lab.

For six weeks I used that machine remotely at least once each day. Only once did I have a problem with connecting to it. After the summer, I learned that my Colorado office, which is in a building that is being remodeled, had experienced several power failures. Apparently, my machine had restarted each time without a hitch, and I had only noticed the single time I requested something during an outage.

That is far more reliability--and accessibility--than many of my colleagues experience with other operating systems.


Copyright © 1999, Dr. Warren MacEvoy
Published in Issue 44 of Linux Gazette, August 1999

"Linux Gazette...making Linux just a little more fun!"


How to use a Ramdisk for Linux

By Mark Nielsen

If this document changes, it will be available at http://www.tcu-inc.com/mark/articles/Ramdisk.html .


Index:

  1. Introduction to RamDisk
  2. How to use RamDisk
  3. Changing the size of the ramdisks
  4. Example of how to use a RamDisk for a webserver.
  5. Comments

Introduction to RamDisk

Hello! This is a brief article about how to setup a RamDisk on a RedHat 6.0 system. It should be very similar for other Linux distributions.

What is a RamDisk? A RamDisk is a portion of memory that you allocate to use as a partition. Or, in other words, you are taking memory, pretending to treat it as a hard drive, and you are saving your files to it. Why would you want to use a RamDisk? Well, if you know that certain files you have are constantly going to be used, putting the files into memory will increase the performance of your computer since your memory is faster than your hard drive. Things like web servers with lots of data can be sped up in the this way. Or, if you are insane, and you have a PII 550 Mhz computer with 1 gig of memory and an old 500 meg hard drive, you can use it just to increase your hard drive space. Then again, if you want an almost diskless machine, it might not be that crazy afterall.

Here are some more resources to help you.

  1. http://metalab.unc.edu/LDP/HOWTO/Kernel-HOWTO.html
  2. http://metalab.unc.edu/LDP/HOWTO/mini/LILO.html
  3. /usr/src/linux/Documentation/ramdisk.txt

How to use RamDisk

Well, it is very easy to use a ramdisk. First of all, the default installation of RedHat 6.0 comes with ramdisk support. All you have to do is format a ramdisk and then mount it to a directory. To find out all the ramdisks you have available, do a "ls -al /dev/ram*". This gives you the preset ramdisks available to your liking. These ramdisks don't actually grab memory until you use them somehow (like formatting them). Here is a very simple example of how to use a ramdisk.
mkdir -p /tmp/ramdisk0
mkfs -t ext2 /dev/ram0
mount /dev/ram0 /tmp/ramdisk0
Those three commands will make a directory for the ramdisk to be located at, format a ramdisk (default being 4 megs), and mount the ramdisk to the directory "/tmp/ramdisk0". Now you can treat that directory as a pretend partition! Go ahead and use it like any other directory or as any other partition.

What are some catches? Well, when the computer reboots, it gets wiped. Don't put any data there that isn't copied somewhere else or if it is critical data. If you make changes to that directory, and you need to keep the changes, figure out some way to back them up.


Changing the size of the ramdisks

Well, how do I change the size of the ramdisks? Well, personally, I could only find two ways to change them. Neither of the options will let you change the size of the ramdisks after the computer has started. That sucks.

Here is the hard way first. Look at this file :
   /usr/src/linux/drivers/block/rd.c
then edit it, change this line
   int rd_size = 4096; /*Size of the ramdisks */
by changing the number to whatever size you want in kilobytes. Then compile the kernel, install the kernel, and reboot the computer.

Okay, now the easy way. Add this line to your lilo.conf file:
   ramdisk=10000
and it will make the default ramdisks 10 megs after you type the "lilo" command and reboot the computer. Here is an example of my /etc/lilo.conf file.

boot=/dev/hda
map=/boot/map
install=/boot/boot.b
prompt
timeout=50
image=/boot/vmlinuz-2.2.5-15
	label=linux
	root=/dev/hda2
	read-only
	ramdisk=10000
Actually, I got a little over 9 megs of usable space.

Example of how to use a RamDisk for a webserver.

Okay, here is an example of how to use 3 ramdisks for a webserver. Let us say you are 99% confident that your default installation of Apache for RedHat 6.0 won't use more than 9 megs for its cgi-scripts, html, and icons. Here is how to install one.
First, issue this command to move the real copy of home directory for the webserver to a different place. Also, make the directories to mount the ramdisks to.
mv /home/httpd/ /home/httpd_real
mkdir /home/httpd
mkdir /home/httpd/cgi-bin
mkdir /home/httpd/html
mkdir /home/httpd/icons
Then, add these commands to your /etc/rc.d/rc.local file.

	### Make the ramdisk partitions
/sbin/mkfs -t ext2 /dev/ram0
/sbin/mkfs -t ext2 /dev/ram1
/sbin/mkfs -t ext2 /dev/ram2

	### Mount the ramdisks to their appropriate places

mount /dev/ram0 /home/httpd/cgi-bin
mount /dev/ram1 /home/httpd/icons
mount /dev/ram2 /home/httpd/html

	### Copying real directory to ramdisks
tar -C /home/httpd_real -c . | tar -C /home/httpd -x

	#### Restarting the webserver
/etc/rc.d/init.d/httpd restart	

I would reboot your computer, even though you really don't have to if you just issue this command to start the rc.local file again:
/etc/rc.d/rc.local

Comments

  1. Please remember one thing, BACKUP YOUR DATA if you change it and you need it. When the computer reboots, any changes are lost. A cron job should do it. Have it check every 5 minutes and see if any files have changed and backup any changes. There are better ways of doing this, but I won't get into it. Another thing you could do is make your changes to the real directory, and then copy over the changes to the ramdisks. That is much safer.
  2. One thing to note, some motherboards for IBM PC compatible systems only cache memory below 256 megs (or even 128 megs). If you use a lot of ram, take that into consideration.
  3. A cool use of this would be to have a computer with 1 gig of memory and then use 256 megs for "/tmp". If you have lots of processes that use "/tmp", it should help speed up your system. Also, anything in /tmp would get lost when the computer reboots, which can be a good thing.
  4. At first, I tried to use lilo.conf to change the sizes of the ramdisks, but it didn't work. After Rob Funk asked me why I was trying to do it the hard way (recompiling the kernel and such), I tried it again, and it worked. I don't know what I did wrong the first time. Thanks Rob!

Mark Nielsen works for The Computer Underground as a file clerk and as a professional (suit and tie) consultant at 800linux.com. In his spare time, he does volunteer stuff, like writing these documents for The Linux Gazette and linux.com. This document was edited using Nedit and ispell.


Copyright © 1999, Mark Nielsen
Published in Issue 44 of Linux Gazette, August 1999

"Linux Gazette...making Linux just a little more fun!"


Finding All Filenames with Identical I-Node Numbers

By Steve O'Neil


Here are a couple of scripts, one shell script, and one awk script, that will find all file names that have identical inode numbers in your system. Why would you want to know this? Well, there are three reasons I can think of.

First, it's generally useful when you're administering a system to know where all of your file links are. Since an inode in Linux isn't freed until the last link to it is removed, it can be helpful to know how many filenames have to be removed in order to _really_ kill a particular file.

Second, knowing all of the hard links in your system can be useful when you have an intrusion. Suppose someone breaks into your system and installs a packet sniffer, keystroke sniffer, or some other nasty piece of work. If he wants to guarantee that he'll be able to carry on his business even if you find his program, he might just create some hard links to it in some out of the way places in the system. Then, even if you find his original program and kill it, he can simply start it running again under one of the alternate file names he created, assuming he can still access your system. However, if you look at the inode number of the original program, then run these scripts, any links to the file will be immediately evident. Granted, you can get the same effect by running "find", if you know the inode number you're looking for, but this won't get you information about _all_ the links in your system, which leads me to the final reason for doing this ...

If you're going to take a proactive approach to system security, you'll be running a lot of file testing and scanning programs, to guard against tampering. If you run these scripts on your system when you're sure it's "pristine", and keep this list of hard links secure, you can run the scripts on your system periodically, perhaps once a day, and compare the new list of links to the baseline. Any differences seen, especially in the "system" directories, such as /bin, /lib, /etc, and so on, should be investigated without delay.

The scripts should run on any system using bash or zsh, and every Linux distrbution provides some version of awk. The file listing mechanism does, however, rely on the use of Mark Baranowski and James Gleason's Enhanced ls program, els. Unlike ls, els gives you complete control over the output format of the file listing. This is an amazing program, and I recommend getting it whether you use my scripts or not. Its only shortcoming is that it doesn't display different file types in different colors, but, this is a minor point in light of the program's power. It's available by ftp at ftp://perseus.elen.utah.edu/pub/markb/els.tar.Z. The current version is 1.44.

Below are the scripts. Adjust the list of directories in "findhardlinks.sh" to suit your preferences, and adjust the location of the awk interpreter in "showsame.awk" to match what you have.

To use them, first run "findhardlinks.sh" from the command line, as root. A file called "allfiles.lst.srt" will be created in /temp(or whatever other directory you'd like) . Be patient; if you have a lot of files and directories, this could take a few minutes. When this is done, copy "showsame.awk" to the same directory as "allfiles.lst.srt" and run

	showsame.awk allfiles.lst.srt

This will create a file called "outfile.txt", which contains the list of identical links. Run this through "uniq" to eliminate duplicated lines, like so

	uniq outfile.txt > outfile.nodup

and you're done. The file "outfile.nodup" is the list of links you want. And yes, I could have put all this together into one big script, but I wanted to show how the pieces work. Feel free to combine and streamline these scripts to your heart's content.

One last point: hard links only make sense between filenames on the _same_ filesystem, so when you put your list of directories into the shell script, be sure they're all part of the same filesystem, such as "/".


findhardlinks.sh

#These directories are all under "/" on my system; you may have to change
#the list to suit your configuration. 

for i in bin boot etc home lib opt root sbin tmp usr var
	do

#This line generates a file listing for all the specified directories and
#their subdirectories, showing each files i-node number, and its complete
#path name, and puts all of it into "allfiles.lst"

	els -a -i +R +NF $i >> /temp/allfiles.lst
	done
cd /temp
sort allfiles.lst > allfiles.lst.srt 
rm allfiles.lst

showsame.awk

#! /usr/bin/awk -f
BEGIN {

	getline  #get the first line of the file, then,
	n1=split($0, test1) #put its fields into an array, then,

#increment the line pointer by one

}
{
#this is the i-node comparison loop

	n2=split($0, test2) #put the next line into an array
	if (test1[1] == test2[1]) { #see if the i-node numbers of the two
				    #lines are the same(field 1 of both
				    #strings)

#if they're the same, print the contents of both arrays

		for (i=1; i <= n1; i++) {
			printf ("%s ", test1[i]) >> "outfile.txt"
					} #note (space) after %s; this puts
					  #back spaces between fields lost
					  #when the strings were split into
					  #the arrays

			printf ("\n") >> "outfile.txt"
		for (i=1; i <= n2; i++)  {
			printf ("%s ", test2[i]) >> "outfile.txt"
				        }
			printf ("\n") >> "outfile.txt"	
				   }

#Now put the most recent string into the array that holds the previous
#string; this allows us to do comparison between each line and the one
#before it.

	for (i=1; i <= n2; i++) { 
		test1[i] = test2[i]
				}
	n1 = n2 #set the count of fields in the array that is holding what
		#is now the previous string to the number of fields in that
		#string

	next	#go get the next string and do it again
}


Copyright © 1999, Steve O'Neill
Published in Issue 44 of Linux Gazette, August 1999

"Linux Gazette...making Linux just a little more fun!"


DNS for the Home Network

By JC Pollman and Bill Mote


Disclaimer: This article provides information we have gleaned from reading the books, the HOWTOs, man pages, usenet news groups, and countless hours banging on the keyboard. It is not meant to be an all-inclusive exhaustive study on the topic, but rather, a stepping stone from the novice to the intermediate user.  All the examples are taken directly from our home networks so we know they work.

How to use this guide:

Prerequisites: This guide assumes that you have bind v8.2 installed, that you have selected a legal domain name, and that you're using IP Masquerade to "hide" your machine from the internet. If you're running bind v4.x  either upgrade (there are some security concerns with 4.x) or do not use this article as it will not work. Note - most distributions have three packages of bind - the only one you do not want is the "caching-only" version.

What is DNS?  DNS stands for: Domain Name System and is actually a protocol. Bind, which is the program you will use, (Berkeley Internet Name Domain) is an implementation of DNS, both server and client.  DNS translates alpha-numeric names, which we humans use, to ip addresses, which computers programs use, and vice versa.  In other words, it translates www.netscape.com to 207.200.75.200.

Why have your own DNS server?  You can survive without your own DNS server by using your ISP's DNS server. Using your own server helps to speed up name lookup, minimize the amount of admin time spent configuring your network when you add a new computer, allows sendmail to work better for your home network, and will give you a good weekend project.

Who is providing your DNS now? Odds are your local ISP is providing you DNS. Follow along with this example as it will validate our assumption and provide you with the basis to test your DNS setup after the installation. Connect to your ISP and then, from a terminal window, type the following command(s):

nslookup[Enter]

Default Server: {your ISP's DNS name will show here}
Address: {your ISP's DNS server IP address here}

Now type this in to see dns work:
>www.tux.org

Non-authoritative answer:
Name: gwyn.tux.org
Address: 207.96.122.8
Aliases: www.tux.org
>exit [Enter]


Important Note - Masquerading, do NOT even think of setting up your own private DNS unless you have set up masquerading (or have real ip addresses and have registered your network name)!  Otherwise you will confuse the system and probably get some nasty emails from the owners of the real ip addresses.  Masquerading allows you to use whatever ip addresses and name you want for your own private network and then masquerades requests from that network through your internet connection using the valid ip address for that connection.

Install DNS: You have to install the bind program to get DNS working.  In my home setup, kulai.org is my domain.  Since I use masquerade, kulai.org is not listed anywhere, nor did I register it with anyone. When you choose your domain name, make sure it is not already registered or you could end up making a mess of things.  You use the whois program to check if your domain has been legally registered. Example, while connected to the net:

whois  kulai.org [Enter]
and I get back a lot of stuff that ends with:
No match for "KULAI.ORG".
For the rest of this article I will be using my computers. They are:
 
 
master.kulai.org 192.168.124.10 linux only, the server
jc.kulai.org 192.168.124.1 linux and win98
fserver.kulai.org 192.168.124.11 freebsd only
phillip.kulai.org 192.168.124.20 win98 only

Setup your DNS: There are five files you have to create. These are ordinary text files you create with your favorite editor. You can copy and paste the examples provided - just make sure to change the names and ip addresses to yours!  These files are very particular about the syntax - be very careful when you type/edit them!

/etc/named.conf
/var/named/db.cache
/var/named/db.kulai.org        (where kulai.org is my domain)
/var/named/db.124.168.192    (where my network is 192.168.124.0)
/var/named/db.127.0.0
WARNING: While your DNS is being set up, never reboot your server without renaming /etc/resolv.conf. When the boot completes, rename it back to /etc/resolv.conf. A bad reverse DNS can prevent booting, requiring a boot and rescue bust-in. Save yourself the trouble - rename.

Also, check your /etc/nsswitch.cnf file. The "hosts" line should say "hosts: files dns". This will make the system resolve hostnames by first looking at /etc/hosts before consulting a possibly non-functioning DNS. If you have the Network Information System, the line may be "hosts: files nis dns".


 

Start it Up: Create the files above and then edit your /etc/resolv.conf to list only your own name server:

search kulai.org
nameserver 192.168.124.10
Note: /etc/resolv.conf is manditory for bind 8.*  then type: tail -f /var/log/messages[Enter] so you can monitor any error messages when named starts.  Open another window/console and type: /usr/sbin/ndc start [Enter]
(or for Redhat users: /etc/rc.d/init.d/named start )
Your /var/log/messages should have a number of entries about named and end with: Jul 10 15:54:26 master named: named startup succeeded
Jul 10 15:54:26 master named[3523]: Ready to answer queries.
To test it, connect to the internet and repeat the process in section "Who is providing your DNS now?"  It should give your server's name as the name server.  Type in a place you often go to and see if it gives you the ip address.

If this does not work:
    1. Check to see if named is running:
        ps ax|grep named [Enter]

    2. Ping the server from a different machine, both by ip address and name:
        ping 192.168.124.10 [Enter]
        ping  master.kulai.org [Enter]

    3. Telnet to the server. A long time to connect will indicate a problem.

If all goes well, point the rest of the computers on your home network to your new name server.

Final thoughts: We have given you a cookie-cutter recipe for setting up a simple dns server.  Since success usually creates greater interest, here are some places to learn more:

The DNS HOWTO
DNS and Bind by O'Reilly
DNS - ZDNet Webopedia Definition and Links
Troubeshooters.com: DNS -- also includes hints for those who have used an old version of bind

Get your dns working as we will be using it in the months to come. Next month we tackle mail for the home network.


Copyright © 1999, JC Pollman and Bill Mote
Published in Issue 44 of Linux Gazette, August 1999

FILE db.124.168.192: This file does the opposite of db.kulai: give it an ip address and it returns the computer name. I use ***** to seperate the file listing from the rest of this article, so do not copy them into your file. Bold items are explaned below - bold is not part of the regular file.  Here is what mine looks like:
**************************************************************
@    IN    SOA  master.kulai.org. jpollman.kulai.org. (
                  1;
                  10800;
                  3600;
                  604800;
                  86400 );

         IN NS  master.kulai.org.
10       IN PTR  master.kulai.org.
10       IN PTR www.kulai.org
10       IN PTR mail.kulai.org.
10       IN PTR news.kulai.org.
11       IN PTR fserver.kulai.org.
1        IN PTR jc.kulai.kulai.org.
20       IN PTR phillip.kulai.org.

**************************************************************
NOTE: The biggest problem in creating these files is missing a period where one is required. The period says: this is the end of the name. Without the period, the domain name will be tacked on, so master.kulai.org will become: master.kulai.org.kulai.org  In other words, the period is the difference between absolute and relative names.

This file is basically the same concept as the db.kulai file:
This is shorthand for the base domain name. Note: the @ must appear on the top line and with NO spaces before it.
master.kulai.org.  This is the server's name.
jpollman.kulai.org.  This is actually an email address with the @ replaced by a period. If there is a problem, this person will be notified via email.
All those numbers: These are the default times. If you want to change them, read the books - the defaults work just fine for home use.
IN NS this line tells named that master.kulai.org is the name server. Note: the first part of the line is blank, so named will add kulai.org there (no period).
The numbers on the left (10,11,1,20) are the last digits of the ip address, e.g. name will expand 10 to: 192.168.124.10.

Notice that we use IN PRT instead of IN A in this file.
 
 


FILE db.127.0.0:  A simple file that allows named to see localhost. I use ***** to seperate the file listing from the rest of this article, so do not put them into your file. Bold items are explaned below.  Here is what mine looks like:

**************************************************************
@ IN SOA   master.kulai.org. jpollman.imcnet.net. (
                        1;
                        10800;
                        3600;
                        604800;
                        86400 );
 

  IN  NS localhost.
1 IN PTR localhost.

**************************************************************
NOTE: The biggest problem in creating these files is missing a period where one is required. The period says: this is the end of the name. Without the period, the domain name will be tacked on, so master.kulai.org will become: master.kulai.org.kulai.org In other words, the period is the difference between absolute and relative names.

This file should work with all computers without modification.

Same concept as with the db.kulai file:

This is shorthand for the base domain name. The @ must be on the top line with not spaces in front of it.
master.kulai.org.  This is the server's name.
jpollman.kulai.org.  This is actually an email address with the @ replaced by a period. If there is a problem, this person will be notified via email.
All those numbers: These are the default times. If you want to change them, read the books - the defaults work just fine for home use.
IN NS this line tells named that master.kulai.org is the name server.
 

Notice that we use IN PTR instead of IN A in this file.


FILE db.cache: This file lists the authoritative name servers for the very top domains. It used to be a real pain to get and keep straight, but the utilities that come with bind version 8 have a little program called "dig" that does all the hard work. To get your db.cache file, while connected to the internet, type:

dig @e.root-servers.net . ns>/var/named/db.cache

Since you need to keep this file up to date, I have not included it here - it is so easy to get anyway. I this set on my dns server via cron to run monthly so it stays up to date.


FILE db.kulai:  This file translates names to ip addresses. I use ***** to seperate the file listing from the rest of this article, so do not put them into your file. Bold items are explaned below - bold is not part of a regular file.  Here is what mine looks like:

**************************************************************
@  IN SOA master.kulai.org. jpollman.kulai.org. (
   1;
   10800;
   3600;
   604800;
   86400 );

       IN NS   master.kulai.org.
master IN A    192.168.124.10
 

mail   IN A 192.168.124.10
www    IN A 192.168.124.10
news   IN A 192.168.124.10

localhost    IN A    127.0.0.1

fserver IN A  192.168.124.11
jc      IN A  192.168.124.1
phillip IN A  192.168.124.20
 

**************************************************************
NOTE: The biggest problem in creating these files is missing a period where one is required. The period says: this is the end of the name. Without the period, the domain name will be tacked on, so master.kulai.org will become: master.kulai.org.kulai.org  In other words, the period is the difference between absolute and relative names.

This is shorthand for the base domain name. IMPORTANT: the @ has to be on the top line and have no spaces in front of it.
master.kulai.org.  This is the server's name.
jpollman.kulai.org.  This is actually an email address with the @ replaced by a period. If there is a problem, this person will be notified via email.
All those numbers: These are the default times. If you want to change them, read the books - the defaults work just fine for home use.
IN NS this line tells named that master.kulai.org is the name server. Note, the first part of the line is blank - named will put in kulai.org, and the name given at the end of the line must be a name from an "IN A" line listed somewhere in this file.
IN A  these lines tell named what the name-to-ip relationship is. Note, I did not end the names with a period (.) so named will automatically add kulai.org (my domain) on to the end of them. It knows to use kulai.org because I declared that name as a zone in the /etc/named.conf: zone "kulai.org"
IN CNAME: this was formerly used to make additional names aliases for the same ip. It is not needed any more - in fact it is discouraged. So, my mail, web, and news servers are all on master.kulai.org. I could just as easily have used only the server's name, i.e. master.kulai.org for all the services, but mail.kulai.org is how it is usually setup at the ISPs. Also note: I used an ip address and not a name like CNAME used to use.

Note: you have to list the server and localhost as regular computers with "IN A" lines.
 
 


FILE named.conf:  This file tells named where its other files are.  I use ***** to seperate the file listing from the rest of this article, so do not put them in your file. Bold items are explaned below  - the real file obviously does not have any bold in it.  Here is what mine looks like:
**************************************************************
options {
 directory "/var/named";

 forwarders {
  216.116.0.4;
  216.116.0.10;
 };

 };
 

zone "." {
 type hint;
 file "db.cache";
};

zone "kulai.org" {
 type master;
 file "db.kulai";
};

zone "124.168.192.IN-ADDR.ARPA" {
 type master;
 file "db.124.168.192";
};

zone "0.0.127.IN-ADDR.ARPA" {
 type master;
 file "db.127.0.0";
};
**************************************************************

There are 4 zones:
    the top zone - .
    my name-to-ip zone - kulai.org
    my ip-to-name zone - 124.168.192.IN-ADDR.ARPA
    my localhost zone - 0.0.127.IN-ADDR.ARPA
Each zone will need its own file.

directory: this is the place you will put the rest of your files.
forwarders: these are the ip's of the DNS servers on the internet (most likely your ISP's DNS servers.)  Remember, named on your server is authoritative for your computers only, it will have to go else where to get the other ip's.
db.cache, db.kulai, db.127.0.0, db.124.168.192 These are all file names that I made up for my zones: you can use any name you wish - as long as you know what they are.

"Linux Gazette...making Linux just a little more fun!"


Other ways to join and contribute to the Open Source community

By Erik Severinghaus


Though Linux, is/was/always-will-be a hackers OS, there are lots of guys that couldn't hack the kernel to save their life. There are however lots of other badly needed areas which could use support.

Documentation

This is one of the most important, and ignored, areas of Linux. Lets face it, coders don't ususally like to write documentation. Find a project you really like (start w/ a small app or something) and see if you can write an easy way to do the basic stuff, and then document the more advanced features. Have a tough time figuring out how to do something? Chances are lots of other guys are having the same problem. Write a HOWTO or Mini-HOWTO and submit it to the LDP. There are tons of other things that need documentation, and developers will love ya for it :).

Bug Testers

This is another thing that will make you a developers best friend. Take the programs, push 'em to the limits, and make 'em break. If you can do something to crash it, send a polite email to the author with your system specs, what version of software, exactly what you did, and exactly what happened when it crashed. Even better, do an strace if it seg faults and send the author the results.

Packaging

Finding rpms and debs of the latest programs is tough to do. Reading some man pages to learn the ins and outs of rpm and dpkg, and rolling generic .tgzs into unofficial (or even better: official) packages is of great help to everyone.

Advocacy

This can be very useful if done correctly. Dispelling the endless FUD is always a Good Thing, but only if done in a polite and constructive manner (completely free of profanity). Please, before you do this, read the advocacy HOWTO.

Conclusion

These are just a few of the ways to help out and contribute to the Linux and Open Source communities. Remember, finding something you enjoy doing will help you do better work, and not get burned out.


Copyright © 1999, Erik Severinghaus
Published in Issue 44 of Linux Gazette, August 1999

"Linux Gazette...making Linux just a little more fun!"


Linux Tips and Tricks

By Anderson Silva


I am writing this article for the linux newbies and even for the intermediate user that might think a few of these tricks are useful for them. Nothing here is new. They are just published very seldom by magazines or books, so a few of you might not know these tips.

I have been using linux for 2 years now, and I can tell you that I learn something new virtually every day. And a few of those things I have learned are very rare to be seen all the time. Here are a few of them.


  1. If you are using Redhat's netcfg utility to connect to the internet and you are sick of having to open up the GUI, and click on ACTIVATE to connect, and then have to click on DEACTIVATE to disconnect... here is one little thing that you can do to make life easier.

    Let's say you have a ppp0 set up with netcfg. Just add this two lines to your /etc/bashrc


Now if you want to connect, all you need to do is to go to your terminal and type dial; if you would like to disconnect just type hangup.


  1. Here is another cool thing for you guys that use bash.

Let's say you want to create a new directory called test

And you type:


# mkdri

Note that the command is mkdir, not mkdri. Instead of backspacing to fix this typo, go ahead and hit Ctrl+t (simultaneously). It will swap the two letter and you have your command fixed.


  1. Also for you guys that are using bash.

    Don't you hate when you want to go from one directory to another, but the directory is a 200-letter name? Let's say you wanted to go from your current directory to the directory what_is_wrong_with_this_directory.

    # cd what

    Now, go ahead and hit the TAB key. This will make the shell look through your paths and find the possibilities that starts with what.

    Note: If you hit tab once and nothing happens, hit it twice, because if there is any other directory that starts with the word what then the shell would not know to what directory to go to.


  1. Customizing your directory colors.

    I know a lot of you know the command ls --color. Which displays your directory with colors. But, a lot of people may not know that those colors are customizable. All you need to do is add the following line to your /etc/bashrc file.


eval `dircolors /etc/DIR_COLORS`


And then all of the color configuration can be found in the file /etc/DIR_COLORS


  1. Frozen Xwindow.

    If your Xwindow freezes sometimes, here are two ways that you may try to kill your server. The first is the simple simple way of killing your X server the key combination: Ctrl+Alt+Backspace

The second way is a little more complicated, but it works most of the time. Hit Ctrl+Alt+F2 to startup a virtual console, then log in with your user name and password and run:


# ps -ax | grep startx


This will give you the PID of your Xserver. Then just kill it with:


# kill -9 PID_Number


To go back to your first console, just hit Alt-F1


None of these tricks are "rocket scientist" stuff, but I bet it is new for a lot of linux newcomers. So, hopefully, you learned something new with this article.





Copyright © 1999, Anderson Silva
Published in Issue 44 of Linux Gazette, August 1999

"Linux Gazette...making Linux just a little more fun!"


Pine and Exim: a bug

By Jan Stumpel


In the last Gazette I wrote an article called Setting Up Mail for a Home Network Using Exim. In this I described a method to use the Mail Transport Agent (exim in this case) to set the proper From: address on outgoing messages.

This works fine, unless the Mail User Agent (the actual e-mail program for composing messages) messes things up. Unfortunately, pine 3.96 (which I use) is not free of problems in this regard.

If you type a message in pine and postpone it (store it for later editing before sending it) pine will add a Reply-To: header when the message is resumed later. So, such a postponed/resumed message sent by Joe Bloggs will be sent out with the following headers:

From: Joe Bloggs <jbloggs@isp.com>
Reply-To: Joe Bloggs <joe@home>

This will occur only with messages which are first postponed, and then resumed and sent! Messages which are composed and sent in one go will only have the From: address, not the Reply-To: address. The problem is, if the recipient replies to your message, Reply-To: has priority over From:. So the reply will go to the home domain (which does not exist), instead of to the proper isp.com domain.

This bug (which is flagged in the pine 3.96 source code as an unrepaired bug) has been corrected in some later versions of pine (at least in pine 4.10). But pine 3.96 still has it. To check if your pine has the bug, write, postpone, resume, and postpone again a test message. Then check the file ~/mail/postponed-msgs, to see if a Reply-To: header is present (and then kill the message).

If you have the problem, apart from using a different MUA than pine, the easiest solution is to change /etc/exim.conf so as to remove any Reply-To: headers in outgoing mail. This can be done by changing the line (mentioned in my previous article)

headers_remove = "sender"

to

headers_remove = "sender:reply-to"

This is at least a temporary solution. Best is to upgrade to pine 4.10 (but I myself will wait until a Debian package for pine 4.10 has become available).


Copyright © 1999, Jan Stumpel
Published in Issue 44 of Linux Gazette, August 1999

Linux Gazette... making Linux just a little more fun!

Published by Linux Journal


The Back Page


About This Month's Authors


Larry Ayers

Larry 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.

Jim Dennis

Jim is the proprietor of Starshine Technical Services and is now working for LinuxCare. His professional experience includes work in the technical support, quality assurance, and information services (MIS) departments of software companies like Quarterdeck, Symantec/Peter Norton Group and McAfee Associates -- as well as positions (field service rep) with smaller VAR's. He's been using Linux since version 0.99p10 and is an active participant on an ever-changing list of mailing lists and newsgroups. He's just started collaborating on the 2nd Edition for a book on Unix systems administration. Jim is an avid science fiction fan -- and was married at the World Science Fiction Convention in Anaheim.

Michael J. Hammel

A Computer Science graduate of Texas Tech University, Michael J. Hammel, mjhammel@graphics-muse.org, is an software developer specializing in X/Motif living in Dallas, Texas (but calls Boulder, CO home for some reason). His background includes everything from data communications to GUI development to Interactive Cable systems, all based in Unix. He has worked for companies such as Nortel, Dell Computer, and Xi Graphics. Michael writes the monthly Graphics Muse column in the Linux Gazette, maintains the Graphics Muse Web site and theLinux Graphics mini-Howto, helps administer the Internet Ray Tracing Competition (http://irtc.org) and recently completed work on his new book "The Artist's Guide to the Gimp", published by SSC, Inc. His outside interests include running, basketball, Thai food, gardening, and dogs.

Norman M. Jacobowitz

Norman is a freelance writer and marketing consultant based in Seattle, Washington. Please send your comments, criticisms, suggestions and job offers to normj@aa.net.

Dr. Warren MacEvoy

Dr. Warren MacEvoy (wmacevoy@mesastate.edu) has been a happy Linux user since 1993. He enjoys reading with his son, Bryce, eating really hot food and listening to disturbingly loud music. He also hates putting commas inside of ``quotes,'' especially when the comma is not part of what he is quoting!

Bill Mote

Bill is the Technical Support Services manager for a multi-billion dollar publishing company and is responsible for providing 1st and 2nd level support services to their 500+ roadwarrior sales force as well as their 3,500 workstation and laptop users. He was introduced to Linux by a good friend in 1996 and thought Slackware was the end-all-be-all of the OS world ... until he found Mandrake in early 1999. Since then he's used his documentation skills to help those new to Linux find their way.

Mark Nielsen

Mark founded The Computer Underground, Inc. in June of 1998. Since then, he has been working on Linux solutions for his customers ranging from custom computer hardware sales to programming and networking. Mark specializes in Perl, SQL, and HTML programming along with Beowulf clusters. Mark believes in the concept of contributing back to the Linux community which helped to start his company. Mark and his employees are always looking for exciting projects to do.

Steve O'Neill

Steve is an electronics engineer and been designing hardware for 30 years, more or less. He got interested in Linux several years ago when he worked for a local ISP: he put Linux on his machine and haven't looked back since. He like to say he's semi-retired. That means when the money runs out, he'll go back to work. :-)

JC Pollman

I have been playing with linux since kernel 1.0.59. I spend way too much time at the keyboard and even let my day job - the military - interfere once in a while. My biggest concern about linux is the lack of documentation for the intermediate user. There is already too much beginner's stuff, and the professional material is often beyond the new enthusiast.

Erik Severinghaus

Erik is going to be a senior at North Raleigh Christian Academy next year. He's been using Linux for a couple years now, and currently runs Debian. When he's not staring at a monitor, he loves to ski, camp, backpack, and play basketball.

Anderson Silva

Anderson is a Senior at Liberty University majoring in Computer Science. Originally from Brazil, now he works at the University's Information Technology Center. He is also a member of the Lynchburg Linux User Group in Lynchburg, Virginia.

Jan W. Stumpel

Jan lives in Oegstgeest, The Netherlands.


Not Linux


[ Penguin reading the Linux Gazette ]

There's not much to say this month. I was excited by the news about Amiga adopting the Linux kernel (and about the rumors about Transmeta), and by the report about TurboLinux outselling at least one version of Windows 98 in Japan. I learned from JC Pollman's article about DNS.

JC, by the way, has agreed to do a new monthly series called "The Linux Home System Administrator". These articles will be a little more advanced than our articles for beginners.

Now, if only I hadn't been sick the past week and a half...

Have fun!

-Mike Orr
Editor, Linux Gazette, gazette@ssc.com


[ TABLE OF 
CONTENTS ] [ FRONT 
PAGE ]  Back


Linux Gazette Issue 44, August 1999, http://www.linuxgazette.com
This page written and maintained by the Editor of Linux Gazette, gazette@ssc.com
Copyright © 1999 Specialized Systems Consultants, Inc.