Best of Technical Support

Various

Issue #74, June 2000

Our experts answer your technical questions.

Route 675

I am setting up a DSL and my topology is simple: Linux box connects to hub, which connects to 675, which connects to the DSL carrier. I put a Win95 machine in parallel (it also connects to hub) and it connects fine to the DSL's DNS and the Linux machine. The Linux machine sees the Win95 machine and also the 675 router's IP. The Linux machine does not see beyond the router (the Cisco 675) to the DNS, nor can the Web connect to it, though it should be able to using static IPs. I think this is an issue with this router and Linux; in the documentation there is a note: “must have termcap database installed on Linux or Cisco 675 may not work correctly.” I do have termcap installed (I did a full SuSE install). Do I have to “run” termcap somehow, as an executable program, even though it is “installed”? (I tried to rpm the termcap.rpm and it said “already installed”.) Or is termcap already running automatically?

Cisco was kind enough to tell me they have a contract with USWest which precludes them from customer support for the 675. The quote in full from the Cisco manual: “Computers running Linux without the term/termcap database installed will have trouble connecting to Cisco equipment. The message BAD ADDRESS is sometimes displayed as an error message. The user can install the term/termcap database from his Linux install disks/CD.”--Scott Cameron, lscott11@uswest.net

It sounds as if your network setup on the Linux machine is missing a default router (or gateway) in the configuration. If you type route -n, you will see a list of the routing table that the kernel maintains. The default route is the one the kernel will choose for network packets in the event no other paths are possible to the destination. In addition to having a default route, you will also need to have DNS set up properly or you won't be able to resolve domain names into IP addresses, which is how network communication happens. Thus, if you can ping the IP address of your DSL router and no further, then it is likely you are missing a default route. If you have a default route defined (it should be the 675 router) and you are unable to ping a site such as www.linux.org, then DNS is probably not configured properly. About the termcap statement: termcap is a library that provides a database of the terminal capabilities of various terminal emulations. It is not required to use the 675 for networking purposes. However, if you need to access the embedded operating system on the router, you can telnet to it (or use a direct serial connection—I'm guessing because I have never seen a 675) and access its built-in features. This is where the termcap would be required, as it will use some type of terminal emulation for which your terminal will need to know the mappings for what the character sequences do. So, it is necessary only if you intend to log in to the router and change the settings. —Andy Bradford, andyb@calderasystems.com

Li Lo, Sweet Linux

I am new to Linux, just three issues into my first LJ subscription and have purchased several informative books. I've installed Linux on my C drive along with Windows 98. My Linux version is Red Hat 6.0. It loaded LILO to provide direction to Linux and W98. Now I wish to install DOS. One of your recent issues provided information on how LILO is to be modified, but not on how to access LILO or where it is located. Frankly, I am confused. On one recent attempt to load Linux, which I aborted, I discovered that LILO was not erased, even when I completely reformatted the Linux partition. So, how do I find the LILO program to change it so DOS can be included? —B.E. (Gene) Johnson, gene-bj075@msn.com

LILO is configured through the /etc/lilo.conf file. Actually, if you install Linux on a PC that already has Windows 98, you should first have enough space on your disk(s) to hold Linux. You need to defragment the Windows disk, then you may have to repartition it. There is a utility called FIPS on your Linux CD which allows repartitioning a disk without reformatting. Use with extreme care! You have to create one Windows partition (holding whatever you have on Windows now) and the rest of the disk; the second partition will be for Linux. Afterward, when the Linux installation procedure is running, you can partition the Linux area of the disk into the boot, root and swap partitions at a minimum to install and configure Linux correctly. When you reformatted the Linux partition, LILO appeared to you as not being erased, because what was left intact after reformatting is the disk's boot sector, which contains Linux's boot loader. To get rid of that, use the Windows (or MS-DOS) FDISK with /MBR as an argument, e.g., A:>FDISK /MBR. This will reinstall the normal WIN/DOS boot loader. —Felipe Barousse, fbarousse@piensa.com

The lilo boot code can reside in different places. It can be on your MBR (Master Boot Record), which is the most common configuration, or it can also be in the boot sector of some primary partition if it's flagged as active. To configure lilo, edit /etc/lilo.conf. On my machine, I can boot DOS with

other=/dev/sda1
        label=dos
        table=/dev/sda

