...making Linux just a little more fun! | More 2¢ Tips! By The Readers of Linux Gazette

See also: The Answer Gang's Knowledge Base and the LG Search Engine

- Linux now serving: Outlook Global Address List
- no more duplicate email
- Changeing IP address
- linux consoles --or--
  The "Other" [Alt] Key
- how to create Imakefiles
- Booting stops at devfs --or--
  Even journalled filesystems need fsck sometimes
- Foxpro
- unable to open an initial console
- question on redhat ip forwarding --or--
  IP Masquerading: Red Hat 8.x Redoux
- Learning Red Hat 8.0
- Q: man pages for poll_wait(), wait_event() and others
- is the md5 check always right?
- Follow ups on mgp and mplayer
- Net2Phone ipchains config
- Lost win95 data (and system) when loading linux
- Good locations for sendmail howtos?
- internet connection --or--
  Will this modem even work? Let's ask the internet
- Linux Journal's Weekly News Notes Tech Tips
  - subscribe to LJWNN

### Linux now serving: Outlook Global Address List

Tue, 19 Nov 2002 11:59:58 -0800
Rick Moen (the LG Answer Gang)
Question by Luis Sanchez (LUIS from casiano.com)

Is there a way to share the users in a Linux Mail Server for Outlook clients? We will connect out Outlook clients via pop3/smtp to the linux email server but wonder how to share the global address list (like Exchange) ..

> What you need to do is set up a shared address book using the OpenLDAP server, an open-source facility for serving up Lightweight Directory Access Protocol information to networks, that is routinely included in Linux distributions. This needs to be done with some care on the OpenLDAP end of things, because Micros*ft Outlook is unusually picky about the LDAP schema. One hands-on guide to configuring the schema is here:

> > `http://www.dclug.org.uk/archive-Nov00-May01/msg00253.html`

> You can find one general guide to setting up LDAP (server end) software, in the form of a set of lecture notes I wrote about LDAP, a year or so ago:

> > `http://linuxmafia.com/~rick/lecture-notes/ldap`

> An example of how to set up the client (MS-Outlook) end of the problem (at a university site) is here:

> > `http://www.cae.wisc.edu/fsg/info/mail/ldap_outlook.html`

> Note that appending to the address book from MS-Outlook is not supported (or desirable, actually).

> Good luck with the project. Expect it to take a while, to work out all the details.

### no more duplicate email

Tue, 29 Oct 2002 10:20:31 -0800
Dan Wilder (SSC.COM sysadmin)

We now keep an MD5 sum the body of every message submitted to the Answer Gang. If another identical message body shows up, it gets sidelined.

As usual, this is run over procmail, with two stanzas in the list's procmailrc that look like:

See attached `dupekiller.procmail.txt`

The first stanza says "filter this message through a program".

The second says "sideline if you see an X-Duplicate header in the result".

The duplicate elimination script being used on this list has been upgraded to use Python's library md5 routines rather than an external pipeline, and to employ locking on the db.

By popular request, we're now filtering other lists here with this, and one local user who often receives duplicate emails that are not always spams has asked for the script, too.

The upgraded script, which the procmail recipe calls upon:

See attached `dup.py.txt`

### Changeing IP address

Fri, 22 Nov 2002 07:22:58 +0530
Kapil Hari Paranjape (kapil from imsc.res.in)
Question by eyal (eyal_kornblut from mod.gov.il)

I have a Linux server that functions as a Mail Relay in my system. All I want to do is to change its IP address. How shuld I do it ? witch files shuld I change, and how ??

I would be very thanksfull for some help

eyal

This depends quite a bit on the precise distribution of Linux you have installed. Is it RedHat, Debian, SuSE, Mandrake,...

It also depends on how your network is configured. By static addresses entered in some file under `/etc` or via DHCP.

At the very least you should do:

`grep -ril "your_current_ip_address_here" /etc`

to find out which files refer to your IP address.

In addition if you use SSL and/or SSH you must go through the configuration of these services and check that the new IP address is reflected.

Having gone through this procedure more than once, I must warn you that if you a free machine that can take the place of your mail server then the easiest solution is to setup that machine as the new mail server and switch off the old machine.

Regards,
Kapil.

