old-www/LDP/LG/issue49/lg_answer49.html

2218 lines
75 KiB
HTML

<!--startcut ==============================================-->
<!-- *** BEGIN HTML header *** -->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML><HEAD>
<title>The Answer Guy LG #49</title>
</HEAD>
<BODY BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#0000AF"
ALINK="#FF0000">
<!-- *** END HTML header *** -->
<!-- *** BEGIN navbar *** -->
<A HREF="index.html"><IMG ALT="[ Table of Contents ]"
SRC="../gx/indexnew.gif" WIDTH=163 HEIGHT=60 ALIGN=bottom ></A>
<A HREF="../index.html"><IMG ALT="[ Front Page ]"
SRC="../gx/homenew.gif" WIDTH=163 HEIGHT=60 ALIGN=bottom></A>
<A HREF="lg_bytes49.html"><IMG ALT="[ Prev ]" SRC="../gx/back2.gif" WIDTH=41 HEIGHT=60 ALIGN=bottom></A>
<A HREF="../faq/index.html"><IMG ALT="[ Linux Gazette FAQ ]"
SRC="./../gx/dennis/faq.gif"WIDTH=163 HEIGHT=60 ALIGN=bottom></A>
<A HREF="lg_tips49.html"><IMG ALT="[ Next ]" SRC="../gx/fwd.gif" WIDTH=41 HEIGHT=60 ALIGN=bottom ></A>
<!-- *** END navbar *** -->
<!--endcut ============================================================-->
<H4>
"Linux Gazette...<I>making Linux just a little more fun!</I>"
</H4>
<P> <HR> <P>
<!--===================================================================-->
<center>
<H1><A NAME="answer">
<img src="../gx/dennis/qbubble.gif" alt="(?)"
border="0" align="middle">
<font color="#B03060">The Answer Guy</font>
<img src="../gx/dennis/bbubble.gif" alt="(!)"
border="0" align="middle">
</A></H1>
<BR>
<H4>By James T. Dennis,
<a href="mailto:linux-questions-only@ssc.com">linux-questions-only@ssc.com</a><BR>
LinuxCare,
<A HREF="http://www.linuxcare.com/">http://www.linuxcare.com/</A>
</H4>
</center>
<!-- END header -->
<p><hr><p>
<!-- endcut ======================================================= -->
<H3>Contents:</H3>
<p><a href="#tag/greeting"
><img src="../gx/dennis/bbub.gif" alt="(!)" border="0"
align="middle"><strong>Greetings From Jim Dennis</strong></A></p>
<DL>
<!-- index_text begins -->
<dt><A HREF="#tag/1"
><img src="../gx/dennis/qbub.gif" height="28" width="50"
alt="(?)" border="0"
></a>How do I do it? --or--
<dd><A HREF="#tag/1"
><strong>
Installing to a 2nd HD
</strong></a>
<dt><A HREF="#tag/2"
><img src="../gx/dennis/qbub.gif" height="28" width="50"
alt="(?)" border="0"
></a>Sendmail Startup --or--
<dd><A HREF="#tag/2"
><strong>
Sendmail Takes a Long Startup Time
</strong></a>
<dt><A HREF="#tag/3"
><img src="../gx/dennis/qbub.gif" height="28" width="50"
alt="(?)" border="0"
></a>Telnet not working on recent RedHat/Mandrake --or--
<dd><A HREF="#tag/3"
><strong>
Incoming Telnet for and Mandrake Users
</strong></a>
<dt><A HREF="#tag/4"
><img src="../gx/dennis/qbub.gif" height="28" width="50"
alt="(?)" border="0"
></a>Only see 16M of 64M in Compaq Prosignia 300 --or--
<dd><A HREF="#tag/4"
><strong>
Linux only see 16 of 64 Mb of RAM
</strong></a>
<dt><A HREF="#tag/5"
><img src="../gx/dennis/qbub.gif" height="28" width="50"
alt="(?)" border="0"
></a>NT 4.O Wkst + SP5 no dialup to RedHat 6.0/internet --or--
<dd><A HREF="#tag/5"
><strong>
No Dialup to Internet from NT 4.0(sp5) through 6.0
</strong></a>
<dt><A HREF="#tag/6"
><img src="../gx/dennis/qbub.gif" height="28" width="50"
alt="(?)" border="0"
></a>linux ether16 support --or--
<dd><A HREF="#tag/6"
><strong>
Can't See Ethernet Card
</strong></a>
<dt><A HREF="#tag/7"
><img src="../gx/dennis/qbub.gif" height="28" width="50"
alt="(?)" border="0"
></a>(No Subject) --or--
<dd><A HREF="#tag/7"
><strong>
Disk Druid UI Failure? USE fdisk!
</strong></a>
<dt><A HREF="#tag/8"
><img src="../gx/dennis/qbub.gif" height="28" width="50"
alt="(?)" border="0"
></a>Driver for Savage 4 pro --or--
<dd><A HREF="#tag/8"
><strong>
Savage 4 Pro
</strong></a>
<dt><A HREF="#tag/9"
><img src="../gx/dennis/qbub.gif" height="28" width="50"
alt="(?)" border="0"
></a>Recover password for SUN sparcstation --or--
<dd><A HREF="#tag/9"
><strong>
Root Password Recovery on non-Linux UNIX Systems
</strong></a>
<dt><A HREF="#tag/10"
><img src="../gx/dennis/qbub.gif" height="28" width="50"
alt="(?)" border="0"
></a>Windows 95 Connectivity --or--
<dd><A HREF="#tag/10"
><strong>
Needs Samba Configuration Advice
</strong></a>
<br>
I am new to Linux and I am attempting to setup the following system.
<dt><A HREF="#tag/11"
><img src="../gx/dennis/qbub.gif" height="28" width="50"
alt="(?)" border="0"
></a>HELP! --or--
<dd><A HREF="#tag/11"
><strong>
Lost CMOS Password
</strong></a>
<dt><A HREF="#tag/12"
><img src="../gx/dennis/qbub.gif" height="28" width="50"
alt="(?)" border="0"
></a>Lilo Woes --or--
<dd><A HREF="#tag/12"
><strong>
More Problems with LILO
</strong></a>
<dt><A HREF="#tag/13"
><img src="../gx/dennis/qbub.gif" height="28" width="50"
alt="(?)" border="0"
><strong>
xftp: (Proxy or "Third Party" FTP Requests
</strong></a>
<dt><A HREF="#tag/14"
><img src="../gx/dennis/qbub.gif" height="28" width="50"
alt="(?)" border="0"
></a>Do you know where the include files are? --or--
<dd><A HREF="#tag/14"
><strong>
Which RPM Provides A Given Set of Files?
</strong></a>
<dt><A HREF="#tag/15"
><img src="../gx/dennis/qbub.gif" height="28" width="50"
alt="(?)" border="0"
></a>issue 46; networking docs --or--
<dd><A HREF="#tag/15"
><strong>
Advanced Routing in the Linux Kernel
</strong></a>
<dt><A HREF="#tag/16"
><img src="../gx/dennis/qbub.gif" height="28" width="50"
alt="(?)" border="0"
></a>Try & Buy wrapper technology for Linux apps --or--
<dd><A HREF="#tag/16"
><strong>
Try &amp; Buy Wrapper Technology for Commercial Linux apps
</strong></a>
<!-- index_text ends -->
</DL>
<!-- .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~. -->
<A NAME="tag/greeting"><HR WIDTH="75%" ALIGN="center"></A>
<H3 align="left"><img src="../gx/dennis/bbubble.gif"
height="50" width="60" alt="(!) " border="0"
>Greetings from Jim Dennis</H3>
<!-- begin greeting -->
<BLOCKQUOTE><EM>
[Jim has the flu this month so he was unable to write his usual
electrifying blurb. Get well soon, Jim. Also, The Answer Guy column
is all one file this month because there was an upload corruption in
the .tgz file, and I was unable to obtain a replacement by press time.
-Ed.]
</EM></BLOCKQUOTE>
<!-- end greeting -->
<!-- .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~. -->
<A NAME="tag/1"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 1 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif"
height="50" width="60" alt="(?) " border="0"
>Installing to a 2nd HD</H3>
<p><strong>From Eric Lindbloom on Wed, 01 Dec 1999
</strong></p>
<!-- ::
Installing to a 2nd HD
~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
How do I install Linux on a second hard drive? I have the hard
drive installed but have no idea how to access it and install the
Linux os. Any ideas?
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
Exact details of any Linux installation procedures
depend quite a bit on which distribution and version you are
using.
</BLOCKQUOTE>
<BLOCKQUOTE>
The basic installation process which is common to all PC
based Linux distributions is:
</BLOCKQUOTE>
<BLOCKQUOTE><BlockQuote><ol>
<li>Boot
<li>Detect/Select Installation Source
(Device/Medium/Method)
<li>Create/Select Target Devices/Partitions
<li>Make Filesystems &amp; Choose Layout
<li>Select and Install (Unpack/Extract) Packages
<li>Configure Packages
<li>Write Boot Record (Make New OS Bootable)
<li>Reboot
<li>Have Fun!
</ol></BLOCKQUOTE>
<BLOCKQUOTE>
Generally you boot PCs from floppy or CD-ROM. Some PCs and
most other systems can be booted from network servers
(usually using a bootp/tftpd combination). However, I'll
assume that you will just be booting from diskette or disc.
</BLOCKQUOTE>
<BLOCKQUOTE>
It's also possible to "boot" Linux from an MS-DOS prompt.
You do that using a program called LOADLIN.EXE (often called
by a batch file named LINUX.BAT or even SETUP.BAT or
INSTALL.BAT). This works from a DOS prompt because MS-DOS
is more of a "program loader" than an "operating system."
(Windows '9x might be considered to be a "re-hosted OS"
which is (transparently) loaded through MS-DOS, much as
Netware used to be). In any event, you might be able to
start your Linux installation by simply inserting a
CD in the drive and running a batch file.
</BLOCKQUOTE>
<BLOCKQUOTE>
Every Linux distribution has its own installation processs.
These range from shell scripts, through elaborate GUIs.
Most use fairly similar color/text dialogs (ncurses) which
allow you to "fill in the blanks" and tab around to little
checkboxes and "radio buttons" (which are selected using
the space bar). This interface seems "intuitive" to people
who've used MS-DOS or learned to drive MS-Windows programs
with their keyboards.
</BLOCKQUOTE>
<BLOCKQUOTE>
I've found that Mac and SGI Irix users with no PC experience
do NOT find the "text dialog" interface to be intuitive ---
since the mouse typically doesn't work at this point. (The
best bet for them is to use one of the recent <A HREF="http://www.caldera.com/">Caldera</A>,
Corel, or Storm Linux distributions. Those newer
distributions can be installed using a "GUI boot-to-grave"
interface. Or they could learn how to handle keyboard
driven text mode dialogs. Meanwhile the authors of these
programs could provide more interactive and context
sensitive help to explains these assumptions to new users).
</BLOCKQUOTE>
<BLOCKQUOTE>
After the boot is complete the installation routine will
usually attempt to detect any hardware that's not
detected by the kernel. Many distributions will also
provide prompts/options to allow you to specify more
information about your hardware (possibly offering to allow
you to load kernel modules which may be needed to detect and
support some of your additional hardware).
</BLOCKQUOTE>
<BLOCKQUOTE>
This can be important if your secondary hard drive is on
some interface isn't linked directly into your
distribution's kernel. For example, if you have your
primary drive on an IDE controller and your second drive is
attached to a SCSI host adapter or one of these Promise
Ultra66 specialty IDE controllers then you may need to load
an additional module through your distribution's
installation interface. It's also possible that you might
need to provide the kernel with some additional command line
arguments to help it detect some device or controller that
is in a non-standard location (assigned to unusual I/O or
other addresses).
</BLOCKQUOTE>
<BLOCKQUOTE>
In the worst case you might have to build or download a
custom kernel. If you already have Linux installed on
another machine (at home or work), or if you have a friend
who can build a new kernel for you, that can help with some
of the more exotic hardware configurations that you might
encounter.
</BLOCKQUOTE>
<BLOCKQUOTE>
Once the drive controller is recognized then you should be
able to select that drive through your distribution's
partitioning interface (step 3 above). If you don't see
any option to do this, you can try to go to a shell prompt
(try hitting [Alt]+[F2] then [Alt]+[F3] and so on until you
see a screen with a # (hash) prompt). You can try various
shell commands at that prompt. You might try the
'fdisk -l' command from there. This might give a list of
all recognized drives --- or it might not (some
distributions don't populate enough of a <TT>/dev</TT> directory in
this mini-root RAM disk to allow the fdisk command to find
your hard drives --- they "work magic" to get their fdisk to
see the necessary drives).
</BLOCKQUOTE>
<BLOCKQUOTE>
I realize this is confusing. It all depends on which
distribution you're using. As I say, with most of them all
you have to do is read the screens and menus carefully. If
it prompts you for fdisk parameters try <TT>/dev/hdb</TT> (the
typical name for a secondary IDE disk drive), then <TT>/dev/hdc</TT>
(primary drive on your secondary controller; sometimes a
third drive or sometimes a second drive).
</BLOCKQUOTE>
<BLOCKQUOTE>
I should mention the normal Linux device naming conventions:
</BLOCKQUOTE>
<blockquote><pre> Primary IDE Controller:
(Master) Drive: /dev/hda
(Slave) Drive: /dev/hdb
Secondary IDE Controller:
(Master) Drive: /dev/hdc
(Slave) Drive: /dev/hdd
Tertiary IDE Controller:
(Master) Drive: /dev/hde
(Slave) Drive: /dev/hdf
</pre></blockquote>
<BLOCKQUOTE>
... NOTE: Any of these: hdb, hdc, hcd, etc
might be CD ROM drives, or LS-120 or other
IDE block media. Any letters may refer
to empty "slots" (cable connectors).
</BLOCKQUOTE>
<blockquote><pre> First IDE Tape Drive: /dev/ht0
SCSI Host Adapters:
First Hard Drive: /dev/sda
Second Hard Drive: /dev/sdb
Third Hard Drive: /dev/sdc
First CD Drive: /dev/scd0
Second CD Drive: /dev/scd1
First Tape Drive: /dev/st0
Second Tape Drive: /dev/st1
First "Generic Device": /dev/sg0
Second "Generic Device": /dev/sg1
</pre></blockquote>
<BLOCKQUOTE>
... etc
</BLOCKQUOTE>
<BLOCKQUOTE>
... NOTE: These are from the first detected
SCSI adapter through the last. "Generic Devices"
include the CDR recorder mechanisms (though the
use of these as CD-ROM readers still goes through
the scdX name/driver). (CDR drives are associated
with scdX and different sgX names (device nodes)).
</BLOCKQUOTE>
<BLOCKQUOTE>
... Note the differences here. IDE drives are assigned
names based on the controller/channel and the device.
IDE CD-ROM drive names are indistinguishable from HD drives.
For SCSI the drives are detected (enumerated) on each
chain (host adapter) in order from lowest SCSI ID to
highest. SCSI CD-ROM drives are give distinct names from
the hard drives and other SCSI devices.
</BLOCKQUOTE>
<BLOCKQUOTE>
As you can see, the answer to your question also depends
quite a bit on your hardware. If you have a typical IDE
based PC with a hard drive on <TT>/dev/hda</TT> and a CD-ROM on
<TT>/dev/hdc</TT> then your second hard drive migh be <TT>/dev/hdb</TT> or
<TT>/dev/hdd.</TT> You might have reconfigured your CD-ROM drive
(making it <TT>/dev/hdd</TT> or even <TT>/dev/hdb</TT>) leaving your new hard
drive on <TT>/dev/hdc</TT>).
</BLOCKQUOTE>
<BLOCKQUOTE>
If this message (and the docs and help screens for your
distribution) don't clarify the issue enough for you,
then send another message with the following details:
</BLOCKQUOTE>
<BLOCKQUOTE><BlockQuote>
Distribution and version
Primary HD and OS
Second HD (controller type, and "position" or ID)
Output of fdisk -l (if possible)
</BlockQuote></BLOCKQUOTE>
<BLOCKQUOTE>
Remember to look through the comp.linux.* newsgroups and
copy/post further queries to ONE of them (read first, then
choose carefully). There are lots of answer guys on those
newsgroups.
</BLOCKQUOTE>
<BLOCKQUOTE>
Once you get some Linux partitions on your drive,
then your distribution's installation should be able
to make filesystems on them and install your software
without too much trouble.
</BLOCKQUOTE>
<BLOCKQUOTE>
Finally, when it comes time to make your new OS bootable
(step 7 from my list above) you have to consider some
extra issues. Most PCs can only boot from the first and
second drives on the primary controller. Thus you usually
can't boot from <TT>/dev/hdc</TT> or <TT>/dev/hdd</TT> (they are on a
secondary controller/channel) and you usually can't boot
from any SCSI drive in a system with an IDE drive in
the <TT>/dev/hda</TT> slot.
</BLOCKQUOTE>
<BLOCKQUOTE>
All of this depends completely on your BIOS. The BIOS must
be able to find your device, partitions, boot loader/code
and kernel in order for LILO (the most widely use Linux boot
loader) to work. I've described LILO in many previous
issues; and I've described a couple of alternatives to it on
a number of occasions.
</BLOCKQUOTE>
<BLOCKQUOTE>
You can use LOADLIN.EXE (if you have DOS or Win '9x
partition). You might have to boot into "safe mode" in
order for LOADLIN.EXE to work. You can create a boot floppy
(with just a kernel or with a boot loader and a kernel on
it). If you use a boot floppy, use SYSLINUX (a floppy
boot loader that works on MS-DOS formatted floppies but
boots Linux kernels).
</BLOCKQUOTE>
<BLOCKQUOTE>
There are many ways to boot Linux. Fundamentally a Linux
kernel doesn't "care" how it got loaded. Once you get the
kernel into memory and jump into its entry code then
the kernel can find any filesystem on any partition on any
device that's linked into it. The kernel will have a
default location to search for a root filesystem (and any
Linux boot loader, like LILO, LOADLIN.EXE, or SYSLINUX will
let you pass kernel parameters to over-ride that default and
name the root fs directly.
</BLOCKQUOTE>
<BLOCKQUOTE>
Once a root fs is mounted, then the Linux kernel will
search for a <TT>/dev/console</TT> device and a <TT>/sbin/init</TT> program,
opening the one and executing the other. From there
everything else will follow (read your <TT>/etc/inittab</TT> and
each script that to which it refers for the gory details).
</BLOCKQUOTE>
<BLOCKQUOTE>
There are some other tricky bits about "initial RAM disks"
(initrd) and "linuxrc" programs/scripts that might get
involved in some installations. Most modern distributions
will handle those details for you if they need them. I
won't cover them here. However, I will leave you with
a last summary of how a PC boots Linux:
</BLOCKQUOTE>
<BLOCKQUOTE><ul><li>
<li>BIOS finds boot loader
<li>boot loader finds kernel (and maybe initrd) and loads them
<li>kernel is a compressed image with a small decompression routine for a header, it extracts itself to memory
<li>kernel initializes processor and memory (protected mode)
<li>(sets up ring buffer for dmesg and klogd)
<li>kernel parses its command line options
<li>(kernel might load initrd at this point, depending on kernel parms and boot loader).
<li>kernel probes system and detects local hardware
<li>if serial console support is enabled, serial port is initialized according to compiled settings and/or command line options
<li>if not serial then video hardware initialized (text or framebuffer modes). Initial video mode may be from compiled default or command line.
<li>if framebuffer, display boot logo
<li>if initrd support then kernel creates initial RAM disk
<li>if initrd, mount ramdisk on root, look for linuxrc and execute it
<li>(after or instead of linuxrc) mount rootfs
<li>open initial console device
<li>remaining kernel command line options of the form FOO=BAR are put into environment.
<li>find and execute init program (possibly using the init= command line option to over-ride) ... any remaining command line arguments are passed to init.
<li>init locates and opens <TT>/etc/inittab</TT>, parses its command line and environment to set the runlevel and follows directives that apply to its runlevel.
<li>inittab starts update (or bdflush or ???) runs rc.sysinit, etc, runs rc &lt;runlevel&gt; (which, in turn runs <TT>/etc/rc.d/rcX.d/K*</TT> and S*),
<EM> rc</EM>.d/S* scripts start up various daemons and initialized interfaces, etc.
<li>init spawns a number of getty processes and (possibly) an xdm (graphical login) program.
<li>init continues to monitor processes on its respawn list, adopt orphan processes, reap its own zombie children (adopted or otherwise) and process signals and commands from the <TT>/dev/initctl</TT> pipe.
</ul></blockquote>
<BLOCKQUOTE>
... That's basically it. This last step continues until
a shutdown command sends init a command to shut down and
either reboot or halt. Obviously a hardware failure,
reset switch or power outage can interrupt the process at
any time.
</BLOCKQUOTE>
<BLOCKQUOTE>
I'm not sure of the exact order for some these steps. I'm
still a bit unclear on exactly where the initrd is loaded
(I've read that it's done by the boot loader, but I've seen
boot parameter options that suggest that it might sometimes
be done by the kernel).
</BLOCKQUOTE>
<BLOCKQUOTE>
The reason I give this list is to help people do their
boot time (and installation) troubleshooting. When you
understand the general sequence listed here, and you
read the <TT>/etc/inittab</TT> and the various rc* files (and any
man pages for the daemons and configuration utilities that
these invoke) then you should be able to troubleshoot almost
any boot time problem.
</BLOCKQUOTE>
</BLOCKQUOTE>
<!-- sig -->
<!-- end 1 -->
<!-- .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~. -->
<A NAME="tag/2"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 2 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif"
height="50" width="60" alt="(?) " border="0"
>Sendmail Takes a Long Startup Time</H3>
<p><strong>From Rich Hayden on Sun, 05 Dec 1999
</strong></p>
<!-- ::
Sendmail Takes a Long Startup Time
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Hi,
</STRONG></P>
<P><STRONG>
I was wondering why the "sendmail" app takes so long to configure itself
during startup. I am using Ret Hat 6.1 (Cartman).
</STRONG></P>
<P><STRONG>
Any info you have would be greatly appreciated..
</STRONG></P>
<P><STRONG>
Thanks,
Richard C Hayden
Natex Communcations
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
The delay is usually caused by loading sendmail
while you're not connected to the net. It's
trying to perform a reverse name lookup and
you have no nameserver handy.
</BLOCKQUOTE>
<BLOCKQUOTE>
There are various ways around this. One is
to remove the sendmail script's symlink from
<TT>/etc/rc3.d</TT> and configure your <TT>/etc/ppp/ip-up</TT>
and <TT>/etc/ip-down</TT> scripts to start and stop
your sendmail daemon as your PPP link comes
up and goes down. Another trick that helps
is to put an IP address with your hostname
into your <TT>/etc/hosts</TT> file.
</BLOCKQUOTE>
<BLOCKQUOTE>
If you have one or more ethernet addresses in addition to
some intermittent connection to the Internet (and its
nameservers) you can add <TT>/etc/hosts</TT> entries for each of
them.
</BLOCKQUOTE>
<BLOCKQUOTE>
You may need to modify your <TT>/etc/nsswitch.conf</TT> (or
<TT>/etc/hosts.conf</TT> for older libc5 based distributions/
installations). Be sure to lists "files" before
"dns" on the hosts line, and you probably want to
remove all references to nis and nisplus in
the nsswitch.conf files or rearrange the service/module
names on each line so that nis and nisplus come
last and are preceded by "[notfound=return]" entries.
</BLOCKQUOTE>
<BLOCKQUOTE>
(You probaby aren't using NIS or NIS+ for name
services or account management; you'd almost certainly
know if you were). <A HREF="http://www.redhat.com/">Red Hat</A>'s <TT>/etc/nsswitch.conf</TT> is
configured all wrong for 90% of the users out there;
though the errors just slows things down rather than
actually causing failures.
</BLOCKQUOTE>
<BLOCKQUOTE>
Yet another thing you could do is run a nameserver
on your system. There are some experimental nameserver
daemons that are designed for use on systems with
intermittent connections.
</BLOCKQUOTE>
<BLOCKQUOTE>
Unfortunately Linux (and UNIX in general) is still
not well configured for intermittent connectivity.
It can be done, but the defaults in all major
distributions aren't suited to it. I used to use
UUCP before I had a full-time DSL connection. This
was a good way to queue up mail for scheduled/deferred
delivery. However, finding UUCP neighbors has become
difficult, and setting it up was never easy.
</BLOCKQUOTE>
<BLOCKQUOTE>
I don't have an example of it, but the preferred
configuration of sendmail/named for intermittently
connected hosts would be to have split DNS (your
system's <TT>/etc/resolv.conf</TT> points at your own
nameserver, which claims to be authoritative to the
work but acts as a "slave" to outside domains), and
has sendmail configured to "Hold Expensive" and then
has an ip-up script that does queue runs to
actually deliver the queued up mail.
</BLOCKQUOTE>
<BLOCKQUOTE>
Linux also supports dummy networks and reject routes
which allow you to quickly "deny" traffic when the
connection is down (your scripts lose these while the
link is up).
</BLOCKQUOTE>
<BLOCKQUOTE>
As I say, I don't have some working configuration
samples handy. Perhaps another reader will
come through with a whole mini-HOWTO or a URL.
</BLOCKQUOTE>
</BLOCKQUOTE>
<!-- sig -->
<!-- end 2 -->
<!-- .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~. -->
<A NAME="tag/3"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 3 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif"
height="50" width="60" alt="(?) " border="0"
>Incoming Telnet for and Mandrake Users</H3>
<p><strong>From R. Smith on Sun, 05 Dec 1999
</strong></p>
<!-- ::
Incoming Telnet for <A HREF="http://www.redhat.com/">Red Hat</A> and Mandrake Users
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Sir,
</STRONG></P>
<P><STRONG>
I've seen a spurt of letters in "The Answer Guy" and elsewhere about
telnet not working with recent versions of RedHat and Mandrake. I would
like to point out that the rpm packages have been split into two, one
for the telnet client and one for the server. When I installed Mandrake
6.1 the client package was installed but the server package wasn't. I
guess this was done to improve security. When someone has problems with
telneting into a 6.x RH/Mandrake linux box, they should make sure the
server package is installed! I also would like to point out that you
cannot telnet into a stock RedHat/Mandrake box as root.
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
Good point. The telnetd (daemon/server) package is rightly
separated from the telnet client. This is also true
of <A HREF="http://www.debian.org/">Debian</A>.
</BLOCKQUOTE>
<BLOCKQUOTE>
Actually I still have to suggest that people consider
telnetd to be a deprecated service. Use ssh, STEL,
ssltelnet, SRP or any service with strongly encrypted,
authentication in lieu of it (or use <A HREF="http://www.xs4all.nl/~freeswan/">FreeS/WAN</A> IPSec
underneath it).
</BLOCKQUOTE>
</BLOCKQUOTE>
<!-- sig -->
<!-- end 3 -->
<!-- .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~. -->
<A NAME="tag/4"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 4 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif"
height="50" width="60" alt="(?) " border="0"
>Linux only see 16 of 64 Mb of RAM</H3>
<p><strong>From Eric Yihching Tao on Sun, 05 Dec 1999
</strong></p>
<!-- ::
Linux only see 16 of 64 Mb of RAM
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Windows 2000 sees all 64M and runs fine, but linux only sees 16M and runs
horrorably slow, please help!
</STRONG></P>
<P><STRONG>
Eric
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
What version of the kernel are you running?
</BLOCKQUOTE>
<BLOCKQUOTE>
What if you try adding the mem=64M to your
kernel command line? (type that manually
at the LILO prompt). If that works, then add a
directive like:
</BLOCKQUOTE>
<BLOCKQUOTE><BlockQuote><Code>
append="mem=64M"
</Code></BlockQuote></BLOCKQUOTE>
<BLOCKQUOTE>
... to the appropriate "stanzas" of your
<TT>/etc/lilo.conf</TT> (using a text editor, read the
lilo.conf man page for details). You can put
this line right after each of your "image="
directives).
</BLOCKQUOTE>
<BLOCKQUOTE>
This does sound very suspicious since Linux has
always been pretty reliable at auto-detecting RAM
upto about 64M. Newer (2.2 kernels and later)
are pretty reliable at detecting memory above 64M.
So I would expect that their is something else weird
here. However, you don't say anything about what version
of Linux you're running, or how you are see what memory is
in use. What does the exact output of your 'free' command
look like?
</BLOCKQUOTE>
</BLOCKQUOTE>
<!-- sig -->
<!-- end 4 -->
<!-- .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~. -->
<A NAME="tag/17"><HR WIDTH="40%" ALIGN="center"></A>
<!-- begin 17 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif"
height="50" width="60" alt="(?) " border="0"
>Only see 16M of 64M in Compaq Prosignia 300</H3>
<p><strong>From Eric Yihching Tao on Mon, 6 Dec 1999
</strong></p>
<BLOCKQUOTE>
Thanks. You solved the problem for me, it works!
</BLOCKQUOTE>
<BLOCKQUOTE>
I inserted the line like you said
and run
</BLOCKQUOTE>
<BLOCKQUOTE><BLOCKQUOTE><CODE>
lilo -C <TT>/etc/lilo.conf</TT>
</CODE></BLOCKQUOTE></BLOCKQUOTE>
<BLOCKQUOTE>
and reboot the system. It works great!
</BLOCKQUOTE>
<!-- end 17 -->
<!-- .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~. -->
<A NAME="tag/5"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 5 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif"
height="50" width="60" alt="(?) " border="0"
>No Dialup to Internet from NT 4.0(sp5) through 6.0</H3>
<p><strong>From JCCSystems on Sun, 05 Dec 1999
</strong></p>
<!-- ::
No Dialup to Internet from NT 4.0(sp5) through <A HREF="http://www.redhat.com/">Red Hat</A> 6.0
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Hi,
Odd problem here:
</STRONG></P>
<P><STRONG><BlockQuote>
NT 4.0 workstation + SP5 will logon to a new Linux RedHat 6.0 ISP server
via modem dialup.
</BlockQuote></STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
I assume you're saying that you can establish a PPP
connection to your RH6 remote access server from your
NT client/workstation.
</BLOCKQUOTE>
<P><STRONG><IMG SRC="../gx/dennis/qbub.gif" ALT="(?)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
You can ping the server, but the Linux server will not register the NT
4.0 client on the internet.
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
I don't know what this means. Register with what service?
Are you saying that you can't route packets through the
RH/Linux system to it?
</BLOCKQUOTE>
<P><STRONG><IMG SRC="../gx/dennis/qbub.gif" ALT="(?)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
The server is also hosting a domain for the client.
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
I presume you mean either that it is acting as a nameserver,
a web server or both. That is to say, the Linux system
is hosting some services for a domain.
</BLOCKQUOTE>
<P><STRONG><IMG SRC="../gx/dennis/qbub.gif" ALT="(?)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
The Linux server will work well with a NT Workstation with SP3
installed. The account itself is fine with Win9x. dialup.
</STRONG></P>
<P><STRONG>
The NT 4.0 box is fine with any web server tried, EXCEPT the Linux
RedHat 6.0 with the hosted domain.
</STRONG></P>
<P><STRONG>
TCP/ip is reinstalled dialup checked etc in the NT 4.0 client
Service Pak 5 issue in NT 4.0?
We are reluctant to reload NT 4.0 as the client has a large and complex
batch of financial software.
</STRONG></P>
<P><STRONG>
Any ideas would be a help. This makes no sense to us other than it seems
to be a TCP/IP issue.
</STRONG></P>
<P><STRONG>
Cordially,
WDavis
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
Your question makes no sense. Let me try to get the gist of
it:
</BLOCKQUOTE>
<BLOCKQUOTE><BlockQuote>
You have a Linux system with some sort of access to the
Internet <EM>and</EM> a modem that's configured to allow
dial-in.
</BlockQuote></BLOCKQUOTE>
<BLOCKQUOTE>
What software is providing your dial-in on the Linux box?
(Usually that would be a package called mgetty). How
is that configured? (mgetty.config, <TT>/etc/login.config</TT>, or
<TT>/etc/mgetty+sendfax/login.config</TT> or something like that).
</BLOCKQUOTE>
<BLOCKQUOTE>
(Don't scramble to debug your mgetty configuration. That
sounds like it's working O.K. as is).
</BLOCKQUOTE>
<BLOCKQUOTE>
(Information about mgetty can be found at:
<A HREF="http://alpha.greenie.net/mgetty"
>http://alpha.greenie.net/mgetty</A>)
</BLOCKQUOTE>
<BLOCKQUOTE>
How are your authenticating? Are you using AutoPPP
(trying to use the Win '9x default ISP/RAS connection
features)?
</BLOCKQUOTE>
<BLOCKQUOTE>
This is a fairly complex question. The traditional way
for a client to log in to any dial-up server was through
a simple text "chat script", which is the way that
most Linux systems still act at PPP clients. PPP also
allows PAP and CHAP authentication techniques. It's
actually possible to use all three authentication methods
for every single PPP connection (the user has to supply
a username, a password, and their PPP daemon as to supply
PAP and CHAP credentials). That would be silly, but it's
possible. All of that is used for normal Linux/UNIX
PPP connections and with any other OS.
</BLOCKQUOTE>
<BLOCKQUOTE>
To use these protocols and connection automation methods
with Win '9x and NT you have to have one of the utilities
from their "Plus Pack" (or some clone thereof).
Otherwise you'd have to use an interactive terminal
window.
</BLOCKQUOTE>
<BLOCKQUOTE>
To avoid the interactive terminal window (and automate
the connection process) you can use "AutoPPP" which is
a feature of mgetty that implements the same protocol
that Microsoft uses for their MSN dialup (maybe they
also use it for their normal RAS --- remote access
server --- mechanism).
</BLOCKQUOTE>
<BLOCKQUOTE>
If your Win '9x and NT4.x(sp3) systems are already
working with your Linux system (as you seem to say
above) then you probably have mgetty with AutoPPP
already working correctly.
</BLOCKQUOTE>
<BLOCKQUOTE>
So, now the question becomes, what isn't working.
You say that the affected system can connect to
the Linux system, and ping it. This suggests that
the modems, PPP, IP addressing and routing are all
working. You have transport.
</BLOCKQUOTE>
<BLOCKQUOTE>
However, you don't say what you mean by "register."
Presumably some or of your applications layer
protocols aren't working.
</BLOCKQUOTE>
<BLOCKQUOTE>
Can you telnet to the Linux box? Can you see web
pages on the Linux box? (Is it running an httpd)?
Can you ping something that's "behind/beyond" the
Linux system (from the NT box)?
</BLOCKQUOTE>
<BLOCKQUOTE>
If you can't ping anything beyond the Linux box
it might be that you aren't allowing IP_Forwarding.
This is easy to overlook. You can fix that by
adding the "ktune" directive to your <TT>/etc/ppp/options</TT>
file on the Linux box, or by adding a command like:
</BLOCKQUOTE>
<BLOCKQUOTE><BlockQuote><Code>
echo 1 &gt; <TT>/proc/sys/net/ipv4/ip_forward</TT>
</Code></BlockQuote></BLOCKQUOTE>
<BLOCKQUOTE>
... to one of your start up scripts. (There is an
entry in one of the <TT>/etc/sysconfig/</TT> files that Red Hat
uses that does this for you. That's one of those things
that every Linux distribution does slightly differently,
which is one reason why Paul added the ktune directive
to recent copies of pppd).
</BLOCKQUOTE>
<BLOCKQUOTE>
However, I'm not sure this is your problem. You seem
to say that your Win'95 and NT4(sp3) (service pack 3)
systems work fine. If that really is the case then the
problem isn't on the Linux box at all. It would have to
be something that Microsoft changed, or something that
differs between your NT(sp3) and NT(sp4) systems. For
that you should contact your NT support reps. Don't let
them tell you that "connections to Linux systems are
unsupported" or anything like that --- if you have one
of them working and another failing, they should be able
to help you isolate the problem. (Of course, these days
you're probably paying for all of your NT support, so
don't let them push you around about this).
</BLOCKQUOTE>
<BLOCKQUOTE>
Although I haven't read all of it, and it doesn't seem
to be on the LDP mirrors, I did find the following link
that might be helpful.
</BLOCKQUOTE>
<BLOCKQUOTE><DL><DT>
Modified Linux PPP/NT HOWTO
<DD><A HREF="http://www.yps.org/~whorfin/PPP-NT-HOWTO/PPP-NT-HOWTO.html#inh5"
>http://www.yps.org/~whorfin/PPP-NT-HOWTO/PPP-NT-HOWTO.html#inh5</A>
</DL></BLOCKQUOTE>
<BLOCKQUOTE>
I'm copying Siegfried Schoen, and Diederick van Dijk,
(original author and current maintainer of this
document respectively) to encourage them to submit their
HOWTO to the LDP and to offer them a chance to correct
me or expand on what I'm saying.
</BLOCKQUOTE>
<BLOCKQUOTE>
I'm also copying my co-worker at <A HREF="http://www.linuxcare.com/">Linuxcare</A>, Paul
Mackerras (author and current maintainer of the
Linux PPP daemon), and Gert Doering (author of mgetty)
so they can also comment if they choose. (This is not
to suggest that technical support questions should have
gone to them, but rather to give them a chance to
correct me so that they don't <EM>get</EM> questions from people
who read this in the Linux Gazette).
</BLOCKQUOTE>
<BLOCKQUOTE>
I've recently started writing a completely new version
of the PPP HOWTO. The one by Robert Hart hasn't been
updated recently --- and I've gotten enough questions
about it over the years that I've decided to start
"tabula rasa" and see if a free approach will help.
</BLOCKQUOTE>
<BLOCKQUOTE>
If the suggestions here haven't helped, please be sure
to let me know specifically which services aren't working
and tell me more (much more) about your configuration.
</BLOCKQUOTE>
</BLOCKQUOTE>
<!-- sig -->
<!-- end 5 -->
<!-- .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~. -->
<A NAME="tag/6"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 6 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif"
height="50" width="60" alt="(?) " border="0"
>Can't See Ethernet Card</H3>
<p><strong>From Chuck Whinney on Sun, 05 Dec 1999
</strong></p>
<!-- ::
Can't See Ethernet Card
~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
I cant seem to get my Linksys Ether16 LAN card to work under
linux. I turned off the PnP liek teh linksys website said, and I
turned the motherboard setting from PnP on that IRW to the ISA
setting. Linux still never recognizes it.
</STRONG></P>
<P><STRONG>
Any ideas?
Thanks!
Chuck
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
What error to you get? If it looks something
like:
</BLOCKQUOTE>
<blockquote><pre> SIOCSIFADDR: No such device
eth0: unknown interface: No such device
</pre></blockquote>
<BLOCKQUOTE>
... then you're asking the right question. Some
possible causes:
</BLOCKQUOTE>
<BLOCKQUOTE><ul><li>
You have some sort of weird chipset
for which there is no Linux support.
<li>
You have a new version of some chipset
for which the Linux kernel needs a patch.
<li>
You have a card with its I/O base address
at some location where the kernel is not
probing.
<li>
You particular kernel isn't including the
correct driver.
<li>
The card, or the slot that it's in, is defective.
<li>
There is a conflict with some other device
(some collision in IRQs, I/O address space, etc).
</ul></blockquote>
<BLOCKQUOTE>
Some possible answers:
</BLOCKQUOTE>
<BLOCKQUOTE><ul><li>
Buy a cheap but well supported card
(I like Netgear, you can find them
for about $20 US).
<li>
Try passing your kernel an ether=
parameter describing the settings
of your ethernet card.
<li>
Try moving your ether card to another
slot, and/or temporarily removing any
other adapters from the system.
<li>
cd to the <TT>/lib/modules/net</TT> directory
and do a command like:
<BLOCKQUOTE><BLOCKQUOTE><code>
for i in *.o; do insmod $i; done
</code></BLOCKQUOTE></BLOCKQUOTE>
<BLOCKQUOTE>
... to try loading each of your
network drivers (then to an lsmod to
see if any of them successfully loaded).
</BLOCKQUOTE>
</ul></BlockQuote>
<BLOCKQUOTE>
Neither of these lists is comprehensive. Their
just some ideas. The idea of buying or even
borrowing a different cheap ethernet card is useful,
since getting <EM>any</EM> card working will give you a
baseline to work towards.
</BLOCKQUOTE>
<BLOCKQUOTE>
On using the ether= parameter on our kernel
command line (or on the insmod command line for
your ether drivers) read your bootparam man page
and/or the Linux BootPrompt-HOWTO
(<A HREF="http://www.linuxdoc.org/HOWTO/BootPrompt-HOWTO.html"
>http://www.linuxdoc.org/HOWTO/BootPrompt-HOWTO.html</A>)
</BLOCKQUOTE>
<BLOCKQUOTE>
There's a chance that the last of these tricks will
hang your system, or that conflicts among the
different ethernet drivers could cause problems.
That's pretty rare, but it can happen. Try loading
them by hand one at a time, until you've eliminated most
of them.
</BLOCKQUOTE>
<!-- sig -->
<!-- end 6 -->
<!-- .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~. -->
<A NAME="tag/7"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 7 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif"
height="50" width="60" alt="(?) " border="0"
>Disk Druid UI Failure? USE fdisk!</H3>
<p><strong>From Loki Cane on Sun, 05 Dec 1999
</strong></p>
<!-- ::
Disk Druid UI Failure? USE fdisk!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
I need some help. When I get into Disk Druid, it shows me two
partitions. They look like this:
</STRONG></P>
<pre><strong>&gt; &lt;not set&gt; hda1 1220M 1220M WIN 95 FAT 32
&gt; &lt;not set&gt; hdb1 407M Dos 16-bit&gt;=32
&gt; hda [621/64/63] 1222M 2M 1220M 99%
&gt; hdb [899/15/62] 408M 1M 407M 99%
</strong></pre>
<P><STRONG>
I've tried deleting one and both partitions to create the Linux,
but when I do, I can not click on the next button. If you can
take me through it, I would appreciate it, because the book didn't
help any to figure this out.
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
So, use fdisk instead of Disk Druid.
</BLOCKQUOTE>
<BLOCKQUOTE>
Personally I don't like Disk Druid. The thing has
little bugs or quirks in it, and seems to cause more
trouble then it solves most of the time.
</BLOCKQUOTE>
<BLOCKQUOTE>
So, go into fdisk. It looks like you have a 1.2 Gb drive
and a 400Mb drive. That means you'll have to go into
fdisk twice (once for <TT>/dev/hda</TT> and again for <TT>/dev/hdb</TT>).
</BLOCKQUOTE>
<BLOCKQUOTE>
There are several different partitioning packages for Linux.
In addition to Disk Druid and the plain "shell" fdisk
there's cfdisk (curses interface, no color), and sfdisk
(scriptable version with advanced features). Mandrake uses
an improved version of Disk Druid that they call DiskDrake
*(<A HREF="http://www.linux-mandrake.com/diskdrake"
>http://www.linux-mandrake.com/diskdrake</A>). There's
another called gparted (GNU partition editor).
</BLOCKQUOTE>
<BLOCKQUOTE>
You can read more about partitioning in the
Linux Partition (mini) HOWTO by Kristan Koehntopp
(<A HREF="http://metalab.unc.edu/mdw/HOWTO/mini/Partition.html"
>http://metalab.unc.edu/mdw/HOWTO/mini/Partition.html</A>)
(Although it would be nice to be add a section about
partitioning tools; to that HOWTO).
</BLOCKQUOTE>
<BLOCKQUOTE>
You could do a Freshmeat search for more of them.
</BLOCKQUOTE>
</BLOCKQUOTE>
<!-- sig -->
<!-- end 7 -->
<!-- .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~. -->
<A NAME="tag/8"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 8 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif"
height="50" width="60" alt="(?) " border="0"
>Savage 4 Pro</H3>
<p><strong>From pot on Sun, 05 Dec 1999
</strong></p>
<!-- ::
Savage 4 Pro
~~~~~~~~~~~~
:: -->
<P><STRONG>
Please, tell me how to instal a Savage 4 pro with linux (<A HREF="http://www.redhat.com/">Red Hat</A>
6, and <A HREF="http://www.suse.com/">S.u.S.E.</A> 6.2) Is there a mesa driver for my savage If it is
possible i want the repons at my e-mail adress <A HREF="mailto:pot@magicnet.ro"
>pot@magicnet.ro</A>
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
I always send my "repons" (sic) via e-mail.
</BLOCKQUOTE>
<BLOCKQUOTE>
I presume that a "Savage 4 Pro" is a video card and that
by asking how to "install" it you're actually asking
how to get X Windows (presumably XFree86, the free
Linux X Windows server package) configured to use it.
</BLOCKQUOTE>
<BLOCKQUOTE>
I also presume that you're referring to the Mesa 3D (a free
implementation of some graphics APIs that are similar
to those provided by SGI's OpenGL).
</BLOCKQUOTE>
<BLOCKQUOTE>
Of course I don't know any of this. There are too many
video cards and they designs and chipsets on those cards
change too fast (often out of sync with the model
names and numbers). I've never used Mesa or OpenGL.
</BLOCKQUOTE>
<BLOCKQUOTE>
A quick search on the terms "Linux XFree Savage Mesa"
returns links to about 100 mirrors of Linux Gazette issue
34 where someone else asked basically the same question
(with no answer; that one wasn't sent to me).
</BLOCKQUOTE>
<BLOCKQUOTE>
So I go to the best place for info on XFree
(<A HREF="http://www.xfree86.org"
>http://www.xfree86.org</A>) and search their FAQ at:
<A HREF="http://www.xfree86.org/FAQ/#SectionF"
>http://www.xfree86.org/FAQ/#SectionF</A>
</BLOCKQUOTE>
<BLOCKQUOTE>
Where I find:
</BLOCKQUOTE>
<blockquote><pre> Q.F18- Is a server for the S3 Trio3D, Trio3D/2X or the S3 Savage3D
or the Savage4 available?
XFree86-3.3.5 supports all these chipsets as part of the SVGA server.
Please note that S3 Savage3D support was not tested and Savage4
support is currently restricted to Linux and the Intel Platform.
</pre></blockquote>
<BLOCKQUOTE>
So I supposed you should just try the SVGA server
and run one of the setup front ends like: XConfigurator,
XF86Setup or the S.u.S.E. XSax. Any of those should
configure basic X support for this card.
</BLOCKQUOTE>
<BLOCKQUOTE>
(You might have to upgrade your XFree*.rpm packages to get
version 3.3.5, which is pretty new. This might entail
upgrading some of your other libraries and packages,
so you might end up wanting to upgrade the whole
distribution).
</BLOCKQUOTE>
<BLOCKQUOTE>
Next we go on to Mesa. A Google! search on the
phrase "Mesa GL" shows us that it has its own web site
at: <A HREF="http://www.mesa3d.org"
>http://www.mesa3d.org</A> where we look for a
"search" feature or an FAQ. There I learn that referring
to this as MesaGL is a "no-no" (trademark concerns) and
that the package is to be known as Mesa 3D. The second
link on their index page lists "supported platforms and
systems" and describes the ongoing efforts to provide
broader support.
</BLOCKQUOTE>
<BLOCKQUOTE>
This suggests that Mesa doesn't work on your chipset.
If Mesa support is important to your applications, you
should either buy a supported card, or look for OpenGL
support (if that will suit your needs). (Contributing
to the XFree86 and Mesa3D projects would also help).
</BLOCKQUOTE>
<BLOCKQUOTE>
I really wish the XFree86 user base would cough up
their own answer guy. I realize that most new Linux
users can't tell where Linux ends and X begins and that
X is a vitally important part of the average home, and
desktop workstation user's experience --- but I'm not
much of a resource on these topics.
</BLOCKQUOTE>
<BLOCKQUOTE>
This is one of those many cases where I'm just acting
as a semi-intelligent interface to Google!
(<A HREF="http://www.google.com"
>http://www.google.com</A>), Yahoo! (<A HREF="http://www.yahoo.com"
>http://www.yahoo.com</A>),
Alta Vista (<A HREF="http://www.alta-vista.com"
>http://www.alta-vista.com</A>), DejaNews
(<A HREF="http://www.deja.com"
>http://www.deja.com</A>), the LDP (<A HREF="http://www.linuxdoc.org"
>http://www.linuxdoc.org</A>),
and the man pages, <TT>/usr/doc/*</TT> tree, etc.
</BLOCKQUOTE>
</BLOCKQUOTE>
<!-- sig -->
<!-- end 8 -->
<!-- .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~. -->
<A NAME="tag/9"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 9 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif"
height="50" width="60" alt="(?) " border="0"
>Root Password Recovery on non-Linux UNIX Systems</H3>
<p><strong>From Jeff McGuff on Sun, 05 Dec 1999
</strong></p>
<!-- ::
Root Password Recovery on non-Linux UNIX Systems
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
I saw your answer on how to recover password on a Linux box, but
what about a Sun Sparcstation. My freind got one in a yard sale,
and we would like to log in to it to make changes!
</STRONG></P>
<P><STRONG>
Thanks,
Jeff
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
First, read the SunOS/Solaris FAQs
(<A HREF="http://www.faqs.org/faqs/comp-sys-sun-faq"
>http://www.faqs.org/faqs/comp-sys-sun-faq</A>)
</BLOCKQUOTE>
<BLOCKQUOTE>
You can find FAQs on MANY subjects at the
"Internet FAQ Consortium" (<A HREF="http://www.faqs.org"
>http://www.faqs.org</A>)
</BLOCKQUOTE>
<BLOCKQUOTE>
In this case we search on "password" and find
(after three jumps through "next") that it's
answered in question 99:
</BLOCKQUOTE>
<font color="#000033"><blockquote>
<blockquote>
99) I do not know the root password, What do I do?
</blockquote>
<blockquote>
First thing to try: (SunOS 4.x.x)
</blockquote>
<blockquote>
Get to the boot monitor prompt by holding down the stop and
A. Type sync to help ensure that you have no filesystem
corruption on booting. You will need to hit STOP-A again to
interrupt the boot process.
</blockquote>
<blockquote>
Now at the '&gt;' prompt type
</blockquote>
<blockquote><code>
b -s
</code></blockquote>
<blockquote>
Or at the 'ok' prompt type
</blockquote>
<blockquote><code>
boot -s
</code></blockquote>
<blockquote>
This should give you a root prompt as long as the console
entry in /etc/ttytab is marked secure.
If you get the '#' you should be able to edit the
the /etc/passwd file and remove the encrypted string for
root's passwd or set it to what you want using the passwd
command.
</blockquote>
<blockquote>
Once you are done type reboot to bring the machine back up.
</blockquote>
<blockquote>
Second thing to try: (SunOS 4.1.x and Solaris2.x)
</blockquote>
<blockquote>
Boot off the network or CD-ROM and mount the root device
and edit the passwd file.
</blockquote>
<blockquote>
Note: both of these assume no eeprom password.
</blockquote>
<blockquote>
Last Updated: January 17, 1995.
</blockquote>
</blockquote>
</font>
<BLOCKQUOTE>
This last method is referred to as "booting into the
mini-root shell."
</BLOCKQUOTE>
<BLOCKQUOTE>
Of course the issue get a bit more complex when
you think about them. Did this system come with
any software pre-installed? Did you get the media,
documentation and licensing information for that
software? What are the licensing terms regarding
transferral of usage? (Just because you bought
a system with a bunch of software installed on it
doesn't mean you have any right to use that software).
</BLOCKQUOTE>
<BLOCKQUOTE>
Then there are practical issues. Whose data is laying
around on that system? Can you trust the installed
software?
</BLOCKQUOTE>
<BLOCKQUOTE>
In other words you should probably wipe whatever is
on that system and start with a fresh installation
of your own OS. That could be Linux/SPARC (or even
Linux/68K if this is an old enough Sun), or you might
be able to use the SunOS or Solaris that probably
came with the system (ask Sun about that).
</BLOCKQUOTE>
</BLOCKQUOTE>
<!-- sig -->
<!-- end 9 -->
<!-- .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~. -->
<A NAME="tag/10"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 10 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif"
height="50" width="60" alt="(?) " border="0"
>Needs Samba Configuration Advice</H3>
<H4 ALIGN="center">
I am new to Linux and I am attempting to setup the following system.</H4>
<p><strong>From Foster Ken on Sun, 05 Dec 1999
</strong></p>
<!-- ::
Needs Samba Configuration Advice
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
I am new to Linux and I am attempting to setup the following system.
:: -->
<P><STRONG>
I have Redhat 6.0 Linux and Win95 setup on a dual boot with the Linux as the
default. I want to setup this system as a server and load some windows
software on it to be used on a closed network through a unmanaged hub. I am
trying to access the Linux as a server with Win95 software residing on the
Win95 partition so that other Win95 workstations can log into the Linux box
and get the 95 applications from the server. My limited new exposure to
Linux may not allow me to correctly format the questions in the right order.
I have TCPIP setup and addresses assigned and can ping from either machine
to the other and can even telnet to the Linux box. I have finally settled
on SAMBA and am trying to configure it. I am willing to even do a fresh
install of the OS'es if need be.
</STRONG></P>
<P><STRONG>
Ken Foster
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
O.K. You have IP addressing and routing working.
(You can ping your servers from your clients).
</BLOCKQUOTE>
<BLOCKQUOTE>
Now you want to configure file and printer sharing
using Samba. Probably you want to start by fetching
the latest version of Samba for your Linux distribution.
</BLOCKQUOTE>
<BLOCKQUOTE>
<A HREF="http://www.redhat.com/">Red Hat</A> Linux uses the RPM system for managing packages.
The Samba team pre-packages Samba in RPM format for a
large number of different Linux distributions. (Most
Linux distributions use RPM, but several have different
sets of package names and dependency identifiers, so
it's often necessary to have different .rpm files for
Red Hat, <A HREF="http://www.suse.com/">S.u.S.E.</A>, <A HREF="http://www.turbolinux.com/">TurboLinux</A>, etc).
</BLOCKQUOTE>
<BLOCKQUOTE>
In this case you can find a copy of Samba 2.0.6
at:
</BLOCKQUOTE>
<BLOCKQUOTE><BlockQuote>
<A HREF="http://us1.samba.org/samba/ftp/Binary_Packages/redhat/RPMS/6.0/samba-2.0.6-19991110.i386.rpm"
>http://us1.samba.org/samba/ftp/Binary_Packages/redhat/RPMS/6.0/samba-2.0.6-19991110.i386.rpm</A>
</BlockQuote></BLOCKQUOTE>
<BLOCKQUOTE>
You can fetch that and install it with a command
like:
</BLOCKQUOTE>
<BLOCKQUOTE><BLOCKQUOTE><CODE><BlockQuote>
rpm -Uvh samba-2.0.6-19991110.i386.rpm
</BlockQuote></CODE></BLOCKQUOTE></BLOCKQUOTE>
<BLOCKQUOTE>
Then you can read the the SMB HOWTO at:
</BLOCKQUOTE>
<BLOCKQUOTE><BlockQuote>
<A HREF="http://www.linuxdoc.org/HOWTO/SMB-HOWTO.html"
>http://www.linuxdoc.org/HOWTO/SMB-HOWTO.html</A>
</BlockQuote></BLOCKQUOTE>
<BLOCKQUOTE>
... and peruse the web pages at:
</BLOCKQUOTE>
<BLOCKQUOTE><BlockQuote>
<A HREF="http://www.samba.org"
>http://www.samba.org</A>
</BlockQuote></BLOCKQUOTE>
<BLOCKQUOTE>
... for lots more information about Samba and how to
configure and use it.
</BLOCKQUOTE>
<BLOCKQUOTE>
You probably want to install and use the SWAT
(Samba Web-based Administration Tool) for your initial
configuration. Although I've never used it, Tridge
(the principle author of Samba) tells me that its
definitely the way for newbies to go.
</BLOCKQUOTE>
<BLOCKQUOTE>
You probably want to start your perusing with
"Samba: An Introduction"
</BLOCKQUOTE>
<BLOCKQUOTE>
<A HREF="http://us1.samba.org/samba/docs/SambaIntro.html"
>http://us1.samba.org/samba/docs/SambaIntro.html</A>
</BLOCKQUOTE>
</BLOCKQUOTE>
<!-- sig -->
<!-- end 10 -->
<!-- .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~. -->
<A NAME="tag/11"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 11 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif"
height="50" width="60" alt="(?) " border="0"
>Lost CMOS Password</H3>
<p><strong>From Jim Nui on Sun, 05 Dec 1999
</strong></p>
<!-- ::
Lost CMOS Password
~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
I WAS JUST GIVEN A CPU
</STRONG></P>
<P><STRONG>
AST ADVANTAGE ADVENTURE 6066d
</STRONG></P>
<P><STRONG>
486DX2-66 MHz
540 MB HARD DRIVE]
4 MB
</STRONG></P>
<P><STRONG>
I CAN'T START IT, AS IT HAS PASSWORD.
I ASK THE OWNER FOR THE PASSWORD AND SHE FORGOT IT.
I HAVE BEEN TRYING AND TYPING DIFFERENT NAMES THAT SHE GAVE ME, BUT NO LUCK
IF YOU CAN ASSIST ME, I WOULD BE IN GREAT DEBT TO YOUR EXPERTISE.
IF NOT, CAN YOU DIRECT ME TO WHERE THEY WOULD HELP ME.
PS: THIS CPU STARTS PRETTY GOOD AND I DON'T KNOW THE &amp;^%??/#@ PASSWORD!
</STRONG></P>
<P><STRONG>
HELP!
</STRONG></P>
<P><STRONG>
JIM NUI
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
Jim, I hope that password also unlocks your CAPS mode.
</BLOCKQUOTE>
<BLOCKQUOTE>
In general you can reset the password on any PC motherboard
using one of four methods.
</BLOCKQUOTE>
<BLOCKQUOTE>
First, some of them have an external battery holder which
usually holds some double or triple A batteries. There's a
thin lead to some pins on the motherboard. Just remove the
lead, wait thirty seconds and put it back. This is
typically on old 286 and 386 motherboards, but you might
find it on some older 486s as well. In some cases there
is a small flat watch battery that's held unto the
motherboard with a spring clip. Simply take that out
wait thirty seconds and replace it.
</BLOCKQUOTE>
<BLOCKQUOTE>
In other cases (excuse the pun) you may find that there
is a set of pins on the motherboard which can be used
to reset the system to the factory defaults. Typically
you'd turn off the system, open up the case (you'd have
taken these two steps in the previous example, too ---
I'll belatedly note), place a jumper (conductor) across
the pins, power up the system (resetting the CMOS
registers) and then power down, remove the jumper, close
the case and be happy. The trick is to find the right
jumpers (if they exist).
</BLOCKQUOTE>
<BLOCKQUOTE>
In other cases you might find a rechargeable battery
soldered unto the motherboard. In that case take a
paper clip or other wire (preferably a 10 to 50 Ohm
resister, actually) and short across the ends of this
little "barrel." Hold that pose for about 30 seconds to
one minute.
</BLOCKQUOTE>
<BLOCKQUOTE>
In yet other cases you might find a socketed CMOS/clock
chip (looks like a small ROM or RAM DIP --- a
little rectangular bug with two rows "legs" (pins)
--- DIP stands for "dual in-line packaging"). If it's
socketed instead of soldered into the motherboard,
then you can pull the chip, wait ... (you guessed it!) ...
thirty seconds, and then re-insert it (in the same
orientation as you found it!).
</BLOCKQUOTE>
<BLOCKQUOTE>
If you can't find out which components are which,
find a friendly neighborhood geek, bribe him or her
with pizza, chocolate, a good microbrew, or a date
and let him or her point it all out to you (in glowing
and unending detail).
</BLOCKQUOTE>
<BLOCKQUOTE>
[Hey! I resemble that remark!]
</BLOCKQUOTE>
<BLOCKQUOTE>
By the way: The magic "30 seconds" to which I so
often referred in these instructions is roughly the
time it can take for a CMOS chip to dissipate its
settings after power is removed from it.
</BLOCKQUOTE>
<BLOCKQUOTE>
You can also find a list of common "backdoor" passwords
(burned into the ROM/BIOS' of some computers by their
manufactures, to allow their technical support to
help with this situation). Naturally this puts the
"value" of the passwords at just about useless but
manufacturers care far more about technical support
costs than most people do about "real" security.
</BLOCKQUOTE>
<BLOCKQUOTE>
For an easily accessible discussion of this topic
let's go over to the "Internet FAQ Consortium"
and look at:
</BLOCKQUOTE>
<BLOCKQUOTE><DL><DT>
alt.2600 FAQ Revision .014 (1/4)
<DD><A HREF="http://www.faqs.org/faqs/alt-2600/faq/index.html"
>http://www.faqs.org/faqs/alt-2600/faq/index.html</A>
</DL></BLOCKQUOTE>
<BLOCKQUOTE>
(search on the term CMOS).
</BLOCKQUOTE>
</BLOCKQUOTE>
<!-- sig -->
<!-- end 11 -->
<!-- .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~. -->
<A NAME="tag/12"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 12 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif"
height="50" width="60" alt="(?) " border="0"
>More Problems with LILO</H3>
<p><strong>From Leif Steinhour on Sun, 05 Dec 1999
</strong></p>
<!-- ::
More Problems with LILO
~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Hi:
</STRONG></P>
<P><STRONG><BlockQuote>
I'm trying to install <A HREF="http://www.redhat.com/">Red Hat</A> 5.0/Win 95 on my new hard drive (3.2
</BlockQuote></STRONG></P>
<P><STRONG>
GB, UDMA, 6256 cylinders, 16 heads) and having major difficulties. The
file system seems to go on fine, but LILO just won't load, and I can't
figure out how to edit lilo.conf without it resetting itself. I've tried
changing the BIOS settings (in an attempt to exhaustively try all the
options), but nothing really seems to help with this problem. According
to the lilo documentation, this could be the result of a geometry
mismatch, but I've specified the software CHS settings to lilo to be the
same as those I used on fdisk and also tried turning on LBA/linear
addressing to no avail. All my partitions are below 1023 cylinders, and
I can't even get it to work with 2 100MB partitions! I really want to
have a dual boot setup: any ideas?
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
Search my back issues for the term LOADLIN.EXE.
Use an MS-DOS partition to store copies of your
kernel and some LINUX.BAT files. Forget about LILO.
</BLOCKQUOTE>
<BLOCKQUOTE>
(BTW: I realize that you probably long since have
solved this problem. I just found it languishing in
a dusty corner of my mail spool).
</BLOCKQUOTE>
</BLOCKQUOTE>
<!-- sig -->
<!-- end 12 -->
<!-- .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~. -->
<A NAME="tag/13"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 13 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif"
height="50" width="60" alt="(?) " border="0"
>xftp: (Proxy or "Third Party" FTP Requests</H3>
<p><strong>From moi on Sun, 05 Dec 1999
</strong></p>
<!-- ::
xftp: (Proxy or "Third Party" FTP Requests
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Jim,
</STRONG></P>
<P><STRONG>
Sorry to bother you, but I can find no information on whether wu-ftp
can do xftp (third party remote file transfers).
</STRONG></P>
<P><STRONG>
If it is capable of this, please help me know how to set it up and/or
turn on this feature.
</STRONG></P>
<P><STRONG>
Thanks
Bob Weaver
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
I'm not sure but this sounds like you're asking if
WU-ftpd can be used to transfer a file from
one server to a third party. Obviously most FTP
traffic is solely between the client and the server.
</BLOCKQUOTE>
<BLOCKQUOTE>
Unfortunately this rather obscure feature in the
FTP protocol is a BAD idea. The idea has been
subverted by crackers for performing "FTP bounce"
attacks. This is a technique where an attacker
tricks an FTP server which supports this feature
into directing arbitrary traffic to our victim.
</BLOCKQUOTE>
<BLOCKQUOTE>
I don't know the full details of the vulnerabilities
and I've never used the feature legitimately. So
I can't say much about it (without spending a few
hours in research and testing to figure it out).
</BLOCKQUOTE>
<BLOCKQUOTE>
This is one of those cases where I'll have to say:
</BLOCKQUOTE>
<BLOCKQUOTE><BlockQuote>
Even if you can get WU-ftpd to do that
you probably don't want to. Look for a
different way.
</BlockQuote></BLOCKQUOTE>
</BLOCKQUOTE>
<!-- sig -->
<!-- end 13 -->
<!-- .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~. -->
<A NAME="tag/14"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 14 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif"
height="50" width="60" alt="(?) " border="0"
>Which RPM Provides A Given Set of Files?</H3>
<p><strong>From Larry Sabine on Sun, 05 Dec 1999
</strong></p>
<!-- ::
Which RPM Provides A Given Set of Files?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
I did an almost complete install of RedHat 5.2, but I seem to have passed
over the gcc package -- so I got that, installed it, but all them include
files like stdio.h and so on aren't there (there being <TT>/usr/include</TT> or even
<TT>/include</TT>). I can't figure out what RPM installs those. Do you know?
Larry
Certified Seat Filler
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
I don't know off hand. However here's a way to
find out which RPMs contain files matching any
regex (pattern):
</BLOCKQUOTE>
<blockquote><pre> mount /mnt/cdrom
cd /mnt/cdrom/RedHat/RPMS
for i in *.rpm; do
rpm -qpl $i | prep -q 'stdio\.h' &amp;&amp; echo $i
done
</pre></blockquote>
<BLOCKQUOTE>
... that example will find all RPMs on your
distribution CD-ROM that contain a file named "stdio.h"
</BLOCKQUOTE>
<BLOCKQUOTE>
On some distributions you might have to use a command
more like:
</BLOCKQUOTE>
<blockquote><pre> find /cdrom -type f -name "*.rpm" | while read i ; do
rpm -qpl $i | prep -q 'stdio\.h' &amp;&amp; echo $i
done
</pre></blockquote>
<BLOCKQUOTE>
... this does basically the same thing but it traverses
directories to look for .rpm files.
</BLOCKQUOTE>
</BLOCKQUOTE>
<!-- sig -->
<!-- end 14 -->
<!-- .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~. -->
<A NAME="tag/15"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 15 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif"
height="50" width="60" alt="(?) " border="0"
>Advanced Routing in the Linux Kernel</H3>
<p><strong>From Mark Lamb on Sun, 05 Dec 1999
</strong></p>
<!-- ::
Advanced Routing in the Linux Kernel
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
For what it's worth I've got a site
(<A HREF="http://snafu.freedom.org/linux2.2"
>http://snafu.freedom.org/linux2.2</A>) with copies of or links to
all of the docs I've found on the advanced
networking stuff. Might be helpful to ya.
</STRONG></P>
<P><STRONG>
-- Mark Lamb
<br><em>I'm a hacker -- I don't know the meaning of sleep</em>
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
It is interesting information that covers the use
of the ip command management of addresses, interfaces
routes, policy rules, and tunnels.
</BLOCKQUOTE>
<BLOCKQUOTE>
I do find the depth of the document tree that
LaTeX2HTML is generating to be a bit distracting.
Also those 1cm (font size references) near the
instances of "NB:" (nota bene) throughout the
document are ....
</BLOCKQUOTE>
<BLOCKQUOTE>
Maybe a bit of hand touchup of the HTML would
help. You could merge some of the shorter sections
(Like all of the Abbreviations &amp; Objectives notes)
into combined pages.
</BLOCKQUOTE>
<BLOCKQUOTE>
Regarding the content: The main issue is that there
doesn't seem to be any introduction. We'll also need
to come up with some case studies (longer than the
usage examples --- going into a bit of detail about
the desired effects, then explaining the solution.
</BLOCKQUOTE>
<BLOCKQUOTE>
For example, on of the primary examples of how
people will be using these advanced routing options
has to do with a scenario like this:
</BLOCKQUOTE>
<blockquote><pre>
+------+ +------+
| ISP1 |--------+ +------| ISP2 |
+------+ | | +------+
+--------------+-------+---+
| |
+--+--+ | +--------+
| WWW | +-----| FW/GW |------- Internal
+-----+ +--------+ LAN
</pre></blockquote>
<BLOCKQUOTE>
Here we have two ISPs, with either one router to each or one
router with interfaces to each (or possibly redundant
routers which <EM>each</EM> have interfaces to each ISP).
</BLOCKQUOTE>
<BLOCKQUOTE>
The key point is that these ISPs are not peering with us.
They don't know that we are "multi-homed" and don't care.
So we have no AS (autonomous systems) number, and
</BLOCKQUOTE>
<BLOCKQUOTE>
we aren't running gated (for BGP4 or other dynamic route
management).
</BLOCKQUOTE>
<BLOCKQUOTE>
However, we have multiple Internet links and we want to use
them to as efficiently as possible.
</BLOCKQUOTE>
<BLOCKQUOTE>
We can balance the incoming load using round robin DNS.
This is easy if we have multiple different WWW servers (some
of them have addresses from ISP1 while others have them from
ISP2). However, if we want one WWW server to serve both
ISPs (or we want each WWW hosts to server all ISPs for
fault-tolerance and failover) then we have a problem.
</BLOCKQUOTE>
<BLOCKQUOTE>
Under the classical IP routing methods each host will have
<EM>one</EM> default route that is active at any moment. If that
route goes down we can have routes with a higher metric
which will then become active.
</BLOCKQUOTE>
<BLOCKQUOTE>
The problem is that all of the responses, to all web
queries, will go out through one of the ISPs or the other.
This is bad for two reasons. First we overload one of our
routers. Worse we've created an asymmetric route, some
packets come in one way and all packets go out another.
That means that some response packets don't follow anything
like the same route as those to which they are responding.
</BLOCKQUOTE>
<BLOCKQUOTE>
Asymmetric routing is legal, and not always bad. However,
it should be avoided by design and policy wherever possible.
Any routing problems that do occur are much more difficult
to isolate and troubleshoot when one encounters asymmetric
routes.
</BLOCKQUOTE>
<BLOCKQUOTE>
This is where our policy based routing comes in. We can
have routing policies that match the router to the <EM>source</EM>
addresses. So, if a connection comes in on eth0:1 (from
ISP1) then we can ensure that the responses to that
connection go through the "right" router (or the left one if
you're looking at my diagram above).
</BLOCKQUOTE>
<BLOCKQUOTE>
Another way in which we'd like to optimize the utilization
balance between these two ISPs is from the connections that
our users make to the outside world. In that case we can
configure our "FW/GW" node (the firewall/gateway router that
leads to the internal LAN in our example) to use equal cost
multipath routing for some or all of our local traffic.
</BLOCKQUOTE>
<BLOCKQUOTE>
I'd love to see a detailed explanation of this sort of
scenario (with recommended ip rule and ip route scripts,
etc) put into your documentation (complete with cheesy
little diagram, of course).
</BLOCKQUOTE>
<BLOCKQUOTE>
One question I have: when I use "equal cost multipath"
routing: will the same route be selected through a given TCP
connection, or might it change for different packets during
the course of that connection?
</BLOCKQUOTE>
</BLOCKQUOTE>
<!-- sig -->
<!-- end 15 -->
<!-- .~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~.~~. -->
<A NAME="tag/16"><HR WIDTH="75%" ALIGN="center"></A>
<!-- begin 16 -->
<H3 align="left"><img src="../gx/dennis/qbubble.gif"
height="50" width="60" alt="(?) " border="0"
>Try &amp; Buy Wrapper Technology for Commercial Linux apps</H3>
<p><strong>From CMerrin1 on Sun, 05 Dec 1999
</strong></p>
<!-- ::
Try &amp; Buy Wrapper Technology for Commercial Linux apps
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Are you familiar with any off-the-shelf wrappers that would allow
me to take an existing linux app, and wrap it for try &amp;buy? I am
look for a solution.
</STRONG></P>
<P><STRONG>
If you know of any solutions, I would love to hear about them.
Thanks
</STRONG></P>
<P><STRONG>
Charles Merrin
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../gx/dennis/bbub.gif" ALT="(!)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
I presume that you want some sort of "license"
manager that will automatically nag and possibly
disable a commercial software package after it's
been in use, unregistered for some period of time.
</BLOCKQUOTE>
<BLOCKQUOTE>
I know of no such package. I suspect that the
"license manager daemon enforced try and buy" market
will be pretty lukewarm for for Linux. Linux users
get most of their software for free.
</BLOCKQUOTE>
<BLOCKQUOTE>
Ironically the vast majority of them have a far greater
respect for the propriety of software licenses than the
average user of most commercial operating systems. Like
me, many of them find the idea of software piracy loathsome
and would rather write our own (free) software, and spend
countless hours hunting through free software archives
then simply steal someone's software.
</BLOCKQUOTE>
<BLOCKQUOTE>
In other words, you're probably going to get a much
better registration and purchase rate for reasonably
priced, high quality shareware under Linux than anyone
ever did for MS-DOS or MacOS shareware.
</BLOCKQUOTE>
<BLOCKQUOTE>
Of course the perception of "reasonably priced" and the
expectation of quality are someone different in the Linux
market. When we get a CD full of high quality free software
for twenty bucks, and we donate a $100 a year or so to the
FSF (<A HREF="http://www.gnu.org"
>http://www.gnu.org</A>) (as I do) then we expect a
package to be pretty good and pretty cheap before we'll
shell about $30 "just for it."
</BLOCKQUOTE>
<BLOCKQUOTE>
I do worry a bit about Linux and GNU as a "business model."
Of course I'm sitting pretty working for the premier
support and services provider for the platform. So the
business opportunities that we're pursuing are in good
shape.
</BLOCKQUOTE>
<BLOCKQUOTE>
However, we have to continue to educate the corporate
and consumer populace at large.
</BLOCKQUOTE>
<BLOCKQUOTE>
If only 10% of the estimated Linux users only contributed
10% of what I do to the FSF and other key free software
interests --- we'd have no problem sustaining the business.
</BLOCKQUOTE>
<BLOCKQUOTE>
If only a small proportion of the corporations that rely on
free software contributed about the same as I do (a few
hundreds of dollars per year each) then they'd be able
to get <EM>any</EM> sort of software they wanted. They could
re-implement even the most byzantine APIs (Microsoft) and
reverse-engineer the most convoluted file formats (more
awards to Microsoft). They could eliminated viruses
and most common security vulnerabilities from their
networks.
</BLOCKQUOTE>
<BLOCKQUOTE>
Of course it's like the classic "Prisoner's Dilemma."
We all win if we enough of us do our part. But, if
we don't win then those who do their part lose all that
they contributed.
</BLOCKQUOTE>
<BLOCKQUOTE>
Luckily the very foundation of free software are the
programmers who give away their software. For them
there is no dilemma. They wrote it to suit their
own needs (as learning experience, for personal use,
hobby, even as art form). For them the release of this
software is actually more risk than reward (they'll get
flooded with tech support and enhancement requests, etc).
However, we're all very fortunate in that they all
choose to take that risk and put up with those "rewards."
</BLOCKQUOTE>
<BLOCKQUOTE>
Anyway, good luck in your efforts. Personally I'd
strongly suggest either a pure "shareware" approach
or a very well marketed "money back guarantee" campaign
if you really want to sell general consumer commercial
Linux software. Anti-piracy, dongle, and "license manager"
approaches are likely to earn nothing but derision from
this market.
</BLOCKQUOTE>
</BLOCKQUOTE>
<!-- sig -->
<!-- end 16 -->
<!-- *** BEGIN copyright *** -->
<P> <hr> <P>
<H5 align="center"><a href="http://www.linuxgazette.com/copying.html"
>Copyright &copy;</a> 2000, James T. Dennis
<BR>Published in <I>The Linux Gazette</I> Issue 49 January 2000</H5>
<H6 ALIGN="center">HTML transformation by
<A HREF="mailto:star@starshine.org">Heather Stern</a> of
Starshine Technical Services,
<A HREF="http://www.starshine.org/">http://www.starshine.org/</A>
</H6>
<!-- *** END copyright *** -->
<!--startcut ==========================================================-->
<P> <HR> <P>
<!-- *** BEGIN navbar *** -->
<A HREF="index.html"><IMG ALT="[ Table of Contents ]"
SRC="../gx/indexnew.gif" WIDTH=163 HEIGHT=60 ALIGN=bottom ></A>
<A HREF="../index.html"><IMG ALT="[ Front Page ]"
SRC="../gx/homenew.gif" WIDTH=163 HEIGHT=60 ALIGN=bottom></A>
<A HREF="lg_bytes49.html"><IMG ALT="[ Prev ]" SRC="../gx/back2.gif" WIDTH=41 HEIGHT=60 ALIGN=bottom></A>
<A HREF="../faq/index.html"><IMG ALT="[ Linux Gazette FAQ ]"
SRC="./../gx/dennis/faq.gif"WIDTH=163 HEIGHT=60 ALIGN=bottom></A>
<A HREF="lg_tips49.html"><IMG ALT="[ Next ]" SRC="../gx/fwd.gif" WIDTH=41 HEIGHT=60 ALIGN=bottom ></A>
<!-- *** END navbar *** -->
</BODY></HTML>
<!--endcut ============================================================-->