After that, rerun lilo. To uninstall lilo, lilo -u /dev/device should do, or you can also type fdisk /mbr from a DOS boot floppy. In /usr/doc/lilo-0.21/ (or a similar directory), you should have a file called QuickInst. For many more details, it also has a README. —Marc Merlin, marc_bts@valinux.com

Warped Edges

I am new to Linux, so please don't laugh too loud at my question. I am using a 19-inch monitor, with a Stealth IIIs540 Diamond card. I have gotten Linux up, but I seem to be using the wrong screen resolution. It appears kind of bowed out at the edges. How can I change this? —Virgil Denny, freeagain@earthlink.net

If the text and window size look good to you, but just the edges are curvy, chances are you're running at the right resolution, but have some monitor or display attributes to change. Most monitors have controls at the bottom of the unit that allow you to change the width, height, color, angle, and even the convex and concave curves of your display. Try to use this to correct your problem first. If this doesn't resolve your problem, there is a program called xvidtune that allows you to adjust these qualities as well. If you do decide to play with xvidtune, make sure to click the auto button first. That will allow you to automatically see the changes you're making when you click various buttons. If you have indeed decided your resolution is not right, one of the most user friendly methods to changing your X (and other) configurations is XF86Setup. Get it installed if you don't have it already, you'll be glad you did. —Kara Pritchard, kara@linux.com

Driving Miss Printer

I need two drivers, one for a HP DeskJet 712C printer and one for a Umax Astra 1220P scanner. I do not understand why they are not supported by my distribution; this one is brand-new. Those drivers should be quite easy to install. I could not find them on any site, had no response from the newsgroups and do not know anybody who can help me. —Marc Nadeau, cerceaux@francimel.com

Something commonly confused by new Linux users is the difference between driver behavior in Linux and other operating systems. For your printer, either run control-panel and click on the printer tool, or run printtool directly (from Red Hat). You can then choose the driver for the series closest to yours (e.g., HP DeskJet 6xxC series) and your printer should work fine. To configure your scanner, visit http://www.mostang.com/sane/ . That is the web site for SANE, Scanner Access Now Easy. SANE is a universal scanner interface, and their supported scanners page lists multiple Umax Astra scanners that are supported. —Kara Pritchard, kara@linux.com

You've Got Mail

I have set up my Linux machine as a mail server using Sendmail. At this stage, it is just the mail server for the company network. All the other workstations are Windows machines using Outlook Express. I have set up the clients to use the Linux machine as their SMTP and POP3 server. When a user sends mail to another user, the message gets sent fine. Now, instead of the e-mail going to /var/spool/mail/John, for example, the e-mail goes to /var/spool/mail/root. When I read the e-mail in root's mail, it says both the sender and the receiver are named Unknown. I have set up user accounts successfully. How do I get the server to accept mail for each user and to recognize the users? My POP is working, as I am able to use telnet successfully with POP, but I cannot get POP-3 to work properly. When I type telnet localhost pop-3, it says:

Trying 127.0.0.1
Connected to localhost Escape character is ' ^ ] '.

then after about five seconds on its own, it says,

 ...Connection closed by foreign host...
Where does the Linux server store the user's mail? When a user tries to retrieve their mail, nothing is coming through. How do I configure the server to direct the mail to the user's local machine? —Mark Wainman, wainman@iafrica.com

A user's mail, after it has been received by Sendmail and (most of the time) processed through procmail, is stored in /var/spool/mail/userid where “userid” is the login user name. When retrieving mail with POP, mail is read from that location and transferred to the user's home directory, appending the message to the file mbox. POP actually reads the mail from mbox in the user's home directory. If your user's PCs are on a LAN, you must properly configure your e-mail clients (Outlook Express) to use SMTP for outgoing mails and POP for incoming ones. The user name and password must be correctly set up for remotely logging in to the Linux machine. Maybe it is worth mentioning that you need to have the POP service installed through the IMAP RPM on a Red Hat system. Also, it has to be enabled; that is, the POP-3 lines should not be commented out in /etc/services and /etc/inetd.conf. If this is correctly set, you should be able to retrieve mail from the server from the PCs. For Internet e-mail from the PCs through the server, Sendmail has to be correctly configured as well according to your external connection parameters. I think you may have a setup problem with your domains. The Linux box may not be able to find local users due to incorrect configuration of Sendmail, specifically in relation to localhostname and localdomain. Check the file /etc/sendmail.cw and put in the local domain name, for example “yourcompany.com”, and make sure the Linux machine is named after that, e.g., serverpc.yourcompany.com. —Felipe Barousse, fbarousse@piensa.com

resources