> You might also want to check that reverse-resolution of DNS is updated to reflect that your new host is attached to this IP address; it's normally handled by the ISP who owns the IP block, so it's not stored locally unless you have made special arrangements, and even if you have, best to make sure they went through safely for both the old and new address. -- Heather

### The "Other" [Alt] Key

Mon, 18 Nov 2002 09:46:18 -0800
Jim Dennis (the LG Answer Guy)
Question by The Gavitron (gavitron from shaw.ca)

http://www.linuxgazette.com/issue35/tag/magickeys.html

James,

Further to your technical article quoted above;

You explain that I can use the `/other/` alt key for ttys 13-24, but in my case, I only want to use both alt keys to switch between the same 12 ttys. Is it possible to configure this? Would making tty24 a symbolic link to tty12 accomplish it? I realise it's been over 4 years since you wrote the original article, but if you can still help, I would greatly appreciate it.

Yours, Gavin McDonald.

You DON'T want to try symlinking those device files around.

Just use the 'loadkeys' utility to change your Linux console's keymaps around to suit you tastes. You can start by reading the following man pages: loadkeys(1), keymaps(5), dumpkeys(1), and possibly showkey(1)

Then use 'dumpkeys' to dump a set of all the current key bindings. Edit that (delete all the stuff you don't want to change) and look for the section that looks something like this:

See attached `jimd.console-keymap-fragment-1.txt`

... and another section like:

See attached `jimd.console-keymap-fragment-2.txt`

Now simply change those to read:

See attached `jimd.console-keymap-fragment-otheralt.txt`

Notice that all I'm doing is changing the Console_13 to Console_1 etc. (at the end of each line that begins with the word keycode).

Then simply pass that through the loadkeys command. In fact you could take that last excerpt (as show between the " and " quotes above) save it to a file --- `/usr/local/etc/mykeymap.def` --- for example and add a line to your rc.local file to perform a simple:

`loadkeys < /usr/local/etc/mykeymap.def`

... command.

### how to create Imakefiles

Fri, 08 Nov 2002 16:10:27 +0530 (IST)
Karl-Heinz Herrman (the LG Answer Gang)
Question by Kirankumar Po (Kirankumar.Pv from geind.ge.com)

plz excuse me for asking questions without your permission ,

now my question is ...........

This group (answergang) is willing to answer questions related to the operating system linux, so if you ask a question according to this little help what to ask and how to ask it:

> `http://www.linuxgazette.com/tag/ask-the-gang.html`

you won't have to appologise for asking.

"can we delete a file of a particular version ?" if so how , if not what is the alternate for that

Now this question is somewhat... broad. Yes, certainly linux has a version management system, My preferred one is CVS. But unless you tell us what you use if you use one we will have trouble guessing what might be appropriate in your case.

`file name is test`

test 1.1---1.2--1.3----1.4---1.5

i want to delete version 1.3 what is the command for that and tell me the condition of 1.4

For cvs this would be the command "admin" with flag "-o" for outdate.

>     khh > cvs -H admin
>     Usage: cvs admin [options] files...
>           [.......]
>             -o range   Delete (outdate) specified range of revisions:
>                rev1::rev2  Between rev1 and rev2, excluding rev1 and rev2.
>                rev::       After rev on the same branch.
>                ::rev       Before rev on the same branch.
>                rev         Just rev.
>                rev1:rev2   Between rev1 and rev2, including rev1 and rev2.
>                rev:        rev and following revisions on the same branch.
>                :rev        rev and previous revisions on the same branch.

Information on a particular version would be told by cvs status or cvs log on the file with an additional "-r revnumber" if you really are interested only in that particular version.

### Even journalled filesystems need fsck sometimes

Mon, 18 Nov 2002 13:08:46 +0000 (GMT)
Thomas Adam (The LG Weekend Mechanic)
Question by Trev (tedlinux from inet.net.nz)

Hi, love your Mag, and your doing a great job here.

> [Thomas] I know I love the magazine too

My MDK 8.1, kernel 2.4.8.26-mdk system stops at

    running DevFs deamon
    invald operand:0000
    CPU:0
    EIP:   .........
    EFLAGS .........
    eax    .........
    asi    .........
    ds     .........
    Process devfs pid 123
    Stack: .........
    CallTrace: .....
    Code:
    (Lots of letters and numbers)

Is this a hardware problem ?

> [Thomas] Oh, it most certainly would suggest a hardware problem. As I am sure you are aware the "dev fs" sets up those hardware devices contained within "`/dev`" such as soundcard, etc.

i have no problems in SuSE or Win (SuSE and Win on hda, MDK and some vfat partitions on hdb) and i can mount MDKs partitions (in rescue) ok.

I've had problems when booting with devfs twice, the first time (some weeks ago) it put it back to the old dev system, 10 to 15 boots back, it put it back to the devfs system.

> [Thomas] I'm not certain but is the new way ("devfs") actually a kernel module rather than it being "built-in" to the kernel???

I tried rescue to rebuild devfs but not knowing/finding any commands (no man pages) i got nowhere, reiserfsck and e2fsck found no problems, i commented out pts from fstab but it made no difference. I tried booting with devfs=nomount but lilo would not recognize it, not in lilo i guess.

> [Thomas] hmmm...the script "`/dev/MAKEDEV`" does some things, but not what you're trying to do.

I had no luck with your DB or google.

Neither did I

Sorry for being slow getting back to you, only got it going late last night and read your email (and 450 others).

> [Thomas] Oh, that's ok. You actually read 450 consecutive e-mails? Gosh -- hope you haven't got eye-strain

I changed the "devfs=mount" to "devfs=nomount" in lilo.conf but it made no difference,

> [Thomas] Hmm, that would suggest that your filesystem type for the particular partition is abnormal in someway.

then out of desperation i tried reiserfsck again on `/` but this time i did reiserfsck --rebuild-tree and it fixed it , dmesg says "Mounted devfs on `/dev`".

> [Thomas] Ah.... that's interesting and something that Mandrake should have tested and/or implemented in both the kernel and their documentation. I'm sure there are other like you running MDK8.1 with the same problem/.

I'll see if devfs and reiserfs has an update for MDK 8.1.

> [Thomas] Unlikely -- you'll probably have to re-compile your kernel as a result. But it's not as hard as you might think....honest. Last I heard Eric Raymond was working on a graphical "maze" frontend for compilation!!! So much for the tcl/tk interface

> [ashwin] Linus rejected that for kernel 2.5. Instead, a Qt interface was chosen, so that's what will be in 2.6 (or it may even be called 3.0).

Thanks Thomas for your reply.

> [Thomas] As I said -- it's what we're here for Anytime. If you have any other problems, let us know!

> Gentle readers, it's also worth mentioning that journaled fs' will still be fsck'd when the volumes reach their maximum mount count. Journals make them robust, so a crash (which marks notmal filesystems "dirty", forcing fsck) simply results in a journal replay. So now we know one thing that can happen if the journal itself gets an ouchie. -- Heather

### Foxpro

Sun, 17 Nov 2002 20:43:29 -0800
Rick Moen (the LG Answer Gang)
Question by Deviyanti Setionegoro (devi_ys from yahoo.com)

My name is Deviyanti, I want to ask a question, I have a foxpro 2.6 under dos that runs on windows NT. Now I want to migrate from windows NT to linux Redhat 7.2. The question is will my application in foxpro 2.6 can run in Linux? If can, what are the additional software that I should install first, before I move my aplication in foxpro 2.6 to linux.

Something called "Recital Linux Developer" runs FoxPro 2.6 applications unchanged on Linux:

> > `http://www.recital.com/solutions_foxpro.htm`

Additionally, this question did sort of come up once before, a few years back, when Answer Gang founder Jim Dennis was The Answer Guy, all by his lonesome:

> > `http://www.linuxgazette.com/issue30/tag_database.html`

Some of that will no doubt still be relevant.

### unable to open an initial console

Fri, 08 Nov 2002 12:24:07 +0530 (IST)
Karl-Heinz Herrman (the LG Answer Gang)
Question by Lawrence O'Sullivan (lawrence.osullivan from 141.com)

Hi, I could sure use some help with this problem. I've followed the "Linux from Scratch" guides to building a Linux system. Their instructions and guides were very good, and everything seems to have compile correctly. Also, I have posted this question on their support mail, and received several suggestion but none helped. When I boot into the new Linux system, the process hangs and the last three lines displayed are:

    Freeing unused kernel memory: 140k freed
    Warning: unable to open an initial console
    Kernel Panic: Attempted to kill init

Entering this lfs root=/dev/hda9 init=/bin/sh in lilo still hangs.

> I'm pretty sure (since I had the same when I was first time switching from 2.2.x kernel to 2.4.x style) that the console driver is not in the kernel. my config seems to have that as "y" not as module.

See attached `k-h.kernel-dot-config-fragment.txt`

I'm not using devfs.

The inittab file appears correct, and was reviewed by the LFS folks.

The fstab file appears correct, and was reviewed by the LFS folks.

The configuration (.config) for the Kernel build appears to be correct. It was reviewed by the LFS folks and I compared it to the distribution that loads.

> Maybe or maybe not -- make sure the above mentioned character devices are there.

The new Linux system is on its own partition and the root and boot are on the same partition.

My original Linux distribution, which is on its own partition, still boots and can mount the partition with the new Linux system.

Any suggestion as to what else I can check or change would really help.

Thanks
Lawrence

### IP Masquerading: Red Hat 8.x Redoux

Mon, 18 Nov 2002 20:55:34 -0800
Jim Dennis (the LG Answer Guy)
Question by chhong (chhong from cisco.com)

I have a RedHat Linux 8.0 machine with kernal 2.4.18-14. One of the network card (Eth0 eg. 192.168.10.1) is connected to my private network (consisting of a FTP server and 2 pc). Another network card (Eth1 eg. 201.1.1.*) is connected to the internet. How do I make my FTP server accessible from other pcs in the internet and make pcs in my private network access the internet?

Thanks
Chris Hong

Well, I haven't played with Red Hat 8.0 yet. However, the key to your question lies in two steps. First you have to enable the kernel's packet forwarding feature. Manually this can be done via a command like:

> `echo 1 > /proc/sys/net/ipv4/ip_forward`

However, that would not persist beyond a reboot. Under Red Hat there is an `/etc/sysctl.conf` file which needs to have an entry like:

> `net.ipv4.ip_forward = 1`

This allows the kernel to route packets (from your internal network to the outside world).

However, that obviously won't do much good by itself. Packets from your network that "leaked" out to the Internet would be useless since no responses could get back to your RFC1918 non-routable addresses (192.168.*.*, 10.*.*.*, and 172.16.*.* through 172.31.*.*).

So, the other requisite step is to enable IP masquerading. Over the years the Linux IP packet filtering features haved changed radically with each major kernel release. So old versions of Linux used the 'ipfw', then the 'ipfwadm', and then the 'ipchains' commands to manage the kernel's packet filtering tables and configure its behavior. Red Hat version 8.0 uses a 2.4 kernel with the netfilter subsystem and the 'iptables' command to manage it.

>     modprobe iptable_nat
>     # In the NAT table (-t nat), Append a rule (-A) after routing
>     # (POSTROUTING) for all packets going out eth1 (-o eth1) which says to
>     # MASQUERADE the connection (-j MASQUERADE).
>     iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

> - Example slightly modified from http://www.netfilter.org/documentation/HOWTO//NAT-HOWTO-4.html#ss4.1

You may have to hunt around in the Red Hat `/etc/` directory tree to figure out the best place to put his command. I think they have an `/etc/rc.d/init.d/iptables` script which you can enable with their 'chkconfig' command. If you read that I think you'll find some file like `/etc/sysconfig/network-scripts/iptables.dat` or something like that. If I recall correctly from Red Hat 7.x, you could put just the arguments for this iptables command (from the -t to the end of the line) into that file.

The reason I'm tossing in so many qualifiers in this last paragraph is because I mostly use Debian and haven't actually installed or managed a Red Hat 8.0 system, yet. In addition some of the details change with every major release. The differences are minor --- easy to adapt to if you can read simple shell scripts.

There is probably also a way to do all of this using some GUI tool. However, I still avoid graphical system administration tools. I'm firmly of the opinion that the most important systems administration tool is your favorite text editor!

### Learning Red Hat 8.0

Tue, 26 Nov 2002 13:40:35 -0800
Heather Stern (Linux Gazette Technical Editor)
Question by James M. Haviland (jhavilan from attbi.com)

What is the best book to learn RH's 8.0? Or will the books I have on learning 5 or 6 and maybe 7 be good enough to learn the basics or anything except the fine points.

Stuff about the bash shell will be pretty much the same.

Learning how to use a text editor will be pretty much the same.

Chances are that in a modern one the screen may look a little different but it will likely be a little easier to read.

Anything showing screen shots walking you through the install will show pictures only good for that exact version. You can read the chapter anyway, as the basic steps of partitioning and answering network questions will still be asked, but the screens will look different.

Pretty much, you can follow along in an older book, and look at man pages or --help output from a program to catch up on some things that may be new. If you also connect to the internet and surf to the home pages of some software you are trying to learn, there may be discussion forums and more things to read there.

And of course there's the Linux Documentation Project (www.tldp.org)

Many of these things will be equally valid for red hat, or for other linux distributions.

I tried to use the e-mail program that came with it and I set it up wrong some how so that I couldn't send e-mails. I was able to use Mozzarella or Netscape's e-mail program.

You have to connect to an internet provider before you can read emails. Your system usually has to have an SMTP program (sendmail, or one of its competitors) in order to send emails.

Mozarella, yum. You probably meant "mozilla" - the browser's firebreathing dinosaur-like mascot.

Mozilla and netscape use the same code under the hood; they compose SMTP messages and transmissions directly, rather than needing a local server. Think of this as driving the mail up to the post office yourself all the time instead of leaving it at your door for the postman to pick up when he comes by every day for the mail.

Thank you for your time.

Jim

You're welcome.

### Q: man pages for poll_wait(), wait_event() and others

Mon, 4 Nov 2002 16:21:32 -0500 (EST)
Pradeep Padala (the LG Answer Gang)
Question by Vitaly Karasik (vkarasik from ndsisrael.com)

Are there any additional sources for manpages [we've checked kernel-doc package, http://kernelnewbies.org/documents, Kernel* HOWTO's and so on, but without success].

Linux source is the authoritative documentation for kernel functions. I guess you already know about http://lxr.linux.no. That's the right place to look for documentation

Apart from that Alessandro Rubini's book on device drivers has some information on this. Information regarding poll is here in that book:

> > `http://www.xml.com/ldd/chapter/book/ch05.html#t3`

This should give a fair idea of what needs to be done when poll on a device is done.

You can read the whole book online at:
  http://www.xml.com/ldd/chapter/book

Also try to follow any driver's code which implements 'select' or 'poll' for the device.

### is the md5 check always right?

Sun, 3 Nov 2002 18:23:17 +0000
Steve Kemp (skx from tardis.ed.ac.uk)
Question by Simon Pople (paupople from online.no)

I just downloaded 3 Mandrake CDs via FTP and read after doing that that I should have set the download mode to binary not ASCII. I didn't do that, but when I run MD5 on all the .iso files they are all fine....is it possible that even though the MD5 checksums are all matching, the files still aren't correct, or is MD5 an infallible test of the downloaded ISOs?

MD5 should be a good enough test of validity. It has got some weaknesses which have recently come to light, but it's extremely unlikely that you've come across three seperate examples.

It's probably the case that your FTP/download software switched to binary by itself, without you having to explicitly do it.

### Follow ups on mgp and mplayer

Sun, 17 Nov 2002 03:40:22 +0100
Robos (the LG Answer Gang)

Hi Folks

I did look into the mgp with embedded mplayer issue today again and got a little further: after looking into the man-page of xwininfo I found -name. If I call:

> `xwininfo -name MagicPoint`

(always the same I hope I get the win-id like this:

> `xwininfo -name MagicPoint |grep Window |awk '{print $4}' >/tmp/wid`

and then:

> `mplayer /home/robos/movies/play* -vo x11 -wid cat /tmp/wid=1BOB`

OK, I actually put the whole calls into a bash script since mgp makes some strange things if I call it from within mgp with %system. So, in the mgp text I do a

> `%system "/home/robos/mplayer.sh"`

and call the whole thing like this:

> `mgp mplayer.mgp -x vflib -U`

The -U is the important one: -U since forking is prohibited otherwise... This sorta works, but the display stays a little garbled afterwards (I put a %system "killall mplayer" on the next page) and in the page that displays the vid nothing else is shown (no text). But, I would say something to improve upon. If you use -o with mgp it doesn't go fullscreen and then the vid is also centered in my case (I use enlightenment btw).

OK
I'll toy a little more
Robos

### Net2Phone ipchains config

Mon, 18 Nov 2002 11:46:27 -0600
John Larmour (jlarmour from eds.com)

> In last issue ( LG 84) help wanted #3: http://www.linuxgazette.com/issue84/lg_mail.html#wanted/3 it was asked if Linux has net2phone support. -- Heather

I see that this request is a month or more old. Has this problem been solved?

> Many times, people do get their solutions, but don't pass them back along to us. So I cannot really say. -- Heather

I have a linux firewall (ipchains) at home, and run Net2Phone on a window98 box that goes through the firewall. If you are still having problems, I may be able to help with some of the settings.

Okay, I'm at home now and can check the settings. On the Net2Phone client, choose menu->preferences->network. Make note of the "doorman" URLs and port numbers (mine are call1.net2phone.com and call2.net2phone.com, both on port 6801). In the client box, choose a number for your ports (I use the same for both TCP and UDP). Valid numbers are greater than 1024 and less than 65000.

My firewall uses masquerading, and is not a proxy. I don't know what your setup is, so this may or may not work for you. In my previous message I said I use ipchains. Sorry, that shoud have been iptables. I got it set up a while ago, and really haven't touched it since.

Here are the variables I use in my script:

    ${ISP} is the network card connected to my ISP,
    ${LAN} is the network card connected to my home network.
    ${PHINIT}is the port used by the doorman (6801)
    ${PHCTL} and ${PHVCE} are the TCP and UDP port numbers I picked

Here are the iptables commands I added to my script to start my firewall:

    iptables -A INPUT -p udp -i ${ISP}-s call1.net2phone.com -m state
    --state != INVALID --source-port ${PHINIT} -j ACCEPT
    iptables -A INPUT -p udp -i ${ISP}-s call2.net2phone.com -m state
    --state != INVALID --source-port ${PHINIT} -j ACCEPT
    iptables -A INPUT -p udp -i ${ISP}--source-port ${PHVCE} -j ACCEPT
    iptables -A INPUT -p tcp -i ${ISP}--source-port ${PHCTL} -j ACCEPT

Hope this isn't too late to be helpful....

### Lost win95 data (and system) when loading linux

Sun, 17 Nov 2002 13:00:20 EST
mike, Heather Stern (the LG Answer Gang)
Question by JTHodgson (JTHodgson from aol.com)

Dear Answer gang - my problem is an inaccessible C: drive holding my win95 system and all my data - much of it not backed up, naturally .

Here is how I think it happened.

I started with a standard Win95 set up, with a 5G C: drive, a bootable 48x cd drive and a standard floppy a: drive.

I then added a 20G Western Digital secondary drive. This came with the Phoenix bios overlay ez-bios, which took control of both internal drives (despite the fact that c: was within the old bios limit).

With both drives running a single dos partition, the system ran without problems, until I tried to partition the d: drive to load linux (6.3 suse). Neither partition magic, nor fip would repartition the disk.

I then downloaded the latest data life guard (DLG) (=ez-bios) installation utility from the web, and used it to partition the d: drive. I also made a floppy win95 boot disk.

At this point the win95 system was operating correctly, but with a reduced disk size visible on d:.

I then started to load linux by booting from the cd. It ran through the initial screens without problem, but when it came to assigning the partition to mount the system, the second partition on d: was not visible. There was no escape route, so I powered off.

Now the system would not boot from c:.

Nor would it boot from the system disc in a:, or ,rather, when I did the c: drive was not accessible (nor the d: drive!).

I tried fdisk `/mbr`, and restoring the mbr "before installing ez bios" and " after installing ez-bios" (options in the downloaded DLG utility). The DLG utility also told me that the c: drive had a "non dos partition".

I assume that I have inadvertently created a linux partition on the c: drive.

How can I recover from this? Or is there some other explanation? Is this a

diy job, or should I consider a data recovery service (my marriage may be at stake here!).

Very grateful for any help you could give. I'm keen to join the penguins, but this is off-putting!

John Hodgson

> [mike] First off, can you boot into linux? If so check the data as follows

> > `mount the c: partition`

> type ls `/mnt` to see if a mount point has been setup by your distro

> if you see something like `/mnt/dos_c` do ls <this dir> to see if there are any files

> if there is no `/mnt/dos` etc directory do the following

>     mkdir /mnt/c
>     mount /dev/hda1 /mnt/c

> then type df to see what partitions are mounted

> then type ls `/mnt/c` to see if your files are still there

Thanks, Mike...

To avoid the possibility of further over-writing on the old C: drive, I used DemoLinux running from the CD drive. By default this loads the KDE desk top.

This showed two internal drive icons, but clicking on hda1 gave an error:

    "Unable to run the command specified.  The file or directory file:/mnt/hda1
    does not exist"

Moving to console mode:

ls /mnt gave the response

    cdrom  floppy  hdb1

Apparently the old C: drive is not being recognised

Mkdir `/mnt/c` gave error message

    Mkdir cannot create directory  '/mnt/c' : permission denied

While DemoLinux was loading I spotted a line that I think related to the old C: drive, giving it the following properties: win98 FAT-32 LBA-matched partition

> [Heather] Sorry to come a bit late to the game. Anyways it looks to me as if your initial diagnosis is correct - the partition table has gotten somehow mismatched with what is really on the drive.

> The Linux utility to deal with this problem is gpart - it will physically look at the bits on the drive, and guess a partition table for you. If your drive electronics do not agree with what your BIOS reads for cylinder/head/sector values, it might actually be wrong, but if you see something that looks like the layout you remember, it's probably right, and you can write the result into the MBR-tail with a commandline switch.

> (I say "tail" because strictly speaking the first 446 bytes are the boot loader and the 64 bits at the end are the partition table, and some techies refer to only the loader as the MBR, while others call the whole 512byte cluster this. But we digress.)

> The DOS analogue to solve this problem - bearing in mind that I've not had to use it for years, so I cannot vouch for the current edition one way or another... is Symantec's Norton Disk Doctor... NDD `/REBUILD.` As a few repartitioning utlities are on the market they might also have some sort of "reset to whatever the disk has on it" feature - possibly as a last-ditch rescue against their own failure modes. The same caveat against the BIOS mismatch problem applies. Also, if it isn't new enough a DOS tool may not recognize any linux bits you've managed to get on there.

> Anyways, I have used gpart recently myself and can assure you that it works. The real fun is getting a cd-boot or floppy-boot distro that has it in there. I don't recall if I used Knoppix, or if I host-mounted one of my laptop drives temporarily (so `/dev/hda` was a known good system). DemoLinux, if it has a copy of gpart on it, can help you solve that quite quickly, and if it doesn't have it, you may be able to fetch a binary of the program into your ramdisk.

> Pretty much, all the live-CD discs use a ramdisk or two.

### Good locations for sendmail howtos?

Tue, 26 Nov 2002 13:07:33 -0800
Heather Stern, John Karns (the LG Answer Gang)
Question by David (supersimian from hotmail.com)

Hey there Answer Gang,

You've helped me in the past, I'm hoping you can help me again.

I'm having diffuculties setting up sendmail and friends on a small home network. I can't seem to get mail to work between hosts. I feel fairly competent in linux in general, but this continues to baffle me.

I'm using RedHat 8.0 on two systems, my main desktop, and our firewall/dns/nat/etc box. My roommate is using WinXP. But basically, I'm looking for a good howto doc on setting up email between the gateway box and my desktop, so I can forward the root mail form the gateway to an arbitrary account on my desktop. Y'know, for getting alerts, logwatch info, etc.

And just to learn a bit more about the workings of email in general.

At present, I can't get ANY kind of email to move between the two boxes.

Mostly, I'm looking for a really good writeup on how to configure things to my liking. I mean, I don't want to have to buy a book on it, it's just for home use, but I want a good understanding.

If you people can point me towards a good resource, I'd really appreciate it.

> [John Karns] Well I suppose the best resource is the O'Reilly book on sendmail - but since you mentioned that you don't want to buy a book, I do recall stumbling across a helpful sendmail web site about 3 yrs ago. So a web search would probably turn up a few sources of info. There are also some fairly comprehensive FAQ's etc available...

> [Heather]

> 1. try the faq's and other helpful notes at sendmail.org, then the community forums at sendmail.net.
> 2. each of sendmail's major competitors also have websites; since some of their FAQs are in the form of "under sendmail I would... how do I do that in this mail transport?" then reading the documentation of all the major mailers should help considerably toward learning about email in general.
> 3. for your NT box to get mail from your linux server, either your linux server needs to run POP or IMAP daemons... or your NT system has to run an SMTP daemon and be listed as a MX for itself. The first one is much easier.

Thanks Heather, I'll have a look at these resources. Luckily, I've managed to muddle through a bit of it on my own, the mail is moving, just need to fine-tune things a bit. I now understand why the sendmail.cf file is so infamous

rewrite rules, UGH...

> [John Karns] Finally, I can provide a quick hint about (one method of) setting up mail between hosts. For my purposes I just added the host names in `/etc/mail/mailertable` in form of

> machine1.my.psuedo.dom smtp:machine1.my.psuedo.dom machine2.my.psuedo.dom smtp:machine2.my.psuedo.dom

> In the comments in that file:

...............

> > `# sendmail will look for all non-local email into this file to determine
> > # the transport way to the next host. the destination hostname is used
> > # to find an entry in this file.`

...............

> And from `/etc/mail/README:`

...............

> sendmail.cf supports some more external database files. The default configuration uses `/etc/aliases`, `/etc/mail/mailertable`, `/etc/mail/genericstable` and `/etc/mail/virtusertable.` These files are normal text files that are converted with "makemap" to the real database files (ending in .db).

> For all outgoing email, sendmail will use the destination hostname and look into `/etc/mail/mailertable` to see how this email should be transported to the next destination. Please read that file for some examples on email-routing.

...............

> Note 1: There is a Makefile in that dir to enable running 'make' after adding the host names to the text file. That will create the .db file which sendmail actually uses.

> Note 2: I'm not sure how much of this structure is from the generic sendmail and how much may be contributed by SuSE, but my gueess is that it is mostly generic. This seems to be born out by the above reference to sendmail.cf pointing to those files.

> Note 3: This setup works for me. I don't have a name server set up, just use a hosts file. YMMV.

### Will this modem even work? Let's ask the internet

Sun, 10 Nov 2002 14:15:06 -0800
Rick Moen (the LG Answer Gang)
Question by Helen & Ralph (ralphk from hauns.com)

can I use a zoom/modem usb model 3090 with redhat 7.2 ?

The best place to research USB-hardware support problems in Linux is http://www.linux-usb.org. You might want to make a note of that, for the future. Selecting "Working devices list" on the front page takes you the Overview page. From there, we select Devices, since we're looking up support for a particular hardware device, rather than any of the other information categories. We're now shown the dozen or so USB device categories, and pick "Comm: Communications devices (Modems)". This brings us to a long multipage list of modems by manufacturer. Moving through that to the Zs, eventually finding the line item for "Zoom Telephonics, Inc. 3090". Finally, selecting that item brings us to http://www.qbik.ch/usb/devices/showdev.php?id=660.

And it's bad news:

> Zoom sales claims this is "a winmodem and will not work with Linux". Shame.

There's more, but that about sums it up: This is undoubtedly a unit designed to achieve the lowest possible retail price by omitting key circuitry normally integral to all modems (the ROM or "controller" chip implementing required communications protocols, and/or the UART chip to control and buffer serial communications). The omitted functionality is then emulated in software by MS-Windows-only proprietary "engine' software.

If/when you go shopping for a better modem, you might want to consult Rob Clark's modem database, at http://www.idir.net/~gromitkc/winmodem.html.

> The real tip here, for newbies and old hands alike; we can no longer assume that being external or internal, or which interface a modem is plugged into, indicates whether it has an incomplete chipset and needs a booster shot from specialized driver software. Some manufacturers offer fully-capable internal modems, and some external ones are duds like this one. Use the net resources at http://www.linmodems.org, and if you decide to use a supported or partially supported winmodem, don't expect too much out of it when you have your system under a heavy CPU load. -- Heather

##### This page edited and maintained by the Editors of Linux Gazette
HTML script maintained by Heather Stern of Starshine Technical Services, http://www.starshine.org/
Copyright © 2002
Copying license http://www.linuxgazette.com/copying.html
Published in Issue 85 of Linux Gazette, December 2002