mirror of https://github.com/tLDP/LDP
7676 lines
270 KiB
Plaintext
7676 lines
270 KiB
Plaintext
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook V3.1//EN" [
|
|
]>
|
|
<article>
|
|
<title>Linux Frequently Asked Questions with Answers</title>
|
|
<artheader>
|
|
<author>
|
|
<firstname>Robert</firstname>
|
|
<surname>Kiesling</surname>
|
|
<affiliation><address><email>
|
|
rkiesling@mainmatter.com
|
|
</email></address></affiliation>
|
|
</author>
|
|
<revhistory>
|
|
<revision>
|
|
<revnumber>1.18</revnumber>
|
|
<date>2001-10-13</date>
|
|
<authorinitials>rk</authorinitials>
|
|
</revision>
|
|
</revhistory>
|
|
<abstract>
|
|
<para>
|
|
This is the list of Frequently Asked Questions for Linux, the free
|
|
operating system kernel that runs on many modern computer systems.
|
|
The kernel source code documentation says that Linux ``aims for POSIX
|
|
compliance.'' Linux uses mostly free, GNU system utilities and
|
|
application software, although commercial programs are available also.
|
|
Originally written for 386/486/586 Intel/ISA bus machines, Linux
|
|
versions exist for nearly every hardware platform in existence that is
|
|
capable of running it. (Please refer to the question, ``<xref
|
|
linkend="what-is-linux" endterm="what-is-linux">'' below.) This FAQ
|
|
is meant to be read in conjunction with the Linux Documentation
|
|
Project's HOWTO series. (``<xref linkend="get-linux-material-by-ftp"
|
|
endterm="get-linux-material-by-ftp">'' and, ``<xref
|
|
linkend="howtos-and-other-documentation"
|
|
endterm="howtos-and-other-documentation">'') The
|
|
<citetitle>INFO-SHEET</citetitle> and <citetitle>META-FAQ</citetitle>
|
|
also list sources of Linux information. Please read them, and,
|
|
``<xref linkend="still-havent-answered"
|
|
endterm="still-havent-answered">'' before posting to a Usenet news
|
|
group. You can also get Postscript, PDF, HTML, and SGML versions of this
|
|
document. (``<xref linkend="formats-which-faq"
|
|
endterm="formats-which-faq">'')
|
|
</para>
|
|
</abstract>
|
|
</artheader>
|
|
|
|
<sect1 label="1">
|
|
<title>Introduction and General Information</title>
|
|
|
|
<sect2 label="1.1">
|
|
<title id="what-is-linux">What Is Linux?</title>
|
|
<para>
|
|
Linux is the kernel of operating systems that look like and perform as
|
|
well or better than the famous operating system from AT&T Bell
|
|
Labs. Linus Torvalds and a loosely knit team of volunteer hackers
|
|
from across the Internet wrote (and still are writing) Linux from
|
|
scratch. It has all of the features of a modern, fully fledged
|
|
operating system: true multitasking, threads, virtual memory, shared
|
|
libraries, demand loading, shared, copy-on-write executables, proper
|
|
memory management, loadable device driver modules, video frame
|
|
buffering, and TCP/IP networking.
|
|
</para>
|
|
<para>
|
|
Most people, however, refer to the operating system kernel, system
|
|
software, and application software, collectively, as ``Linux,'' and
|
|
that convention is used in this FAQ as well.
|
|
</para>
|
|
<para>
|
|
Linux was written originally for 386/486/586-based PC's, using the
|
|
hardware facilities of the 80386 processor family to implement its
|
|
features. There are now many ports to other hardware platforms.
|
|
(``<xref linkend="what-ports-to-other-processors-are-there"
|
|
endterm="what-ports-to-other-processors-are-there">'')
|
|
</para>
|
|
<para>
|
|
There are also Linux distributions specifically for mobile and
|
|
handheld platforms. An API specification and developers kit for the
|
|
Crusoe Smart Microprocessor developed by Transmeta Corporation are at
|
|
<ulink url="http://www.transmeta.com/">
|
|
<literal>http://www.transmeta.com/</literal></ulink>.
|
|
Information on the Linux distribution for the Compaq iPAQ is at
|
|
<ulink url="http://www.handhelds.org">
|
|
<literal>http://www.handhelds.org/</literal></ulink>
|
|
</para>
|
|
<para>
|
|
Refer also to the Linux <citetitle>INFO-SHEET</citetitle> for more
|
|
details as well as the answers to ``<xref
|
|
linkend="howtos-and-other-documentation"
|
|
endterm="howtos-and-other-documentation">'',
|
|
``<xref linkend="does-linux-run-on-my-computer"
|
|
endterm="does-linux-run-on-my-computer">'', and
|
|
``<xref linkend="what-ports-to-other-processors-are-there"
|
|
endterm="what-ports-to-other-processors-are-there">'',
|
|
below.
|
|
|
|
A list updated weekly is at:
|
|
<ulink url="http://lwn.net/">
|
|
<literal>http://lwn.net/</literal></ulink>
|
|
Archive of many of the distributions are on line at:
|
|
<ulink url="ftp://ftp.tux.org/">
|
|
<literal>ftp://ftp.tux.org/</literal></ulink> and
|
|
<ulink url="http://planetmirror.com/pub/linux">
|
|
<literal>http://planetmirror.com/pub/linux</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
The Linux kernel is distributed under the GNU General Public License.
|
|
(``<xref linkend="is-linux-public-domain-copyrighted"
|
|
endterm="is-linux-public-domain-copyrighted">'')
|
|
</para>
|
|
<para>
|
|
There is a historical archive of all versions of the Linux kernel at
|
|
<ulink url="http://ps.cus.umist.ac.uk/~rhw/kernel.versions.html">
|
|
<literal>http://ps.cus.umist.ac.uk/~rhw/kernel.versions.html
|
|
</literal></ulink>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="1.2">
|
|
<title id="where-do-i-start">How to Get Started.</title>
|
|
<para>
|
|
There are a handful of major Linux distributions. For information
|
|
about them, and how they are installed, see Matthew Welsh's
|
|
<citetitle>Installation and Getting Started</citetitle>, or
|
|
<citetitle>IGS</citetitle> for short. It's located at
|
|
the Linux Documentation Project Home Page,
|
|
<ulink url="http://www.linuxdoc.org/"><literal>http://www.linuxdoc.org/
|
|
</literal></ulink>, and on the Linux FAQ home page,
|
|
<ulink url="http://www.mainmatter.com/"><literal>http://www.mainmatter.com/
|
|
</literal></ulink>
|
|
</para>
|
|
<para>
|
|
The information in <citetitle>IGS</citetitle> is somewhat dated now.
|
|
More up-to-date information about first-time Linux installation is
|
|
located in the LDP's <citetitle>Installation HOWTO</citetitle>, also
|
|
located at the LDP Home Page.
|
|
</para>
|
|
<para>
|
|
Postings on the Usenet News groups, including the FAQ, are archived on
|
|
<ulink url="http://groups.google.com/">
|
|
<literal>http://groups.google.com/</literal></ulink>. Search for
|
|
``<literal>comp.os.linux.*</literal>,''
|
|
``<literal>alt.uu.comp.os.linux.*</literal>, or whatever is
|
|
appropriate, to retrieve articles from the Linux News groups.
|
|
(``<xref linkend="what-newsgroups" endterm="what-newsgroups">'')
|
|
</para>
|
|
<para>
|
|
Commercial distributions are available from book and electronics
|
|
stores. Some hardware vendors now ship systems with Linux pre-installed.
|
|
</para>
|
|
<para>
|
|
There is a very thorough installation guide on line at
|
|
<ulink url="http://heather.cs.ucdavis.edu/~matloff/linux.html"><literal>
|
|
http://heather.cs.ucdavis.edu/~matloff/linux.html</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
Some distributions can still be installed via anonymous FTP from
|
|
various Linux archive sites, but in many cases, the size of the
|
|
distribution makes this impractical. (``<xref
|
|
linkend="get-linux-material-by-ftp"
|
|
endterm="get-linux-material-by-ftp">'') There are also a large number
|
|
of releases which are distributed less globally that suit
|
|
special local and national needs. Many of them are archived at
|
|
<ulink url="ftp://ftp.tux.org/">
|
|
<literal>ftp://ftp.tux.org/</literal></ulink>
|
|
</para>
|
|
|
|
</sect2>
|
|
<sect2 label="1.3">
|
|
<title id="what-software-does-linux-support">
|
|
What Software does Linux Support?</title>
|
|
<para>
|
|
All of the standard open source utilities, like GCC, (X)Emacs, the
|
|
X Window System, all the standard Unix utilities, TCP/IP (including
|
|
SLIP and PPP), and all of the hundreds of programs that people have
|
|
compiled or ported to it.
|
|
</para>
|
|
<para>
|
|
There is a DOS emulator, called DOSEMU. The latest stable release is
|
|
0.98.3. The FTP archives are at
|
|
<ulink url="ftp://ftp.dosemu.org/dosemu">
|
|
<literal>ftp://ftp.dosemu.org/dosemu</literal></ulink>
|
|
The Web site is
|
|
<ulink url="http://www.dosemu.org"><literal>http://www.dosemu.org
|
|
</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
The emulator can run DOS itself and some (but not all) DOS
|
|
applications. Be sure to look at the <filename>README</filename>
|
|
file to determine which version you should get. Also, see the
|
|
<citetitle>DOSEMU-HOWTO</citetitle> (slightly dated at
|
|
this point—it doesn't cover the most recent version of the program),
|
|
at
|
|
<ulink url="ftp://metalab.unc.edu/pub/Linux/docs/HOWTO">
|
|
<literal>ftp://metalab.unc.edu/pub/Linux/docs/HOWTO</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
Work has been progressing on an emulator for Microsoft Windows
|
|
binaries. (``<xref linkend="microsoft-windows-programs-underlinux"
|
|
endterm="microsoft-windows-programs-underlinux">'')
|
|
</para>
|
|
<para>
|
|
iBCS2 (Intel Binary Compatibility Standard) emulator code for SVR4 ELF
|
|
and SVR3.2 COFF binaries can be included in the kernel as a
|
|
compile-time option. There is information at
|
|
<ulink url="ftp://tsx-11.mit.edu/pub/linux/BETA/ibcs2/README"><literal>
|
|
ftp://tsx-11.mit.edu/pub/linux/BETA/ibcs2/README</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
For more information see the <citetitle>INFO-SHEET</citetitle>, which
|
|
is one of the HOWTO's (``<xref
|
|
linkend="howtos-and-other-documentation"
|
|
endterm="howtos-and-other-documentation">'' and ``<xref
|
|
linkend="port-xxx-to-linux" endterm="port-xxx-to-linux">'')
|
|
</para>
|
|
<para>
|
|
Some companies have commercial software available. They often
|
|
announce their availability on
|
|
<citetitle>comp.os.linux.announce</citetitle>— try searching the
|
|
archives. (``<xref linkend="are-the-newsgroups-archived-anywhere"
|
|
endterm="are-the-newsgroups-archived-anywhere">'')
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="1.4">
|
|
<title id="ported-compiled-written-xxx">
|
|
How to Find a Particular Application.</title>
|
|
<para>
|
|
Look first in the Linux Software Map. It's at:
|
|
<ulink url="ftp://metalab.unc.edu/pub/Linux/docs/linux-software-map/">
|
|
<literal>ftp://ibiblio.org/pub/Linux/docs/linux-software-map/</literal>
|
|
</ulink>, and on the other FTP sites. A search engine is available on
|
|
the World Wide Web at
|
|
<ulink url="http://www.boutell.com/lsm/">
|
|
<literal>http://www.boutell.com/lsm/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
Also check out the <emphasis>Freshmeat</emphasis> Web site:
|
|
<ulink url="http://www.freshmeat.net/">
|
|
<literal>http://www.freshmeat.net</literal></ulink>, which is where
|
|
many new announcements of free software first appear. Freshmeat is
|
|
basically a site index that continuously updates the notices of new or
|
|
upgraded software for Linux, and maintains indexes of the announcements
|
|
and links to their URL's.
|
|
</para>
|
|
<para>
|
|
The FTP sites (``<xref linkend="get-linux-material-by-ftp"
|
|
endterm="get-linux-material-by-ftp">'') often have
|
|
<filename>ls-lR</filename> or <filename>INDEX</filename> directory
|
|
listings which you can search using <command>grep</command> or a text
|
|
editor. The directory listings files can be very large, however, making
|
|
them unwieldy for quick searches.
|
|
</para>
|
|
<para>
|
|
Also look at the Linux Projects Map:
|
|
<ulink url="ftp://ftp.ix.de/pub/ix/Linux/docs/Projects-Map.gz">
|
|
<literal>ftp://ftp.ix.de/pub/ix/Linux/docs/Projects-Map.gz</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
There's a search engine for Linux FTP archives at:
|
|
<ulink url="http://lfw.linuxhq.com/">
|
|
<literal>http://lfw.linuxhq.com/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
Searching for ``Linux'' on the World Wide Web provides
|
|
copious references.
|
|
(``<xref linkend="world-wide-web-for-linux-stuff"
|
|
endterm="world-wide-web-for-linux-stuff">'')
|
|
|
|
</para>
|
|
<para>
|
|
If you don't find anything, you could download the sources to the
|
|
program yourself and compile them. See
|
|
(See: ``<xref linkend="port-xxx-to-linux"
|
|
endterm="port-xxx-to-linux">'')
|
|
If it's a large package that may require some porting, post
|
|
a message to <citetitle>comp.os.linux.development.apps</citetitle>.
|
|
</para>
|
|
<para>
|
|
If you compile a large-ish program, please upload it to one or more of
|
|
the FTP sites, and post a message to
|
|
<citetitle>comp.os.linux.announce</citetitle> (submit
|
|
your posting to
|
|
<ulink url="mailto:linux-announce@news.ornl.gov">
|
|
<literal>linux-announce@news.ornl.gov</literal></ulink>).
|
|
</para>
|
|
<para>
|
|
If you're looking for an application program, the chances are that
|
|
someone has already written a free version. The
|
|
<citetitle>comp.sources.wanted</citetitle>
|
|
FAQ has instructions for finding the source code.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="1.5">
|
|
<title id="does-linux-run-on-my-computer">
|
|
What Hardware Is Supported?</title>
|
|
<para>
|
|
A minimal Linux installation requires a machine for which a port
|
|
exists, at least 2Mb of RAM, and a single floppy drive. But to do anything
|
|
even remotely useful, more RAM and disk space are needed. Refer to:
|
|
``<xref linkend="what-ports-to-other-processors-are-there"
|
|
endterm="what-ports-to-other-processors-are-there">'', ``<xref
|
|
linkend= "how-much-hard-disk-space-does-linux-need"
|
|
endterm="how-much-hard-disk-space-does-linux-need">'', and ``<xref
|
|
linkend="how-much-memory-does-linux-need"
|
|
endterm="how-much-memory-does-linux-need">''
|
|
</para>
|
|
<para>
|
|
Intel CPU, PC-compatible machines require at least an 80386 processor
|
|
to run the standard Linux kernel.
|
|
</para>
|
|
<para>
|
|
Linux, including the X Window System GUI, runs on most current
|
|
laptops. Refer to the answer for: ``<xref
|
|
linkend="my-notebook-runs-linux" endterm="my-notebook-runs-linux">''
|
|
There are numerous sources of information about specific PC's, video
|
|
cards, disk controllers, and other hardware. Refer to the
|
|
<citetitle>INFO-SHEET</citetitle>, <citetitle>Laptop
|
|
HOWTO</citetitle>, and the <citetitle>Hardware HOWTO</citetitle>.
|
|
(``<xref
|
|
linkend="howtos-and-other-documentation"
|
|
endterm="howtos-and-other-documentation">'')
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="1.6">
|
|
<title id="what-ports-to-other-processors-are-there">
|
|
Ports to Other Processors.</title>
|
|
<para>
|
|
The Web site, Overview of Linux Ports: <ulink
|
|
url="http://www.itp.uni-hannover.de/~kreutzm/de/lin_plattforms.html">
|
|
<literal>http://www.itp.uni-hannover.de/~kreutzm/de/lin_plattforms.html
|
|
</literal></ulink> provides a listing of known ports.
|
|
</para>
|
|
<para>
|
|
Another site with a list of ports is:
|
|
<ulink url="http://lodda.igo.uni-hannover.de/ports/linux_ports.html">
|
|
<literal>http://lodda.igo.uni-hannover.de/ports/linux_ports.html</literal>
|
|
</ulink>
|
|
</para>
|
|
<para>
|
|
In addition,
|
|
the following information is available about specific ports:
|
|
</para>
|
|
<para>
|
|
On Intel platforms, VESA Local Bus and PCI bus are supported.
|
|
</para>
|
|
<para>
|
|
MCA (IBM's proprietary bus) and ESDI hard drives are mostly supported.
|
|
There is further information on the MCA bus and what cards Linux
|
|
supports on the Micro Channel Linux Web page,
|
|
<ulink url="http://www.dgmicro.com/mca">
|
|
<literal>http://www.dgmicro.com/mca</literal></ulink>. Refer also to
|
|
the answer for: ``<xref linkend="world-wide-web-for-linux-stuff"
|
|
endterm="world-wide-web-for-linux-stuff">''
|
|
</para>
|
|
<para>
|
|
There is a port of Linux to the 8086, known as the Embeddable Linux
|
|
Kernel Subset (ELKS). This is a 16-bit subset of the Linux kernel
|
|
which will mainly be used for embedded systems, at:
|
|
<ulink url="http://www.linux.org.uk/Linux8086.html">
|
|
<literal>http://www.linux.org.uk/Linux8086.html</literal></ulink>.
|
|
Standard Linux does not run 8086 or 80286 processors, because it
|
|
requires task-switching and memory management facilities found on
|
|
80386 and later processors.
|
|
</para>
|
|
<para>
|
|
Linux supports multiprocessing with Intel MP architecture. See the
|
|
file <filename>Documentation/smp.tex</filename> in the Linux kernel
|
|
source code distribution.
|
|
</para>
|
|
<para>
|
|
A project has been underway for a while to port Linux to suitable
|
|
68000-series based systems like Amigas and Ataris. The Linux/m68K FAQ
|
|
is located at
|
|
<ulink url="http://www.clark.net/pub/lawrencc/linux/faq/faq.html">
|
|
<literal>http://www.clark.net/pub/lawrencc/linux/faq/faq.html</literal>
|
|
</ulink>. The URL of the Linux/m68k home page is
|
|
<ulink url="http://www.linux-m68k.org/faq/faq.html">
|
|
<literal>http://www.linux-m68k.org/faq/faq.html</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
There is a m68k port for the Amiga by Jes Sorensen, which is located
|
|
at
|
|
<ulink url="ftp://sunsite.auc.dk/pub/os/linux/680x0/redhat/">
|
|
<literal>ftp://sunsite.auc.dk/pub/os/linux/680x0/redhat/</literal></ulink>.
|
|
The installation FAQ for the package, by Ron Flory, is at
|
|
<ulink url="http://www.feist.com/~rjflory/linux/rh/">
|
|
<literal>http://www.feist.com/~rjflory/linux/rh/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
There is also a linux-680x0 mailing list.
|
|
(``<xref
|
|
linkend="what-mailing-lists-are-there"
|
|
endterm="what-mailing-lists-are-there">'')
|
|
</para>
|
|
<para>
|
|
There is (or was) a FTP site for the Linux-m68k project on
|
|
<ulink url="ftp.phil.uni-sb.de/pub/atari/linux-68k">
|
|
<literal>ftp.phil.uni-sb.de/pub/atari/linux-68k</literal></ulink>,
|
|
but this address may no longer be current.
|
|
</para>
|
|
<para>
|
|
Debian GNU/Linux is being ported to Alpha, Sparc, PowerPC, and ARM
|
|
platforms. There are mailing lists for all of them. See
|
|
<ulink url="http://www.debian.org/MailingLists/subscribe">
|
|
<literal>http://www.debian.org/MailingLists/subscribe</literal></ulink>
|
|
</para>
|
|
<para>
|
|
One of the Linux-PPC project pages has moved recently. Its location is
|
|
<ulink url="http://www.debian.org/MailingLists/subscribe">
|
|
<literal>http://www.debian.org/MailingLists/subscribe</literal></ulink>.
|
|
<ulink url="http://www.linuxppc.org">
|
|
<literal>http://www.linuxppc.org</literal></ulink>,
|
|
and the archive site is
|
|
<ulink url="ftp://ftp.linuxppc.org/linuxppc">
|
|
<literal>ftp://ftp.linuxppc.org/linuxppc</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
There is a Linux-PPC support page at
|
|
<ulink url="http://www.cs.nmt.edu/~linuxppc/">
|
|
<literal>http://www.cs.nmt.edu/~linuxppc/</literal></ulink>.
|
|
There you will find the kernel that is distributed with Linux.
|
|
</para>
|
|
<para>
|
|
There are two sites for the Linux iMac port:
|
|
<ulink url="http://w3.one.net/~johnb/imaclinux">
|
|
<literal>http://w3.one.net/~johnb/imaclinux</literal></ulink>, and
|
|
<ulink url="http://www.imaclinux.net:8080/content/index.html">
|
|
<literal>http://www.imaclinux.net:8080/content/index.html</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
A port to the 64-bit DEC Alpha/AXP is at
|
|
<ulink url="http://www.azstarnet.com/~axplinux/">
|
|
<literal>http://www.azstarnet.com/~axplinux/</literal></ulink>.
|
|
There is a mailing list at <literal>vger.redhat.com</literal>:
|
|
(``<xref
|
|
linkend="what-mailing-lists-are-there"
|
|
endterm="what-mailing-lists-are-there">'')
|
|
</para>
|
|
<para>
|
|
Ralf Baechle is working on a port to the MIPS, initially for the R4600
|
|
on Deskstation Tyne machines. The
|
|
<citetitle>Linux-MIPS</citetitle> FTP sites are
|
|
<ulink url="ftp://ftp.fnet.fr/linux-mips">
|
|
<literal>ftp://ftp.fnet.fr/linux-mips</literal></ulink>
|
|
and
|
|
<ulink url="ftp://ftp.linux.sgi.com/pub/mips-linux">
|
|
<literal>ftp://ftp.linux.sgi.com/pub/mips-linux</literal></ulink>.
|
|
Interested people may mail their questions and offers of assistance to
|
|
<ulink url="mailto:linux@waldorf-gmbh.de"><literal>
|
|
linux@waldorf-gmbh.de</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
There is (or was) also a MIPS channel on the Linux Activists mail
|
|
server and a linux-mips mailing list.
|
|
(``<xref
|
|
linkend="what-mailing-lists-are-there"
|
|
endterm="what-mailing-lists-are-there">'')
|
|
</para>
|
|
<para>
|
|
There are currently two ports of Linux to the ARM family of
|
|
processors. One of these is for the ARM3, fitted to the Acorn A5000,
|
|
and it includes I/O drivers for the 82710/11 as appropriate. The other
|
|
is to the ARM610 of the Acorn RISC PC. The RISC PC port is currently
|
|
in its early to middle stages, owing to the need to rewrite much of
|
|
the memory handling. The A5000 port is in restricted beta testing. A
|
|
release is likely soon.
|
|
</para>
|
|
<para>
|
|
For more, up-to-date information, read the newsgroup
|
|
<citetitle>comp.sys.acorn.misc</citetitle>. There is a FAQ at
|
|
<ulink url="http://www.arm.uk.linux.org">
|
|
<literal>http://www.arm.uk.linux.org</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
The Linux SPARC project is a hotbed of activity. There is a FAQ and
|
|
plenty of other information available from the UltraLinux page,
|
|
<ulink
|
|
url="http://www.ultralinux.org/">
|
|
<literal>http://www.ultralinux.org/</literal></ulink>.
|
|
|
|
</para>
|
|
<para>
|
|
The Home Page of the UltraSPARC port ("UltraPenguin") is located at
|
|
<ulink url="http://sunsite.mff.cuni.cz/linux/ultrapenguin-1.0/">
|
|
<literal>http://sunsite.mff.cuni.cz/linux/ultrapenguin-1.0/</literal></ulink>,
|
|
although the URL may not be current.
|
|
</para>
|
|
<para>
|
|
There is also a port to SGI/Indy machines ("Hardhat"). The URL is
|
|
<ulink url="http://www.linux.sgi.com/">
|
|
<literal>http://www.linux.sgi.com/</literal></ulink>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="1.7">
|
|
<title id="how-much-hard-disk-space-does-linux-need">
|
|
Disk Space Requirements: Minimal, Server, and Workstation.</title>
|
|
<para>
|
|
About 10Mb for a very minimal installation, suitable for trying Linux,
|
|
and not much else.
|
|
</para>
|
|
<para>
|
|
You can fit a typical server installation, including the X Window
|
|
Systemt GUI, into 80Mb. Installing Debian GNU/Linux takes
|
|
500Mb–1GB, including kernel source code, some space for user
|
|
files, and spool areas.
|
|
</para>
|
|
<para>
|
|
Installing a commercial distribution that has a desktop GUI
|
|
environment, commercial word processor, and front-office productivity
|
|
suite, will claim 1–1.5 GB of disk space, approximately.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="1.8">
|
|
<title id="how-much-memory-does-linux-need">
|
|
Minimum and Maximum Memory Requirements.</title>
|
|
<para>
|
|
At least 4MB, and then you will need to use special installation
|
|
procedures until the disk swap space is installed. Linux will run
|
|
comfortably in 4MB of RAM, although running GUI apps is impractically
|
|
slow because they need to swap out to disk.
|
|
</para>
|
|
<para>
|
|
Some applications, like StarOffice, require 32 MB of physical memory,
|
|
and compiling C++ code can easily consume over 100 MB of combined
|
|
physical and virtual memory.
|
|
</para>
|
|
<para>
|
|
There is a distribution, ``Small Linux,'' that will run on machines
|
|
with 2MB of RAM. Refer to the answer to:
|
|
``<xref linkend="get-linux-material-by-ftp"
|
|
endterm="get-linux-material-by-ftp">''
|
|
</para>
|
|
<para>
|
|
A number of people have asked how to address more than 64 MB of
|
|
memory, which is the default upper limit in most standard
|
|
kernels. Either type, at the <literal>BOOT lilo:</literal> prompt:
|
|
</para>
|
|
<para>
|
|
<screen>
|
|
mem=XXM
|
|
</screen>
|
|
</para>
|
|
<para>
|
|
Or place the following in your <filename>/etc/lilo.conf</filename>
|
|
file:
|
|
</para>
|
|
<para>
|
|
<programlisting>
|
|
append="mem=XXM"
|
|
</programlisting>
|
|
</para>
|
|
<para>
|
|
The parameter ``<emphasis>XX</emphasis>M'' is the amount of memory,
|
|
specified as megabytes; for example, ``128M.''
|
|
</para>
|
|
<para>
|
|
If an ``<literal>append=</literal>'' directive with other
|
|
configuration options already exists in
|
|
<filename>/etc/lilo.conf</filename>, then add the
|
|
<literal>mem=</literal> directive to the end of the existing
|
|
argument, and separated from the previous arguments by a space; e.g.:
|
|
</para>
|
|
<para>
|
|
<programlisting>
|
|
# Example only; do not use.
|
|
append="parport=0x3bc,none serial=0x3f8,4 mem=XXM"
|
|
</programlisting>
|
|
</para>
|
|
<para>
|
|
Be sure to run the ``<command>lilo</command>'' command to install the
|
|
new configuration.
|
|
</para>
|
|
<para>
|
|
If Linux still doesn't recognize the extra memory, the kernel may
|
|
need additional configuration. Refer to the
|
|
<filename>/usr/src/linux/Documentation/memory.txt</filename> file in
|
|
the kernel source as a start.
|
|
</para>
|
|
<para>
|
|
For further information about LILO, refer to the
|
|
manual pages for <command>lilo</command> and <filename>lilo.conf</filename>,
|
|
the documentation in <filename>/usr/doc/lilo</filename>, and the answer
|
|
for:
|
|
``<xref linkend="boot-time-parameters"
|
|
endterm="boot-time-parameters">'', below.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="1.9">
|
|
<title id="does-linux-support-the-usb-bus">
|
|
Does Linux Support Universal System Bus Devices?</title>
|
|
<para>
|
|
Linux supports a few dozen USB devices at present, and work is
|
|
underway to develop additional device drivers.
|
|
There is a Web page devoted to the subject, at
|
|
<ulink url="http://www.linux-usb.org/">
|
|
<literal>http://www.linux-usb.org/</literal></ulink>. There is also
|
|
LDP documentation, at: (``<xref
|
|
linkend="world-wide-web-for-linux-stuff"
|
|
endterm="world-wide-web-for-linux-stuff">'')
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="1.10">
|
|
<title id="is-linux-public-domain-copyrighted">
|
|
What Is Linux's Open-Source License?</title>
|
|
<para>
|
|
The Linux trademark belongs to Linus Torvalds. He has placed the Linux
|
|
kernel under the GNU General Public License, which basically means
|
|
that you may freely copy, change, and distribute it, but you may not
|
|
impose any restrictions on further distribution, and you must make the
|
|
source code available.
|
|
</para>
|
|
<para>
|
|
There is a FAQ for the GPL at:
|
|
<ulink url="http://www.gnu.org/copyleft/gnu-faq.html">
|
|
<literal>http://www.gnu.org/copyleft/gnu-faq.html</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
This is not the same as Public Domain. See the Copyright FAQ,
|
|
<ulink url="ftp://rtfm.mit.edu/pub/usenet/news.answers/law/copyright">
|
|
<literal>
|
|
ftp://rtfm.mit.edu/pub/usenet/news.answers/law/copyright</literal>
|
|
</ulink>, for details.
|
|
</para>
|
|
<para>
|
|
Full details are in the file <filename>COPYING</filename>
|
|
in the Linux kernel sources
|
|
(probably in <filename>/usr/src/linux</filename> on your system).
|
|
</para>
|
|
<para>
|
|
The licenses of the utilities and programs which come with the
|
|
installations vary. Much of the code is from the GNU Project at the
|
|
Free Software Foundation, and is also under the GPL.
|
|
</para>
|
|
<para>
|
|
Note that discussion about the merits or otherwise of the GPL should
|
|
be posted to the news group gnu.misc.discuss, and not to the
|
|
<citetitle>comp.os.linux</citetitle> hierarchy.
|
|
</para>
|
|
<para>
|
|
For legal questions, refer to the answer:
|
|
(``<xref linkend="where-are-linux-legal-issues-discussed"
|
|
endterm="where-are-linux-legal-issues-discussed">'')
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="1.11">
|
|
<title id="is-linux-nix">Is Linux *nix?</title>
|
|
<para>
|
|
Not officially, until it passes the Open Group's certification tests,
|
|
and supports the necessary API's. Even very few of the commercial
|
|
operating systems have passed the Open Group tests. For more
|
|
information, see
|
|
<ulink url="http://www.unix-systems.org/what_is_unix.html">
|
|
<literal>http://www.unix-systems.org/what_is_unix.html</literal></ulink>.
|
|
</para>
|
|
<para>[Bob Friesenhahn]</para>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
<sect1 label="2">
|
|
<title>Network Sources and Resources</title>
|
|
<sect2 label="2.1">
|
|
<title id="where-can-i-get-the-latest-kernel-version">
|
|
Where Is the Latest Kernel Version on the Internet?</title>
|
|
<para>
|
|
Make that versions. The 2.0 series kernels are still available for
|
|
older machines. The latest production kernel series is 2.2.x. The
|
|
updates to this kernel are bug fixes. The new 2.4 kernel sources are
|
|
also on-line.
|
|
</para>
|
|
<para>
|
|
The Web page at
|
|
<ulink url="http://www.kernel.org/">
|
|
<literal>http://www.kernel.org/</literal></ulink> lists the current
|
|
versions of the development and production kernels.
|
|
</para>
|
|
<para>
|
|
If you want to download the source code, FTP to
|
|
<literal>ftp.xx.kernel.org</literal>, where ``<literal>xx</literal>''
|
|
is the two-letter Internet domain abbreviation of your country; e.g.,
|
|
``<literal>us</literal>'' for United States, ``<literal>ca</literal>''
|
|
for Canada, or ``<literal>de</literal>'' for Germany. Kernel versions
|
|
2.2.x are archived in the directory
|
|
<filename>pub/linux/kernel/v2.2</filename>, as are patches for the
|
|
prerelease versions. The kernel source code is archived as a
|
|
<literal>.tar.gz</literal> file, and as a <literal>.tar.bz2</literal>
|
|
file.
|
|
</para>
|
|
<para>
|
|
Follow the instructions in any of the standard references to compile
|
|
the kernel, as you would with any other custom kernel. The
|
|
<filename>Documentation</filename> subdirectory contains information
|
|
by the authors of various subsystems and drivers, and much of that
|
|
information is not documented elsewhere.
|
|
</para>
|
|
<para>
|
|
If you want to participate in kernel development, make sure that you
|
|
sign on to the linux-kernel mailing list to find out what people are
|
|
working on. Refer to the answer: ``<xref
|
|
linkend="what-mailing-lists-are-there"
|
|
endterm="what-mailing-lists-are-there">''
|
|
</para>
|
|
<para>
|
|
There is a story about the features of the 2.4 series kernels at
|
|
<ulink url="http://features.linuxtoday.com/stories/8191.html">
|
|
<literal>http://features.linuxtoday.com/stories/8191.html</literal></ulink>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="2.2">
|
|
<title id="howtos-and-other-documentation">
|
|
Where Is the Documentation?</title>
|
|
<para>
|
|
Look in the following places, and the sites that mirror them.
|
|
</para>
|
|
<para>
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>
|
|
<ulink url="http://www.linuxdoc.org/">
|
|
<literal>http://www.linuxdoc.org/</literal></ulink>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
<ulink url="ftp://ftp.funet.fi/pub/OS/Linux/doc/HOWTO/">
|
|
<literal>ftp://ftp.funet.fi/pub/OS/Linux/doc/HOWTO/</literal></ulink>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
<ulink url="ftp://tsx-11.mit.edu/pub/linux/docs/HOWTO/">
|
|
<literal>ftp://tsx-11.mit.edu/pub/linux/docs/HOWTO/</literal></ulink>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
<ulink url="ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/">
|
|
<literal>ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/</literal></ulink>
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
</para>
|
|
<para>
|
|
For a list of Linux FTP sites, refer to the answer for:
|
|
``<xref linkend="get-linux-material-by-ftp"
|
|
endterm="get-linux-material-by-ftp">''
|
|
</para>
|
|
<para>
|
|
If you don't have access to FTP, try the FTP-by-mail servers:
|
|
<ulink url="mailto:ftpmail@decwrl.dec.com">
|
|
<literal>ftpmail@decwrl.dec.com</literal></ulink>,
|
|
<ulink url="mailto:ftpmail@doc.ic.ac.uk">
|
|
<literal>ftpmail@doc.ic.ac.uk</literal></ulink>, or:
|
|
<ulink url="mailto:ftp-mailer@informatik.tu-muenchen.de">
|
|
<literal>ftp-mailer@informatik.tu-muenchen.de</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
A complete list of HOWTO's is available in the file
|
|
<citetitle>HOWTO-INDEX</citetitle> at
|
|
<ulink url="http://www.linuxdoc.org/HOWTO/HOWTO-INDEX/howtos.html">
|
|
<literal>http://www.linuxdoc.org/HOWTO/HOWTO-INDEX/howtos.html.</literal>
|
|
</ulink>
|
|
The mini-HOWTO's are indexed at
|
|
<ulink url="http://www.linuxdoc.org/HOWTO/HOWTO-INDEX/mini.html">
|
|
<literal>http://www.linuxdoc.org/HOWTO/HOWTO-INDEX/mini.html.</literal>
|
|
</ulink>
|
|
</para>
|
|
<para>
|
|
A search engine at the Linux FAQ Home Page,
|
|
<ulink url="http://www.mainmatter.com/">
|
|
<literal>http://www.mainmatter.com/</literal></ulink>,
|
|
allows you to search LDP HOWTO's, the Linux FAQ, man pages, and
|
|
<citetitle>Network Administrator's Guide</citetitle>.
|
|
</para>
|
|
<para>
|
|
In addition, translations are available from
|
|
<ulink url="ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/translations/">
|
|
<literal>ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/translations/
|
|
</literal></ulink>
|
|
and mirrors worldwide. The HOWTO's and other documentation have been
|
|
translated into the following languages:
|
|
</para>
|
|
<!--
|
|
<informaltable frame=none>
|
|
<tgroup cols=3>
|
|
<tbody>
|
|
<row>
|
|
<entry>Chinese (zh)</entry>
|
|
<entry>Croatian (hr)</entry>
|
|
<entry>French (fr)</entry>
|
|
</row>
|
|
<row>
|
|
<entry>German (de)</entry>
|
|
<entry>Hellenic (el)</entry>
|
|
<entry>Indonesian (id)</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Italian (it)</entry>
|
|
<entry>Japanese (ja)</entry>
|
|
<entry>Korean (ko)</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Polish (pl)</entry>
|
|
<entry>Slovenian (sl)</entry>
|
|
<entry>Spanish (es)</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Swedish (sv)</entry>
|
|
<entry>Turkish (tr)</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</informaltable>
|
|
-->
|
|
<para>
|
|
<screen>
|
|
Chinese (Big5) (zh) Croatian (hr) French (fr)
|
|
German (de Hellenic (el) Indonesian (id)
|
|
Italian (it) Japanese (ja) Korean (ko)
|
|
Polish (pl) Slovenian (sl) Spanish (es)
|
|
Swedish (sv) Turkish (tr)
|
|
</screen>
|
|
</para>
|
|
<para>
|
|
Additional documents are always in preparation. Please get in touch
|
|
with the coordinators if you are interested in writing one.
|
|
Contact and submission information is at
|
|
<ulink url="http://www.linuxdoc.org/mailinfo.html">
|
|
<literal>http://www.linuxdoc.org/mailinfo.html</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
There is also a LDP HOWTO page at
|
|
<ulink url="http://howto.tucows.org/">
|
|
<literal>http://howto.tucows.org/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
The Guide Series produced by the Linux Documentation Project is
|
|
available from
|
|
<ulink url="http://www.linuxdoc.org/">
|
|
<literal>http://www.linuxdoc.org/</literal></ulink>. Please read them if you
|
|
are new to Unix and Linux.
|
|
</para>
|
|
<para>
|
|
The <citetitle>Linux Mobile Guide</citetitle> is an expanded version
|
|
of the <citetitle>Linux-Laptop-HOWTO</citetitle>. The URL is:
|
|
<ulink url="http://home.snafu.de/wehe/howtos.html">
|
|
<literal>http://home.snafu.de/wehe/howtos.html</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
And, of course, a number of people have written documentation
|
|
independently of the LDP:
|
|
</para>
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para><citetitle>Linux Administrators Security Guide,</citetitle>
|
|
by Kurt Seifried.
|
|
<ulink url="http://www.freek.com/lasg/">
|
|
<literal>http://www.freek.com/lasg/</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>Newbie's Linux Manual.</citetitle>
|
|
<ulink url="http://www.linuxdoc.org/nlm/">
|
|
<literal>http://www.linuxdoc.org/nlm/</literal>
|
|
</ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>One-Page Linux Manual.</citetitle>
|
|
<ulink url="http://www.powerup.com.au/~squadron/">
|
|
<literal>http://www.powerup.com.au/~squadron/</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>Rute Users Tutorial and Exposition.</citetitle>
|
|
<ulink url="http://rute.sourceforge.net/">
|
|
<literal>http://rute.sourceforge.net/</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>Short beginners' manual for Linux.</citetitle>
|
|
Also available in Dutch.
|
|
<ulink url="http://www.stuwww.kub.nl/people/b.vannunen/linux-man.php3">
|
|
<literal>http://www.stuwww.kub.nl/people/b.vannunen/linux-man.php3
|
|
</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>Virtual Frame buffer HOWTO,</citetitle>
|
|
by Alex Buell.
|
|
<ulink url="http://www.tahallah.demon.co.uk/programming/prog.html">
|
|
<literal>http://www.tahallah.demon.co.uk/programming/prog.html
|
|
</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>X11 & TrueType Fonts,</citetitle> by Peter Kleiweg.
|
|
<ulink url="http://www.let.rug.nl/~kleiweg/">
|
|
<literal>http://www.let.rug.nl/~kleiweg/</literal></ulink>.</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
<para>
|
|
Documentation for kernel developers is on-line:
|
|
<ulink url="http://kernelbook.sourceforge.net">
|
|
<literal>http://kernelbook.sourceforge.net/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
To find out about Linux memory management, including performance
|
|
tuning, see Rik van Riel's Web page at
|
|
<ulink url="http://humbolt.geo.uu.nl/Linux-MM/">
|
|
<literal>http://humbolt.geo.uu.nl/Linux-MM/</literal></ulink>.</para>
|
|
<para>
|
|
The Linux Consultants HOWTO has a directory of Linux consultants at
|
|
<ulink url="http://www.linuxports.com/">
|
|
<literal>http://www.linuxports.com/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
Gary's Encyclopedia lists over 4,000 Linux related links. Its URL is
|
|
<ulink url="http://members.aa.net/~swear/pedia/index.html">
|
|
<literal>http://members.aa.net/~swear/pedia/index.html</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
There is also a FAQ specifically for the Red Hat Linux distribution,
|
|
at
|
|
<ulink url="http://www.best.com/~aturner/RedHat-FAQ/faq_index.html">
|
|
<literal>http://www.best.com/~aturner/RedHat-FAQ/faq_index.html
|
|
</literal></ulink>.</para>
|
|
<para>
|
|
And the Home Page of this FAQ is
|
|
<ulink url="http://www.mainmatter.com/">
|
|
<literal>http://www.mainmatter.com/</literal></ulink>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="2.3">
|
|
<title id="world-wide-web-for-linux-stuff">
|
|
Where Is the Linux Stuff on the World Wide Web?</title>
|
|
<para>
|
|
In addition to the Linux Documentation Project Home Page:
|
|
<ulink url="http://www.linuxdoc.org/">
|
|
<literal>http://www.linuxdoc.org/</literal></ulink>,
|
|
there are many pages that provide
|
|
beginning and advanced information about Linux.
|
|
</para>
|
|
<para>
|
|
These two pages provide a good starting point for general Linux
|
|
information: Linux International's Home Page, at
|
|
<ulink url="http://www.li.org/">
|
|
<literal>http://www.li.org/</literal></ulink>,
|
|
and the Linux Online's Linux Home Page at
|
|
<ulink url="http://www.linux.org/">
|
|
<literal>http://www.linux.org/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
Both of these pages provide links to other sites, information about
|
|
general information, distributions, new software, documentation, and
|
|
news.
|
|
</para>
|
|
<para>
|
|
Documentation for kernel developers is on-line:
|
|
<ulink url="http://kernelbook.sourceforge.net">
|
|
<literal>http://kernelbook.sourceforge.net/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
The tutorial, <citetitle>Unix is a Four Letter Word...,</citetitle>
|
|
is located at
|
|
<ulink url="http://www.linuxbox.com/~taylor/4ltrwrd/">
|
|
<literal>http://www.linuxbox.com/~taylor/4ltrwrd/</literal></ulink>.
|
|
It is a general introduction to Unix operating systems and is not
|
|
Linux specific.
|
|
</para>
|
|
<para>
|
|
Additionally, here is a certainly incomplete list of Web pages devoted
|
|
to Linux:
|
|
</para>
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>AboutLinux.com:
|
|
<ulink url="http://www.aboutlinux.com/">
|
|
<literal>http://www.aboutlinux.com/</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Adventures in Linux Programming:
|
|
<ulink url="http://members.tripod.com/rpragana/">
|
|
<literal>http://members.tripod.com/rpragana/</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Dave Central Linux Software Archive:
|
|
<ulink url="http://linux.davecentral.com/">
|
|
<literal>http://linux.davecentral.com/</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>debianHELP <ulink url="http://www.debianhelp.org/">
|
|
<literal>http://www.debianhelp.org/</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Erlug Webzine (Italian):
|
|
<ulink url="http://www.erlug.linux.it/">
|
|
<literal>http://www.erlug.linux.it/</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Free Unix Giveaway List:
|
|
<ulink url="http://visar.csustan.edu/giveaway.html">
|
|
<literal>http://visar.csustan.edu/giveaway.html</literal></ulink>.
|
|
Lists offers of free Linux CDs. Also available via
|
|
E-mail:
|
|
<ulink url="mailto:axel@visar.csustan.edu">
|
|
<literal>axel@visar.csustan.edu</literal></ulink>, with
|
|
the Subject: send giveaway_list.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Information on Linux in corporate environments:
|
|
<ulink url="http://www.smartstocks.com/linux.html">
|
|
<literal>http://www.smartstocks.com/linux.html</literal></ulink>.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Jeanette Russo's Linux Newbie Information:
|
|
<ulink url="http://www.stormloader.com/jrusso2/index.html">
|
|
<literal>http://www.stormloader.com/jrusso2/index.html</literal></ulink>.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>JustLinux.com:
|
|
<ulink url="http://www.justlinux.com/">
|
|
<literal>http://www.justlinux.com/</literal></ulink>.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Linux Cartoons:
|
|
<ulink url="http://www.cse.unsw.edu.au/~conradp/linux/cartoons/">
|
|
<literal>http://www.cse.unsw.edu.au/~conradp/linux/cartoons/
|
|
</literal></ulink>.</para>
|
|
<listitem>
|
|
<para>LinuxArtist.org:
|
|
<ulink url="http://www.linuxartist.org/">
|
|
<literal>http://www.linuxartist.org/</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Linuxinfor.com - Online Linux Resources:
|
|
<ulink url="http://www.linuxinfor.com/"><literal>http://www.linuxinfor.com/
|
|
</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>linuXChiX.org:
|
|
<ulink url="http://www.linuxchix.org/">
|
|
<literal>http://www.linuxchix.org/</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>LinuxDevices.com: The Embedded Linux Portal:
|
|
<ulink url="http://www.linuxdevices.com/">
|
|
<literal>http://www.linuxdevices.com</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Linux Educational Needs Posting Page:
|
|
<ulink url="http://www.slip.net/~brk/linuxedpp.htm">
|
|
<literal>http://www.slip.net/~brk/linuxedpp.htm</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Linux in Business: Case Studies:
|
|
<ulink url="http://www.bynari.com/collateral/case_studies.html">
|
|
<literal>http://www.bynari.com/collateral/case_studies.html</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Linux Hardware Database Laptop Superguide:
|
|
<ulink url="http://lhd.zdnet.com/db/superguide.php3?catid=18">
|
|
<literal>http://lhd.zdnet.com/db/superguide.php3?catid=18</literal></ulink>.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Linux Inside:
|
|
<ulink url="http://linuxinside.org/">
|
|
<literal>http://linuxinside.org/</literal></ulink>.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Linux Links:
|
|
<ulink url="http://www.linuxlinks.com/">
|
|
<literal>http://www.linuxlinks.com/</literal></ulink>.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Linux Memory Management Home Page:
|
|
<ulink url="http://humbolt.geo.uu.nl/Linux-MM/">
|
|
<literal>http://humbolt.geo.uu.nl/Linux-MM/</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Linux Newbie Project:
|
|
<ulink url="http://kusma.hypermart.net/">
|
|
<literal>http://kusma.hypermart.net/</literal></ulink>.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Linux on the Thinkpad 760ED:
|
|
<ulink url="http://www.e-oasis.com/linux-tp.html">
|
|
<literal>http://www.e-oasis.com/linux-tp.html</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>LinuxOrbit:
|
|
<ulink url="http://www.linuxorbit.com/">
|
|
<literal>http://www.linuxorbit.com/</literal></ulink></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Linux Parallel Port Home Page:
|
|
<ulink url="http://www.torque.net/linux-pp.html">
|
|
<literal>http://www.torque.net/linux-pp.html</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Linux MIDI & Sound Applications:
|
|
<ulink url="http://sound.condorow.net/">
|
|
<literal>http://sound.condorow.net/</literal></ulink>.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Linux Start:
|
|
<ulink url="http://www.linuxstart.com/">
|
|
<literal>http://www.linuxstart.com/</literal></ulink>.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Linux Tips and Tricks Page:
|
|
<ulink url="http://www.patoche.org/LTT/">
|
|
<literal>http://www.patoche.org/LTT/</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Linux Today PR:
|
|
<ulink url="http://www.linuxpr.com/">
|
|
<literal>http://www.linuxpr.com/</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Mandrakeuser.Org:
|
|
<ulink url="http://mandrakeuser.org/">
|
|
<literal>http://mandrakeuser.org/</literal></ulink>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>My Linux Contributions by Richard Gooch:
|
|
<ulink url="http://www.atnf.csiro.au/~rgooch/linux/">
|
|
<literal>http://www.atnf.csiro.au/~rgooch/linux/</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Micro Channel Linux Web Page:
|
|
<ulink url="http://www.dgmicro.com/mca/">
|
|
<literal>http://www.dgmicro.com/mca/</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Parallel port scanners and SANE:
|
|
<ulink url="http://www2.prestel.co.uk/hex/scanners.html">
|
|
<literal>http://www2.prestel.co.uk/hex/scanners.html</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Pascal Central: <ulink url="http://www.pascal-central.com/">
|
|
<literal>http://www.pascal-central.com/</literal></ulink></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>PegaSoft Portal:
|
|
<ulink url="http://www.vaxxine.com/pegasoft/portal/">
|
|
<literal>http://www.vaxxine.com/pegasoft/portal/</literal></ulink>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>PocketLinux.
|
|
<ulink url="http://www.pocketlinux.com/">
|
|
<literal>http://www.pocketlinux.com/</literal></ulink>.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Red Hat and ISDN4Linux:
|
|
<ulink url="http://www.webideal.de/">
|
|
<literal>http://www.webideal.de/</literal></ulink>.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>SearchLinux:
|
|
<ulink url="http://www.searchlinux.com/">
|
|
<literal>http://www.searchlinux.com/</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem><para>
|
|
The Free Linux CD Project: <ulink
|
|
url="http://www.freelinuxcd.org/">
|
|
<literal>http://www.freelinuxcd.org/</literal></ulink>.
|
|
</para></listitem>
|
|
<listitem><para>The Site for People Learning Perl: <ulink
|
|
url="http://learn.perl.org/">
|
|
<literal>http://learn.perl.org/</literal></ulink>.
|
|
</para></listitem>
|
|
<listitem>
|
|
<para>USB Linux Home Page:
|
|
<ulink url="http://peloncho.fis.ucm.es/~inaky/uusbd-www/">
|
|
<literal>http://peloncho.fis.ucm.es/~inaky/uusbd-www/</literal></ulink>.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>VLUG: The Virtual Linux Users Group:
|
|
<ulink url="http://www.vlug.com/">
|
|
<literal>http://www.vlug.com/</literal></ulink>.
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
<para>
|
|
Searching for ``<literal>Linux</literal>'' on Web Search Engines, like
|
|
Yahoo! (<ulink url="http://www.yahoo.com/">
|
|
<literal>http://www.yahoo.com/</literal></ulink>), Altavista
|
|
(<ulink url="http://www.altavista.com/">
|
|
<literal>http://www.altavista.com/</literal></ulink>),
|
|
or Google (<ulink url="http://www.google.com/">
|
|
<literal>http://www.google.com/</literal></ulink>) will provide
|
|
copious references to Linux Web sites. Further information about
|
|
about Web search engines is in the <citetitle>Web and Internet Search
|
|
Engine Faq</citetitle>: <ulink
|
|
url="http://www.infobasic.com/pagefaq.html">
|
|
<literal>http://www.infobasic.com/pagefaq.html</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
Refer also to the answer for:
|
|
``<xref linkend="what-other-faqs" endterm="what-other-faqs">''
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="2.4">
|
|
<title id="what-newsgroups">What News Groups Are There for Linux?</title>
|
|
<para>
|
|
<citetitle>Comp.os.linux.announce</citetitle> is the moderated
|
|
announcements group. You should read this if you intend to use Linux.
|
|
It contains information about software updates, new ports, user group
|
|
meetings, and commercial products. It is the <emphasis>only</emphasis>
|
|
newsgroup that may carry commercial postings. Submissions for that
|
|
group should be e-mailed to
|
|
<ulink url="mailto:linux-announce@news.ornl.gov">
|
|
<literal>linux-announce@news.ornl.gov</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
<citetitle>Comp.os.linux.announce</citetitle>
|
|
is archived at:
|
|
<ulink url="http://www.iki.fi/mjr/linux/cola.html">
|
|
<literal>http://www.iki.fi/mjr/linux/cola.html</literal></ulink>,
|
|
and
|
|
<ulink url="ftp://src.doc.ic.ac.uk/usenet/comp.os.linux.announce/">
|
|
<literal>ftp://src.doc.ic.ac.uk/usenet/comp.os.linux.announce/</literal>
|
|
</ulink>.
|
|
</para>
|
|
<para>
|
|
Also worth reading are the following other groups in the
|
|
<citetitle>comp.os.linux.*</citetitle> and
|
|
<citetitle>alt.uu.comp.os.linux.*</citetitle> hierarchies—you may
|
|
find many common problems too
|
|
recent for the documentation but are answered in the newsgroups.
|
|
</para>
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para><citetitle>alt.uu.comp.os.linux</citetitle></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>alt.uu.comp.os.linux.questions</citetitle></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>alt.os.linux</citetitle></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>alt.os.linux.mandrake</citetitle></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>comp.os.linux.admin</citetitle></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>comp.os.linux.advocacy</citetitle></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>comp.os.linux.alpha</citetitle></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>comp.os.linux.answers</citetitle></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>comp.os.linux.development</citetitle></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>comp.os.linux.development.apps</citetitle></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>comp.os.linux.development.system</citetitle></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>comp.os.linux.embedded</citetitle></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>comp.os.linux.hardware</citetitle></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>comp.os.linux.help</citetitle></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>comp.os.linux.m68k</citetitle></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>comp.os.linux.misc</citetitle></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>comp.os.linux.network</citetitle></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>comp.os.linux.networking</citetitle></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>comp.os.linux.portable</citetitle></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>comp.os.linux.powerpc</citetitle></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>comp.os.linux.questions</citetitle></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>comp.os.linux.redhat</citetitle></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>comp.os.linux.security</citetitle></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>comp.os.linux.setup</citetitle></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>comp.os.linux.test</citetitle></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>comp.os.linux.x</citetitle></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>comp.os.linux.x.video</citetitle></para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
<para>
|
|
Remember that Linux is POSIX compatible, and most all of the material
|
|
in the <citetitle>comp.unix.*</citetitle> and
|
|
<citetitle>comp.windows.x.*</citetitle> groups will be relevant. Apart
|
|
from hardware considerations, and some obscure or very technical
|
|
low-level issues, you'll find that these groups are good places to
|
|
start.
|
|
</para>
|
|
<para>
|
|
Information about e-mail clients (MUA's), mail transfer agents
|
|
(MTA's), and other related software are in the
|
|
<literal>comp.mail.*</literal> groups, especially:
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para><citetitle>comp.mail.misc</citetitle></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>comp.mail.pine</citetitle></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>comp.mail.sendmail</citetitle></para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
</para>
|
|
<para>
|
|
Questions and information about News reading software are in:
|
|
<citetitle>news.software.readers</citetitle>.
|
|
</para>
|
|
<para>
|
|
Please read
|
|
``<xref linkend="still-havent-answered"
|
|
endterm="still-havent-answered">''
|
|
before posting. Cross posting between different
|
|
<citetitle>comp.os.linux.*</citetitle> groups is rarely a good idea.
|
|
</para>
|
|
<para>
|
|
There may well be Linux groups local to your institution or
|
|
area—check there first.
|
|
</para>
|
|
<para>
|
|
See also
|
|
``<xref linkend="i-dont-have-usenet-access"
|
|
endterm="i-dont-have-usenet-access">''
|
|
</para>
|
|
<para>
|
|
Other regional and local newsgroups also exist—you may find the
|
|
traffic more manageable there. The French Linux newsgroup is
|
|
<citetitle>fr.comp.os.linux</citetitle>. In Germany there is
|
|
<citetitle>de.comp.os.linux.*</citetitle>. In Australia,
|
|
try <citetitle>aus.computers.linux</citetitle>.
|
|
In Croatia there is <citetitle>hr.comp.linux</citetitle>. In Italy,
|
|
there is <citetitle>it.comp.linux</citetitle>.
|
|
</para>
|
|
<para>
|
|
A search of
|
|
<ulink url="http://groups.google.com/">
|
|
<literal>http://groups.google.com/</literal></ulink> can provide
|
|
an up-to-date list of News groups.
|
|
</para>
|
|
<para>
|
|
[Axel Boldt, Robert Kiesling]
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="2.5">
|
|
<title id="what-other-faqs">
|
|
What Other FAQ's and Documentation Are There for Linux?
|
|
</title>
|
|
<para>
|
|
There are a number of special interest FAQ's on different subjects
|
|
related to system administration and use, and also on miscellaneous topics
|
|
like Flying Saucer Attacks (the music) and support for recovering
|
|
sysadmins.
|
|
</para>
|
|
<para>
|
|
The official Usenet FAQ archives are: <ulink
|
|
url="ftp://rtfm.mit.edu/pub/usenet/">
|
|
<literal>ftp://rtfm.mit.edu/pub/usenet/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
The <citetitle>Internet FAQ Consortium</citetitle>
|
|
provides a searchable archive at: <ulink
|
|
url="http://www.faqs.org/">
|
|
<literal>http://www.faqs.org/</literal></ulink>. The
|
|
site also maintains a current archive of Internet Request For
|
|
Comment (RFC), Best Current Practices (BCP), and For
|
|
Your Information (FYI) documents.
|
|
</para>
|
|
<para>
|
|
Here are some FAQ's and documents that might be especially useful, and their
|
|
network addresses:
|
|
</para>
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>A FAQ for new users:
|
|
<ulink url="http://homes.arealcity.com/swietanowski/LinuxFAQ/">
|
|
<literal>http://homes.arealcity.com/swietanowski/LinuxFAQ/</literal></ulink>.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>AfterStep FAQ: <ulink
|
|
url="http://www.linuxinfor.com/en/astepfaq/AfterStep-FAQ.html">
|
|
<literal>http://www.linuxinfor.com/en/astepfaq/AfterStep-FAQ.html
|
|
</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>BASH Frequently Asked Questions:
|
|
<ulink url="ftp://ftp.cwru.edu/pug/bash/FAQ/">
|
|
<literal>ftp://ftp.cwru.edu/pug/bash/FAQ/</literal></ulink>.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><literal>de.comp.os.unix.linux.infos - FAQ</literal>: <ulink
|
|
url="http://www.dcoul.de/"><literal>http://www.dcoul.de/</literal>
|
|
</ulink>.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Frequently Asked Questions about Open Source:
|
|
<ulink url="http://www.opensource.org/faq.html">
|
|
<literal>http://www.opensource.org/faq.html</literal></ulink>.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Ftape-FAQ: <ulink
|
|
url="http://www.linuxinfor.com/en/ftapefaq/Ftape-FAQ.html">
|
|
<literal>http://www.linuxinfor.com/en/ftapefaq/Ftape-FAQ.html</literal>
|
|
</ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>GNU Emacs: <ulink
|
|
url="http://www.lerner.co.il/emacs/faq-body.shtml">
|
|
<literal>http://www.lerner.co.il/emacs/faq-body.shtml</literal>
|
|
</ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>GNU Linux in Science and Engineering:
|
|
<ulink url="http://www.comsoc.org/vancouver/scieng.html">
|
|
<literal>http://www.comsoc.org/vancouver/scieng.html</literal></ulink>.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>GNU Troff (<emphasis>groff</emphasis>) Info:
|
|
<ulink url="http://www.cs.pdx.edu/~trent/gnu/groff/">
|
|
<literal>http://www.cs.pdx.edu/~trent/gnu/groff/</literal></ulink>.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Gnus 5.x:
|
|
<ulink url="http://www.ccs.neu.edu/software/contrib/gnus/">
|
|
<literal>http://www.ccs.neu.edu/software/contrib/gnus/</literal></ulink>.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>KDE FAQ: <ulink
|
|
url="http://www.kde.org/faq.html">
|
|
<literal>http://www.kde.org/faq.html</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>GNU General Public License FAQ: <ulink
|
|
url="http://www.gnu.org/copyleft/gpl-faq.html">
|
|
<literal>http://www.gnu.org/copyleft/gpl-faq.html</literal></ulink>.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Linux PPP FAQ: <ulink
|
|
url="http://www.linuxinfor.com/en/pppfaq/PPP-FAQ.html">
|
|
<literal>http://www.linuxinfor.com/en/pppfaq/PPP-FAQ.html</literal>
|
|
</ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Linux-Raid FAQ: <ulink
|
|
url="http://www.linuxinfor.com/en/raidfaq/index.html">
|
|
<literal>http://www.linuxinfor.com/en/raidfaq/index.html</literal>
|
|
</ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>List of Periodic Information Postings:
|
|
<ulink url="ftp://rtfm.mit.edu/pub/usenet/news.answers/periodic-postings/">
|
|
<literal>ftp://rtfm.mit.edu/pub/usenet/news.answers/periodic-postings/
|
|
</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>News.newusers.announce FAQ <ulink
|
|
url="http://web.presby.edu/~nnqadmin/nan/">
|
|
<literal>http://web.presby.edu/~nnqadmin/nan/</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Online Linux Resources: <ulink
|
|
url="http://www.linuxinfor.com/en/docfaq.htm">
|
|
<literal>http://www.linuxinfor.com/en/docfaq.htm</literal></ulink>.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>O'Reilly & Associates Openbook Project:
|
|
<ulink url="http://www.oreilly.com/openbook/">
|
|
<literal>http://www.oreilly.com/openbook/</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><application>Sendmail</application>:
|
|
<ulink url="http://www.sendmail.org/faq/">
|
|
<literal>http://www.sendmail.org/faq/</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para><citetitle>Sendmail: Installation and Operation Guide:</citetitle>
|
|
Formatted and <emphasis>me</emphasis> source versions
|
|
are in the <literal>doc/</literal> subdirectory of
|
|
<application>Sendmail</application> source code distributions.
|
|
<ulink url="http://www.sendmail.org/">
|
|
<literal>http://www.sendmail.org/</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Technical FAQ for Linux Users: <ulink
|
|
url="http://www-106.ibm.com/developerworks/library/l-faq/?n-l-7261">
|
|
<literal>
|
|
http://www-106.ibm.com/developerworks/library/l-faq/?n-l-7261
|
|
</literal></ulink>.</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Web Internet Search Engine:
|
|
<ulink url="http://www.infobasic.com/pagefaq.html">
|
|
<literal>http://www.infobasic.com/pagefaq.html</literal></ulink>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>Wu-ftpd:
|
|
<ulink url="http://www.wu-ftpd.org/man/">
|
|
<literal>http://www.wu-ftpd.org/man/</literal></ulink> (really a
|
|
collection of man pages), with HOWTO's at: <ulink
|
|
url="http://www.wu-ftpd.org/HOWTO/">
|
|
<literal>http://www.wu-ftpd.org/HOWTO/</literal></ulink>
|
|
</para>
|
|
</listitem>
|
|
<listitem><para>
|
|
XTERM—Frequently Asked Questions.
|
|
<ulink url="http://dickey.his.com/xterm/xterm.faq.html">
|
|
<literal>http://dickey.his.com/xterm/xterm.faq.html</literal>
|
|
</ulink>.
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
</sect2>
|
|
|
|
|
|
<sect2 label="2.6">
|
|
<title id="get-linux-material-by-ftp">
|
|
Where Are the Linux FTP Archives?</title>
|
|
<para>
|
|
There are three main archive sites for Linux:
|
|
</para>
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>
|
|
<ulink url="ftp://ftp.funet.fi/pub/OS/Linux/">
|
|
<literal>ftp://ftp.funet.fi/pub/OS/Linux/</literal></ulink>
|
|
(Finland).</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
<ulink url="ftp://metalab.unc.edu/pub/Linux/">
|
|
<literal>ftp://metalab.unc.edu/pub/Linux/</literal></ulink>. Recently
|
|
renamed to
|
|
<ulink url="http://ibiblio.org/pub/linux/">
|
|
<literal>http://ibiblio.org/pub/linux/</literal></ulink> with a nice
|
|
WWW interface.
|
|
(US).</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
<ulink url="ftp://tsx-11.mit.edu//pub/linux/">
|
|
<literal>ftp://tsx-11.mit.edu/pub/linux/</literal></ulink>
|
|
(US).</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
<para>
|
|
The best place to get the Linux kernel is
|
|
<ulink url="ftp://ftp.kernel.org/pub/linux/kernel/">
|
|
<literal>ftp://ftp.kernel.org/pub/linux/kernel/</literal></ulink>.
|
|
Linus Torvalds uploads the most recent kernel versions to this site.
|
|
</para>
|
|
<para>
|
|
Of the U.S. distributions, Debian GNU/Linux is available at
|
|
<ulink url="ftp://ftp.debian.org/pub/debian/">
|
|
<literal>ftp://ftp.debian.org/pub/debian/</literal></ulink>.
|
|
Red Hat Linux's home site is
|
|
<ulink url="ftp://ftp.redhat.com/"><literal>ftp://ftp.redhat.com/</literal>
|
|
</ulink>, and Linux Slackware's is
|
|
<ulink url="ftp://ftp.freesoftware.com/">
|
|
<literal>ftp://ftp.freesoftware.com/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
The Small Linux distribution, which can run in 2 MB of RAM, is located
|
|
at
|
|
<ulink url="http://smalllinux.netpedia.net/">
|
|
<literal>http://smalllinux.netpedia.net/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
The contents of these sites is mirrored (copied, usually approximately
|
|
daily) by a number of other sites. Please use a site close to you—it
|
|
will be faster for you and easier on the network.
|
|
</para>
|
|
<itemizedlist>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.sun.ac.za/pub/linux/sunsite/">
|
|
<literal>ftp://ftp.sun.ac.za/pub/linux/sunsite/</literal></ulink>
|
|
(South Africa)</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.is.co.za/linux/sunsite/">
|
|
<literal>ftp://ftp.is.co.za/linux/sunsite/</literal></ulink>
|
|
(South Africa).
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.cs.cuhk.hk/pub/Linux/">
|
|
<literal>ftp://ftp.cs.cuhk.hk/pub/Linux/</literal></ulink>
|
|
(Hong Kong).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://sunsite.ust.hk/pub/Linux/">
|
|
<literal>ftp://sunsite.ust.hk/pub/Linux/</literal></ulink>
|
|
(Hong Kong).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.spin.ad.jp/pub/linux/">
|
|
<literal>ftp://ftp.spin.ad.jp/pub/linux/</literal></ulink>
|
|
(Japan).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.nuri.net/pub/Linux/">
|
|
<literal>ftp://ftp.nuri.net/pub/Linux/</literal></ulink>
|
|
(Korea).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.jaring.my/pub/Linux/">
|
|
<literal>ftp://ftp.jaring.my/pub/Linux/</literal></ulink>
|
|
(Malaysia).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.nus.sg/pub/unix/Linux/">
|
|
<literal>ftp://ftp.nus.sg/pub/unix/Linux/</literal></ulink>
|
|
(Singapore).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.nectec.or.th/pub/mirrors/linux/">
|
|
<literal>ftp://ftp.nectec.or.th/pub/mirrors/linux/</literal></ulink>
|
|
(Thailand).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://planetmirror.com/pub/linux">
|
|
<literal>ftp://planetmirror.com/pub/linux
|
|
</literal></ulink> (Australia). (Also take a look at
|
|
<ulink url="http://planetmirror.com/archives.php">
|
|
<literal>http://planetmirror.com/archives.php</literal></ulink>.)
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.monash.edu.au/pub/linux/">
|
|
<literal>ftp://ftp.monash.edu.au/pub/linux/</literal></ulink>
|
|
(Australia).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.univie.ac.at/systems/linux/sunsite/">
|
|
<literal>ftp://ftp.univie.ac.at/systems/linux/sunsite/</literal></ulink>
|
|
(Austria).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.fi.muni.cz/pub/UNIX/linux/">
|
|
<literal>ftp://ftp.fi.muni.cz/pub/UNIX/linux/</literal></ulink>
|
|
(Czech Republic).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.funet.fi/pub/Linux/sunsite/">
|
|
<literal>ftp://ftp.funet.fi/pub/Linux/sunsite/</literal></ulink>
|
|
(Finland).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.univ-angers.fr/pub/Linux/">
|
|
<literal>ftp://ftp.univ-angers.fr/pub/Linux/</literal></ulink>
|
|
(France).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.iut-bm.univ-fcomte.fr/">
|
|
<literal>ftp://ftp.iut-bm.univ-fcomte.fr/</literal></ulink>
|
|
(France).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.ibp.fr/pub/linux/sunsite/">
|
|
<literal>ftp://ftp.ibp.fr/pub/linux/sunsite/</literal></ulink>
|
|
(France)</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.loria.fr/pub/linux/sunsite/">
|
|
<literal>ftp://ftp.loria.fr/pub/linux/sunsite/</literal></ulink>
|
|
(France).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.dfv.rwth-aachen.de/pub/linux/sunsite/">
|
|
<literal>ftp://ftp.dfv.rwth-aachen.de/pub/linux/sunsite/</literal></ulink>
|
|
(Germany).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.germany.eu.net/pub/os/Linux/Mirror.SunSITE/">
|
|
<literal>ftp://ftp.germany.eu.net/pub/os/Linux/Mirror.SunSITE/
|
|
</literal></ulink>(Germany).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.tu-dresden.de/pub/Linux/sunsite/">
|
|
<literal>ftp://ftp.tu-dresden.de/pub/Linux/sunsite/</literal></ulink>
|
|
(Germany).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.uni-erlangen.de/pub/Linux/MIRROR.sunsite/">
|
|
<literal>ftp://ftp.uni-erlangen.de/pub/Linux/MIRROR.sunsite/</literal></ulink>
|
|
(Germany).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.gwdg.de/pub/linux/mirrors/sunsite/">
|
|
<literal>ftp://ftp.gwdg.de/pub/linux/mirrors/sunsite/</literal></ulink>
|
|
(Germany).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp.rz.uni-karlsruhe.de/pub/linux/mirror.sunsite/">
|
|
<literal>ftp.rz.uni-karlsruhe.de/pub/linux/mirror.sunsite/</literal></ulink>
|
|
(Germany).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.ba-mannheim.de/pub/linux/mirror.sunsite/">
|
|
<literal>ftp://ftp.ba-mannheim.de/pub/linux/mirror.sunsite/</literal></ulink>
|
|
(Germany).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.uni-paderborn.de/pub/Mirrors/sunsite.unc.edu/">
|
|
<literal>ftp://ftp.uni-paderborn.de/pub/Mirrors/sunsite.unc.edu/
|
|
</literal></ulink>(Germany).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.uni-rostock.de/Linux/sunsite/">
|
|
<literal>ftp://ftp.uni-rostock.de/Linux/sunsite/</literal></ulink>
|
|
(Germany).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp.rus.uni-stuttgart.de/pub/unix/systems/linux/MIRROR.sunsite/">
|
|
<literal>ftp.rus.uni-stuttgart.de/pub/unix/systems/linux/MIRROR.sunsite/
|
|
</literal></ulink>(Germany).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.uni-tuebingen.de/pub/linux/Mirror.sunsite/">
|
|
<literal>ftp://ftp.uni-tuebingen.de/pub/linux/Mirror.sunsite/</literal></ulink>
|
|
(Germany).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.kfki.hu/pub/linux/">
|
|
<literal>ftp://ftp.kfki.hu/pub/linux/</literal></ulink>(Hungary).
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://linux.italnet.it/pub/Linux/">
|
|
<literal>ftp://linux.italnet.it/pub/Linux/</literal></ulink>(Italy).
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.unina.it/pub/linux/sunsite/">
|
|
<literal>ftp://ftp.unina.it/pub/linux/sunsite/</literal></ulink>
|
|
(Italy).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://giotto.unipd.it/pub/unix/Linux/">
|
|
<literal>ftp://giotto.unipd.it/pub/unix/Linux/</literal></ulink>
|
|
(Italy).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://cnuce-arch.cnr.it/pub/Linux/">
|
|
<literal>ftp://cnuce-arch.cnr.it/pub/Linux/</literal></ulink>
|
|
(Italy).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.flashnet.it/mirror2/metalab.unc.edu/">
|
|
<literal>ftp://ftp.flashnet.it/mirror2/metalab.unc.edu/</literal></ulink>
|
|
(Italy).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.nijenrode.nl/pub/linux/">
|
|
<literal>ftp://ftp.nijenrode.nl/pub/linux/</literal></ulink>
|
|
(Netherlands).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.LeidenUniv.nl/pub/linux/sunsite/">
|
|
<literal>ftp://ftp.LeidenUniv.nl/pub/linux/sunsite/</literal></ulink>
|
|
(Netherlands).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.nvg.unit.no/pub/linux/sunsite/">
|
|
<literal>ftp://ftp.nvg.unit.no/pub/linux/sunsite/</literal></ulink>
|
|
(Norway).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://sunsite.icm.edu.pl/pub/Linux/metalab.unc.edu/">
|
|
<literal>ftp://sunsite.icm.edu.pl/pub/Linux/metalab.unc.edu/</literal></ulink>
|
|
(Poland).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.rediris.es/software/os/linux/sunsite/">
|
|
<literal>ftp://ftp.rediris.es/software/os/linux/sunsite/</literal></ulink>
|
|
(Spain).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://sunsite.rediris.es/software/linux/">
|
|
<literal>ftp://sunsite.rediris.es/software/linux/</literal></ulink>
|
|
(Spain).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.cs.us.es/pub/Linux/sunsite-mirror/">
|
|
<literal>ftp://ftp.cs.us.es/pub/Linux/sunsite-mirror/</literal></ulink>
|
|
(Spain).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.etse.urv.es/pub/mirror/linux/">
|
|
<literal>ftp://ftp.etse.urv.es/pub/mirror/linux/</literal></ulink>
|
|
(Spain).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.etsimo.uniovi.es/pub/linux/">
|
|
<literal>ftp://tp.etsimo.uniovi.es/pub/linux/</literal></ulink>
|
|
(Spain).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.luna.gui.es/pub/linux.new/">
|
|
<literal>ftp://ftp.luna.gui.es/pub/linux.new/</literal></ulink>
|
|
(Spain).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.metu.edu.tr/pub/linux/sunsite/">
|
|
<literal>ftp://ftp.metu.edu.tr/pub/linux/sunsite/</literal></ulink>
|
|
(Turkey).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://unix.hensa.ac.uk/mirrors/sunsite/pub/Linux/">
|
|
<literal>ftp://unix.hensa.ac.uk/mirrors/sunsite/pub/Linux/</literal></ulink>
|
|
(UK).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp.maths.warwick.ac.uk/mirrors/linux/sunsite.unc-mirror/">
|
|
<literal>ftp.maths.warwick.ac.uk/mirrors/linux/sunsite.unc-mirror/
|
|
</literal></ulink>(UK).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.idiscover.co.uk/pub/Linux/sunsite.unc-mirror/">
|
|
<literal>ftp://ftp.idiscover.co.uk/pub/Linux/sunsite.unc-mirror/
|
|
</literal></ulink>(UK).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://sunsite.doc.ic.ac.uk/packages/linux/sunsite.unc-mirror/">
|
|
<literal>ftp://sunsite.doc.ic.ac.uk/packages/linux/sunsite.unc-mirror/
|
|
</literal></ulink>(UK).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url=""><literal></literal></ulink>
|
|
(UK)
|
|
</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.io.org/pub/mirrors/linux/sunsite/">
|
|
<literal>ftp://ftp.io.org/pub/mirrors/linux/sunsite/</literal></ulink>
|
|
(Canada).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.cc.gatech.edu/pub/linux/">
|
|
<literal>ftp://ftp.cc.gatech.edu/pub/linux/</literal></ulink>
|
|
(US).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.freesoftware.com/pub/linux/sunsite/">
|
|
<literal>ftp://ftp.freesoftware.com/pub/linux/sunsite/</literal></ulink>
|
|
(US).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.siriuscc.com/pub/Linux/Sunsite/">
|
|
<literal>ftp://ftp.siriuscc.com/pub/Linux/Sunsite/</literal></ulink>
|
|
(US).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.engr.uark.edu/pub/linux/sunsite/">
|
|
<literal>ftp://ftp.engr.uark.edu/pub/linux/sunsite/</literal></ulink>
|
|
(US).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://ftp.infomagic.com/pub/mirrors/linux/sunsite/">
|
|
<literal>ftp://ftp.infomagic.com/pub/mirrors/linux/sunsite/</literal></ulink>
|
|
(US).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://linux.if.usp.br/pub/mirror/metalab.unc.edu/pub/Linux/">
|
|
<literal>ftp://linux.if.usp.br/pub/mirror/metalab.unc.edu/pub/Linux/</literal>
|
|
</ulink>(Brazil).</para></listitem>
|
|
<listitem><para>
|
|
<ulink url="ftp://farofa.ime.usp.br/pub/linux/">
|
|
<literal>ftp://farofa.ime.usp.br/pub/linux/</literal></ulink>
|
|
(Brazil).</para></listitem>
|
|
</itemizedlist>
|
|
<para>
|
|
Please send updates and corrections to this list to the Linux
|
|
FAQ maintainer,
|
|
<ulink url="mailto:rkiesling@mainmatter.com">
|
|
<literal>rkiesling@mainmatter.com</literal></ulink>.
|
|
Not all of these mirror all of the other ``source'' sites, and some
|
|
have material not available on the ``source'' sites.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="2.7">
|
|
<title id="i-dont-have-ftp-access">
|
|
How To Get Linux without FTP Access.</title>
|
|
<para>
|
|
The easiest thing is probably to find a friend with FTP access. If
|
|
there is a Linux user's group near you, they may be able to help.
|
|
</para>
|
|
<para>
|
|
If you have a reasonably good email connection, you could try the
|
|
FTP-by-mail servers at
|
|
<ulink url="mailto:ftpmail@ftp.sunet.se">
|
|
<literal>ftpmail@ftp.sunet.se</literal></ulink>,
|
|
or
|
|
<ulink url="mailto:ftpmail@ftp.uni-stuttgart.de">
|
|
<literal>ftpmail@ftp.uni-stuttgart.de</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
Linux is also available via traditional mail on CD-ROM. The file
|
|
<ulink url="ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/Installation-HOWTO">
|
|
<literal>
|
|
ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/Installation-HOWTO</literal>
|
|
</ulink>, and the file
|
|
<ulink url="ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/Distribution-HOWTO">
|
|
<literal>
|
|
ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/Distribution-HOWTO</literal>
|
|
</ulink> contain information on these distributions.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="2.8">
|
|
<title id="i-dont-have-usenet-access">
|
|
How To Get Information without Usenet Access.</title>
|
|
<para>
|
|
A digest of comp.os.linux.announce is available by mailing the word
|
|
"subscribe" (without the quotes) as the body of a message to
|
|
<ulink url="mailto:linux-announce-REQUEST@news-digests.mit.edu">
|
|
<literal>linux-announce-REQUEST@news-digests.mit.edu</literal></ulink>.
|
|
Subscribing to this list is a good idea, as it carries important
|
|
information and documentation about Linux.
|
|
</para>
|
|
<para>
|
|
Please remember to use the *-request addresses for your subscribe and
|
|
unsubscribe messages; mail to the other address is posted to the news group.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="2.9">
|
|
<title id="what-mailing-lists-are-there">
|
|
What Mailing Lists Are There?</title>
|
|
<para>
|
|
The Linux developers now mainly use the Majordomo server at
|
|
<ulink url="mailto:majordomo@vger.redhat.com">
|
|
<literal>majordomo@vger.redhat.com</literal></ulink>.
|
|
Send a message with the word "lists" (without the quotes) in the body
|
|
to get a list of lists there. Add a line with the word, "help," to get
|
|
the standard Majordomo help file that lists instructions for subscribing and
|
|
unsubscribing to the lists.
|
|
</para>
|
|
<para>
|
|
Currently, the kernel list is archived at:
|
|
<ulink url="http://www.uwsg.indiana.edu/hypermail/linux/kernel/">
|
|
<literal>http://www.uwsg.indiana.edu/hypermail/linux/kernel/</literal>
|
|
</ulink>, and
|
|
<ulink url="http://www.lib.uaa.alaska.edu/linux-kernel/archive/">
|
|
<literal>http://www.lib.uaa.alaska.edu/linux-kernel/archive/</literal>
|
|
</ulink>
|
|
</para>
|
|
<para>
|
|
Please do not post off-topic material to the mailing lists. Most of
|
|
them are used by Linux developers to talk about technical issues and
|
|
future developments. They are not intended for new users' questions,
|
|
advertisements, or public postings that are not directly related to
|
|
the mailing list's subject matter.
|
|
<citetitle>Comp.os.linux.announce</citetitle> is the place for all
|
|
public announcements. This is a common Internet policy. If you don't
|
|
observe this guideline, there's a good chance that you'll be flamed.
|
|
</para>
|
|
<para>
|
|
There is a linux-newbie list where, "no question is too stupid."
|
|
Unfortunately, it seems that few experienced users read that list, and
|
|
it has very low volume.
|
|
</para>
|
|
<para>
|
|
There are numerous Linux related mailing lists at
|
|
<ulink url="http://www.onelist.com/">
|
|
<literal>http://www.onelist.com/</literal></ulink>. Go to the
|
|
categories page and choose "Linux." There are also mailing list
|
|
subscription links at:
|
|
<ulink url="http://oslab.snu.ac.kr/~djshin/linux/mail-list/">
|
|
<literal>http://oslab.snu.ac.kr/~djshin/linux/mail-list/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
The <citetitle>Mailing Lists Available in Usenet</citetitle> page is:
|
|
<ulink url="http://paml.net/">
|
|
<literal>http://paml.net/</literal></ulink>. The list information
|
|
is also on:
|
|
<ulink url="ftp://rtfm.mit.edu/">
|
|
<literal>ftp://rtfm.mit.edu/</literal></ulink>, and is posted to the
|
|
groups: <literal>news.announce.newgroups</literal>,
|
|
<literal>news.lists</literal>, and <literal>news.groups</literal>,
|
|
among others.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="2.10">
|
|
<title id="where-are-linux-legal-issues-discussed">
|
|
Where Are Linux Legal Issues Discussed?</title>
|
|
<para>
|
|
On the linux-legal mailing list, of course. You can subscribe to it,
|
|
as with many of the other Linux related lists, by sending a message
|
|
with the word "help" in the body of the message to
|
|
<ulink url="mailto:majordomo@vger.redhat.com">
|
|
<literal>majordomo@vger.redhat.com</literal></ulink>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="2.11">
|
|
<title id="free-software-projects">
|
|
Sources of Information for Unmaintained Free Software Projects.</title>
|
|
<para>
|
|
There are Web pages at:
|
|
<ulink url="http://unmaintained.sourceforge.net">
|
|
<literal>http://unmaintained.sourceforge.net</literal></ulink>, and:
|
|
<ulink url="http://www.orphansource.org/">
|
|
<literal>http://www.orphansource.org/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
Please try to contact the original author(s) via e-mail, or the person
|
|
who listed the software as unmaintained, before even thinking to place
|
|
a license on the package.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="2.12">
|
|
<title id="are-the-newsgroups-archived-anywhere">
|
|
Are the News Groups Archived Anywhere?</title>
|
|
<para>
|
|
The Usenet Linux news groups are archived at
|
|
<ulink url="http://groups.google.com/">
|
|
<literal>http://groups.google.com/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
<ulink url="ftp://metalab.unc.edu/pub/Linux/docs/linux-announce.archive">
|
|
<literal>ftp://metalab.unc.edu/pub/Linux/docs/linux-announce.archive
|
|
</literal></ulink> contains archives of
|
|
<citetitle>comp.os.linux.announce</citetitle>. These are mirrored from
|
|
<ulink url="ftp://src.doc.ic.ac.uk/usenet/">
|
|
<literal>ftp://src.doc.ic.ac.uk/usenet/</literal></ulink>, which also
|
|
archives <citetitle>comp.os.linux</citetitle>,
|
|
<citetitle>comp.os.linux.development.apps</citetitle>, and
|
|
<citetitle>comp.os.linux.development.system</citetitle>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="2.13">
|
|
<title id="about-security-related-issues">
|
|
Where To Find Information About Security Related Issues.</title>
|
|
<para>
|
|
There's a page of Linux related security information at:
|
|
<ulink url="http://www.linuxsecurity.com/">
|
|
<literal>http://www.linuxsecurity.com/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
Another site is:
|
|
<ulink url="http://www.rootshell.com/">
|
|
<literal>http://www.rootshell.com/</literal></ulink>, which has
|
|
information about Internet security and privacy issues.
|
|
</para>
|
|
<para>
|
|
For information about the <citetitle>Weekly Linux Security
|
|
Digest</citetitle> email newsletter and numerous security
|
|
related databases, look at <ulink url="http://securityportal.com/">
|
|
<literal>http://securityportal.com/</literal></ulink>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="2.14">
|
|
<title id="linux-standards">
|
|
Where To Find Linux System Specifications.</title>
|
|
<para>
|
|
As a start, look at the Linux Standards Base,
|
|
<ulink url="http://www.linuxbase.org/">
|
|
<literal>http://www.linuxbase.org/</literal></ulink>.
|
|
The site contains information about test software, file
|
|
system organization, and shared library naming conventions.
|
|
</para>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
|
|
<sect1 label="3">
|
|
<title>Compatibility with Other Operating Systems</title>
|
|
<sect2 label="3.1">
|
|
<title id="can-linux-share-my-disk-with-dos">
|
|
Can Linux Use the Same Hard Drive as MS-DOS? OS/2? 386BSD? Win95?</title>
|
|
<para>
|
|
Yes. Linux uses the standard MS-DOS partitioning scheme, so it can
|
|
share your disk with other operating systems.
|
|
</para>
|
|
<para>
|
|
Linux has loadable kernel modules for (presumably) all versions of
|
|
Microsoft FAT and VFAT file systems, including Windows 2000 and
|
|
WindowsMe. In a correctly configured system, they should load
|
|
automatically when the partitions are mounted.
|
|
</para>
|
|
<para>
|
|
Note, however, that many other operating systems may not be exactly
|
|
compatible. DOS's <filename>FDISK.EXE</filename> and
|
|
<filename>FORMAT.EXE</filename>, for example, can overwrite data in a
|
|
Linux partition, because they sometimes incorrectly use partition data
|
|
from the partition's boot sector rather than the partition table.
|
|
</para>
|
|
<para>
|
|
In order to prevent programs from doing this, it is a good idea to
|
|
zero out—under Linux—the start of a partition you created, before
|
|
you use MS-DOS—or whatever—to format it. Type:
|
|
</para>
|
|
<para>
|
|
<screen>
|
|
$ dd if=/dev/zero of=/dev/hdXY bs=512 count=1
|
|
</screen>
|
|
</para>
|
|
<para>
|
|
where <emphasis>hdXY</emphasis> is the relevant partition; e.g.,
|
|
<filename>/dev/hda1</filename> for the first partition of the first
|
|
(IDE) disk.
|
|
</para>
|
|
<para>
|
|
Linux can read and write the files on your DOS and OS/2 FAT partitions
|
|
and floppies using either the DOS file system type built into the
|
|
kernel or mtools. There is kernel support for the VFAT file system
|
|
used by Windows 9x and Windows NT.
|
|
</para>
|
|
<para>
|
|
There is reportedly a GPL'd OS/2 device driver that will read and
|
|
write Linux ext2 partitions.
|
|
</para>
|
|
<para>
|
|
For information about FAT32 partition support, see
|
|
<ulink url="http://bmrc.berkeley.edu/people/chaffee/fat32.html">
|
|
<literal>http://bmrc.berkeley.edu/people/chaffee/fat32.html</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
See, (``<xref linkend="what-software-does-linux-support"
|
|
endterm="what-software-does-linux-support">'') for details and status
|
|
of the emulators for DOS, MS Windows, and System V programs.
|
|
</para>
|
|
<para>
|
|
See also, "Can Linux access Amiga file systems? ", "Can
|
|
Linux access Macintosh file systems? ", "Can Linux access BSD,
|
|
SysV, etc., UFS? ", and "Can Linux access SMB file systems? "
|
|
</para>
|
|
<para>
|
|
There are said to be NTFS drivers under development, which should
|
|
support compression as a standard feature.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="3.2">
|
|
<title id="how-do-i-access-files-on-my-dos-partition">
|
|
How To Access Files on a MS-DOS Partition or Floppy.</title>
|
|
<para>
|
|
Use the DOS file system, type, for example:
|
|
</para>
|
|
<para><screen>
|
|
$ mkdir /dos
|
|
$ mount -t msdos -o conv=text,umask=022,uid=100,gid=100 /dev/hda3 /dos
|
|
</screen></para>
|
|
<para>
|
|
If it's a floppy, don't forget to umount it before ejecting it!
|
|
</para>
|
|
<para>
|
|
You can use the <literal>conv=text/binary/auto</literal>,
|
|
<literal>umask=nnn</literal>, <literal>uid=nnn</literal>, and
|
|
<literal>gid=nnn</literal> options to control the automatic
|
|
line-ending conversion, permissions and ownerships of the files in the
|
|
DOS file system as they appear under Linux. If you mount your DOS file
|
|
system by putting it in your <filename>/etc/fstab</filename>, you can
|
|
record the options (comma-separated) there, instead of defaults.
|
|
</para>
|
|
<para>
|
|
Alternatively, you can use mtools, available in both binary and source
|
|
form on the FTP sites.
|
|
(``<xref linkend="get-linux-material-by-ftp"
|
|
endterm="get-linux-material-by-ftp">'')
|
|
</para>
|
|
<para>
|
|
A kernel patch (known as the fd-patches) is available which allows
|
|
floppies with nonstandard numbers of tracks and/or sectors to be used;
|
|
this patch is included in the 1.1 alpha testing kernel series.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="3.3">
|
|
<title id="support-compressed-ext2-file-systems">
|
|
Does Linux Support Compressed Ext2 File Systems?</title>
|
|
<para>
|
|
The <literal>ext2compr</literal> project provides a
|
|
kernel patch Information about them is located at
|
|
<ulink url="http://e2ompr.memalpha.cx/e2compr/">
|
|
<literal>http://e2ompr.memalpha.cx/e2compr/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
There is also a Web site for the e2compr patches. The code is still
|
|
experimental and consists of patches for the 2.0 and 2.1 kernels. For
|
|
more information about the project, including the latest patches, and
|
|
the address of the mailing list, look up the URL at
|
|
<ulink url="http://debs.fuller.edu/e2compr/">
|
|
<literal>http://debs.fuller.edu/e2compr/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
[Roderich Schupp, Peter Moulder]
|
|
</para>
|
|
<para>
|
|
<citetitle>zlibc</citetitle> is a program that allows existing
|
|
applications to read compressed (GNU gzip'ed) files as if they were
|
|
not compressed. Look at
|
|
<ulink url="ftp://metalab.unc.edu/pub/Linux/libs/">
|
|
<literal>ftp://metalab.unc.edu/pub/Linux/libs/</literal></ulink>. The
|
|
author is Alain Knaff.
|
|
</para>
|
|
<para>
|
|
There is also a compressing block device driver, "DouBle," by
|
|
Jean-Marc Verbavatz, which can provide on-the-fly disk compression in
|
|
the kernel. The source-only distribution is located at
|
|
<ulink url="ftp://metalab.unc.edu/pub/Linux/patches/diskdrives/">
|
|
<literal>ftp://metalab.unc.edu/pub/Linux/patches/diskdrives/</literal>
|
|
</ulink>. This driver compresses inodes and directory information as
|
|
well as files, so any corruption of the file system is likely to be
|
|
serious.
|
|
</para>
|
|
<para>
|
|
There is also a package called tcx (Transparently Compressed
|
|
Executables), which allows you to keep infrequently used
|
|
executables compressed and only uncompress them temporarily when in
|
|
use. It is located at
|
|
<ulink url="ftp://metalab.unc.edu/pub/Linux/utils/compress/">
|
|
<literal>ftp://metalab.unc.edu/pub/Linux/utils/compress/</literal></ulink>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="3.4">
|
|
<title id="can-i-use-my-stacked">
|
|
Can Linux Use Stacked/DBLSPC/Etc. DOS Drives?</title>
|
|
<para>
|
|
Until recently, not very easily. You can access DOS 6.X volumes from
|
|
the DOS emulator ("What software does Linux support? "), but
|
|
it's harder than accessing a normal DOS volume via the DOS kernel
|
|
option, a module, or mtools.
|
|
</para>
|
|
<para>
|
|
There is a recently added package, dmsdos, that reads and writes
|
|
compressed file systems like DoubleSpace/DriveSpace in MS-DOS 6.x and
|
|
Win95, as well as Stacker versions 3 and 4. It is a loadable kernel
|
|
module. Look at
|
|
<ulink url="ftp://metalab.unc.edu/pub/Linux/system/filesystems/dosfs/">
|
|
<literal>ftp://metalab.unc.edu/pub/Linux/system/filesystems/dosfs/
|
|
</literal></ulink>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="3.5">
|
|
<title id="can-i-access-os2-hpfs">
|
|
Can Linux Access OS/2 HPFS Partitions?</title>
|
|
<para>
|
|
Yes, but Linux access to HPFS partitions is read-only. HPFS file
|
|
system access is available as an option when compiling the kernel or
|
|
as a module. See the
|
|
<filename>Documentation/filesystems/hpfs.txt</filename> file in the
|
|
kernel source distribution. (``<xref
|
|
linkend="upgrade-recompile-kernel"
|
|
endterm="upgrade-recompile-kernel">'') Then you can mount HPFS
|
|
partition, using, for example:
|
|
</para>
|
|
<para><screen>
|
|
$ mkdir /hpfs
|
|
$ mount -t hpfs /dev/hda5 /hpfs
|
|
</screen></para>
|
|
</sect2>
|
|
|
|
<sect2 label="3.6">
|
|
<title id="can-linux-access-amiga-file-systems">
|
|
Can Linux Access Amiga File Systems?</title>
|
|
<para>
|
|
The Linux kernel has support for the Amiga Fast File System (AFFS)
|
|
version 1.3 and later, both as a compile-time option and as a module.
|
|
The file <filename>Documentation/filesystems/affs.txt</filename> in
|
|
the Linux kernel source distribution has more information.
|
|
</para>
|
|
<para>
|
|
See
|
|
(``<xref linkend="upgrade-recompile-kernel"
|
|
endterm="upgrade-recompile-kernel">'')
|
|
</para>
|
|
<para>
|
|
Linux supports AFFS hard-drive partitions only. Floppy access is not
|
|
supported due to incompatibilities between Amiga floppy controllers
|
|
and PC and workstation controllers. The AFFS driver can also mount
|
|
disk partitions used by the Un*x Amiga Emulator, by Bernd Schmidt.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="3.7">
|
|
<title id="can-linux-access-bsd-sysv">
|
|
Can Linux Access BSD, SysV, Etc. UFS?</title>
|
|
<para>
|
|
Recent kernels can mount (read only) the UFS file system used by
|
|
System V; Coherent; Xenix; BSD; and derivatives like SunOS, FreeBSD,
|
|
NetBSD, and NeXTStep. UFS support is available as a kernel
|
|
compile-time option and a module.
|
|
</para>
|
|
<para>
|
|
See,
|
|
(``<xref linkend="upgrade-recompile-kernel"
|
|
endterm="upgrade-recompile-kernel">'')
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="3.8">
|
|
<title id="can-linux-access-smb-file-systems">
|
|
Can Linux Access SMB File Systems?</title>
|
|
<para>
|
|
Linux supports read/write access of Windows for Workgroups and Windows
|
|
NT SMB volumes. See the file Documentation/filesystems/smbfs.txt of
|
|
the Linux kernel source distribution, and
|
|
(``<xref linkend="upgrade-recompile-kernel"
|
|
endterm="upgrade-recompile-kernel">'')
|
|
</para>
|
|
<para>
|
|
There is also a suite of programs called Samba which provide support
|
|
for WfW networked file systems (provided they're for TCP/IP).
|
|
Information is available in the <filename>README</filename> file at
|
|
<ulink url="metalab.unc.edu/pub/Linux/system/network/samba/">
|
|
<literal>metalab.unc.edu/pub/Linux/system/network/samba/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
The SMB Web site is
|
|
<ulink url="http://www.samba.org/">
|
|
<literal>http://www.samba.org/</literal></ulink>, and there is also a
|
|
Web site at <ulink url="samba.anu.edu.au/samba/">
|
|
<literal>samba.anu.edu.au/samba/</literal></ulink>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="3.9">
|
|
<title id="can-linux-access-macintosh-file-systems">
|
|
Can Linux Access Macintosh File Systems?</title>
|
|
<para>
|
|
There is a set of user-level programs that read and write the older
|
|
Macintosh Hierarchical File System (HFS). It is available at
|
|
<ulink url="metalab.unc.edu/pub/Linux/utils/disk-management/">
|
|
<literal>metalab.unc.edu/pub/Linux/utils/disk-management/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
Access to the newer, HFS+ file systems is still under development.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="3.10">
|
|
<title id="microsoft-windows-programs-underlinux">
|
|
Can Linux Run Microsoft Windows Programs?</title>
|
|
<para>
|
|
WINE, a MS Windows emulator for Linux, is still not ready for general
|
|
distribution. If you want to contribute to its development, look for
|
|
the status reports in the
|
|
<citetitle>comp.emulators.ms-windows.wine</citetitle> newsgroup.
|
|
</para>
|
|
<para>
|
|
There is also a FAQ, compiled by P. David Gardner, at
|
|
<ulink url="ftp://metalab.unc.edu/pub/Linux/docs/faqs/Wine-FAQ/">
|
|
<literal>ftp://metalab.unc.edu/pub/Linux/docs/faqs/Wine-FAQ/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
In the meantime, if you need to run MS Windows programs, the best
|
|
bet—seriously—is to reboot. LILO, the Linux boot loader, can boot
|
|
one of several operating systems from a menu. See the LILO
|
|
documentation for details.
|
|
</para>
|
|
<para>
|
|
Also, <filename>LOADLIN.EXE</filename> (a DOS program to load a Linux,
|
|
or other OS, kernel is one way to make Linux co-exist with DOS.
|
|
<filename>LOADLIN.EXE</filename> is particularly handy when you want
|
|
to install Linux on a 3rd or 4th drive on a system (or when you're
|
|
adding a SCSI drive to a system with an existing IDE).
|
|
</para>
|
|
<para>
|
|
In these cases, it is common for LILO's boot loader to be unable to
|
|
find or load the kernel on the "other" drive. So you just create a
|
|
<filename>C:\LINUX</filename> directory (or whatever), put
|
|
<filename>LOADLIN.EXE</filename> in it with a copy of your kernel, and
|
|
use that.
|
|
</para>
|
|
<para>
|
|
<filename>LOADLIN.EXE</filename> is a VCPI compliant program. Win95
|
|
will want to, "shutdown into DOS mode," to run it (as it would with
|
|
certain other DOS protected-mode programs).
|
|
</para>
|
|
<para>
|
|
Earlier versions of <filename>LOADLIN.EXE</filename> sometimes
|
|
required a package called <filename>REALBIOS.COM</filename>, which
|
|
required a boot procedure on an (almost) blank floppy to map the
|
|
interrupt vectors (prior to the loading of any software
|
|
drivers). (Current versions don't seem to ship with it, and don't seem
|
|
to need it).
|
|
</para>
|
|
<para>
|
|
[Jim Dennis]
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="3.11">
|
|
<title id="information0about-nfs-compatibility">
|
|
Where Is Information about NFS Compatibility?</title>
|
|
<para>
|
|
This information is partly taken from Nicolai Langfeldt's excellent
|
|
NFS HOWTO, and is current as of 10/1/1999.
|
|
</para>
|
|
<para>
|
|
Most version 2.2.x kernels need a set of patches to install the
|
|
<command>knfsd</command>
|
|
subsystem, maintained by H.J. Lu, to communicate efficiently (if at
|
|
all) with Sparc, IBM RS, and Alpha machines, and probably others. This
|
|
package is actually a collection of patches to the kernel sources.
|
|
Better support for non-Intel architectures is included in the
|
|
2.4 kernels.
|
|
</para>
|
|
<para>
|
|
There is also a user-space server. Although it lacks remote file
|
|
locking, it is easier to install. It may be equally efficient.
|
|
</para>
|
|
<para>
|
|
In the <filename>Documentation/Changes</filename> of recent kernel
|
|
distributions, there is a list of URL's for both the
|
|
<command>knfsd</command> server and the user-space server.
|
|
</para>
|
|
<para>
|
|
There is a CVS server available for the kernel-space NFS subsystem, as
|
|
well as a NFS WWW page at
|
|
<ulink url="http://www.linuxnfs.sourceforge.org/">
|
|
<literal>http://www.linuxnfs.sourceforge.org/</literal></ulink>,
|
|
although the URL requires a password for access. The relevant URL's
|
|
are listed in the <filename>README.nfs</filename> file at
|
|
<ulink url="ftp://ftp.us.kernel.org/">
|
|
<literal>ftp://ftp.us.kernel.org/</literal></ulink>, and other kernel
|
|
archive sites, along with login information. Patches are at
|
|
<ulink url="ftp://ftp.varesearch.com/pub/kernel/latest/patches/">
|
|
<literal>ftp://ftp.varesearch.com/pub/kernel/latest/patches/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
The source archives of the user-space server and utilities currently
|
|
reside on
|
|
<ulink url="ftp://linux.mathematik.tu-darmstadt.de:/pub/linux/people/okir/">
|
|
<literal>ftp://linux.mathematik.tu-darmstadt.de:/pub/linux/people/okir/
|
|
</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
In the case of older Solaris releases, the lack of
|
|
<literal>statd</literal> or <literal>lockd</literal> on a client or
|
|
server machine may cause incompatibility. On some versions of
|
|
Solaris, <literal>statd</literal> can be used to exploit features of
|
|
the automounter. Sun released a patch to correct this, but <literal>
|
|
statd</literal> still needs to be started by root on such systems. On
|
|
recent Solaris systems, refer to the information in
|
|
<literal>/etc/dfs/dfstab</literal> and the
|
|
<literal>share(1M)</literal> manual page to enable volume sharing. In
|
|
addition, the <literal>rpcinfo</literal> program can tell you if
|
|
<literal>statd</literal> or <literal>lockd</literal> are available on
|
|
the local or remote machines.
|
|
</para>
|
|
<para>
|
|
The <literal>linux-kernel</literal> mailing list has on-and-off
|
|
discussions of the status of the NFS subsystem, which appears to be
|
|
changing rapidly.
|
|
</para>
|
|
<para>
|
|
[Nicolai Langfeldt, Robert Kiesling, Anders Hammarquist]
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="3.12">
|
|
<title id="true-type-fonts-with-linux">
|
|
Can Linux Use True Type Fonts?</title>
|
|
<para>
|
|
Yes. There are a number of True Type font servers for the X Window
|
|
System. One of them is <command>xfsft</command>. Its home page is
|
|
<ulink url="http://www.dcs.ed.ac.uk/home/jec/programs/xfsft/">
|
|
<literal>http://www.dcs.ed.ac.uk/home/jec/programs/xfsft/</literal></ulink>.
|
|
There are also instructions for configuration.
|
|
</para>
|
|
<para>
|
|
People have reported success with other True Type font servers. There
|
|
are links from the <command>xfsft</command> Home Page to them as well.
|
|
</para>
|
|
<para>
|
|
You can also compile True Type Font support into your X server
|
|
directly. Again, refer to the <command>xfsft</command> Home Page for
|
|
details.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="3.13">
|
|
<title id="boot-linux-from-ms-dos">
|
|
Can Linux Boot from MS-DOS?</title>
|
|
<para>
|
|
If LILO doesn't work, and if the machine has MS-DOS or Microsoft
|
|
Windows, you may be left with a computer that won't boot. This can
|
|
also happen on an upgrade to your Linux distribution. Re-installing
|
|
LILO is the last thing that the installation does. So it is vitally
|
|
important when installing or upgrading Linux on a dual boot machine,
|
|
to have a MS-DOS or Windows rescue disk nearby so you can
|
|
<literal>FDISK -MBR</literal>. Then you can go about using
|
|
<filename>LOADLIN.EXE</filename> instead of LILO.
|
|
</para>
|
|
<para>
|
|
This <filename>config.sys</filename> file is one possible way to
|
|
invoke <filename>LOADLIN.EXE</filename> and boot MS-DOS or Linux.
|
|
</para>
|
|
<para><screen>
|
|
[menu]
|
|
menuitem=DOS, Dos Boot
|
|
menuitem=LINUX, Linux Boot
|
|
|
|
[LINUX]
|
|
shell=c:\redhat\loadlin.exe c:\redhat\autoboot\vmlinuz vga=5 root=/dev
|
|
|
|
[DOS]
|
|
STACKS = 0,0
|
|
rem all the other DOS drivers get loaded here.
|
|
</screen></para>
|
|
<para>
|
|
This creates a menu where you can directly jump to
|
|
<filename>LOADLIN.EXE</filename> before all of the MS-DOS drivers get
|
|
loaded.
|
|
</para>
|
|
<para>
|
|
The paths and options are peculiar to one machine and should be
|
|
intuitively obvious to the most casual observer. See the
|
|
<filename>LOADLIN.EXE</filename> docs for options. They are the same
|
|
as LILO, and options are just passed to the kernel, anyhow.
|
|
</para>
|
|
<para>
|
|
[Jim Harvey]
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="3.14">
|
|
<title id="boot-linux-from-os2s-boot">
|
|
How Can Linux Boot from OS/2's Boot Manager?</title>
|
|
<para>
|
|
<orderedlist numeration="Arabic">
|
|
<listitem><para> Create a partition using OS/2's
|
|
<filename>FDISK.EXE</filename> (Not Linux's <command>fdisk</command>).
|
|
</para></listitem> <listitem><para> Format the partition under OS/2,
|
|
either with FAT or HPFS. This is so that OS/2 knows about the
|
|
partition being formatted. (This step is not necessary with OS/2
|
|
`warp' 3.0.) </para></listitem> <listitem><para> Add the partition to
|
|
the Boot Manager. </para></listitem> <listitem><para> Boot Linux, and
|
|
create a file system on the partition using <command>mkfs -t
|
|
ext2</command> or <command>mke2fs</command>. At this point you may,
|
|
if you like, use Linux's <command>fdisk</command> to change the code
|
|
of the new partition to type 83 (Linux Native)—this may help some
|
|
automated installation scripts find the right partition to use.
|
|
</para></listitem>
|
|
<listitem><para> Install Linux on the partition.
|
|
</para></listitem>
|
|
<listitem>
|
|
<para>
|
|
Install LILO on the Linux partition—NOT on the master boot record
|
|
of the hard drive. This installs LILO as a second-stage boot
|
|
loader on the Linux partition itself, to start up the kernel
|
|
specified in the LILO configuration file. To do this, you should
|
|
put
|
|
</para>
|
|
|
|
<screen>
|
|
boot = /dev/hda2
|
|
</screen>
|
|
|
|
<para>
|
|
(where <filename>/dev/hda2</filename> is the partition you
|
|
want to boot from) in your
|
|
<filename>/etc/lilo/config</filename> or
|
|
<filename>/etc/lilo.config</filename> file.
|
|
</para></listitem>
|
|
|
|
<listitem><para>
|
|
Make sure that it is the Boot Manager partition that is marked
|
|
active, so that you can use Boot Manager to choose what to boot.
|
|
</para></listitem>
|
|
</orderedlist>
|
|
</para>
|
|
<para>
|
|
There is a set of HOWTO's on the subject of multi-boot systems at the
|
|
LDP Home Page,
|
|
<ulink url="http://www.linuxdoc.org/">
|
|
<literal>http://www.linuxdoc.org/</literal></ulink>.
|
|
</para>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
<sect1 label="4">
|
|
<title>File Systems, Disks, and Drives</title>
|
|
<sect2 label="4.1">
|
|
<title id="linux-to-work-with-my-disk">
|
|
How To Get Linux to Work with a Disk.</title>
|
|
<para>
|
|
If your disk is an IDE or EIDE drive, you should read the file
|
|
<filename>/usr/src/linux/drivers/block/README.ide</filename>
|
|
(part of the Linux kernel
|
|
source code). This <filename>README</filename> contains many
|
|
helpful hints about IDE
|
|
drives. Many modern IDE controllers do translation between `physical'
|
|
cylinders/heads/sectors, and `logical' ones.
|
|
</para>
|
|
<para>
|
|
SCSI disks are accessed by linear block numbers. The BIOS invents some
|
|
`logical' cylinder/head/sector fiction to support DOS.
|
|
</para>
|
|
<para>
|
|
Older IBM PC-compatible BIOS's will usually not be able to access
|
|
partitions which extend beyond 1024 logical cylinders, and will make
|
|
booting a Linux kernel from such partitions using LILO problematic at
|
|
best.
|
|
</para>
|
|
<para>
|
|
You can still use such partitions for Linux or other operating systems
|
|
that access the controller directly.
|
|
</para>
|
|
<para>
|
|
It's recommend that you create at least one Linux partition entirely
|
|
under the 1024 logical cylinder limit, and boot from that. The other
|
|
partitions will then be okay.
|
|
</para>
|
|
<para>
|
|
Also there seems to be a bit of trouble with the newer Ultra-DMA
|
|
drives. I haven't gotten the straight scoop on them—but they are
|
|
becoming a very common problem at the SVLUG installfests. When you can
|
|
get 8 to 12 Gig drives for $200 to $300 it's no wonder.
|
|
</para>
|
|
<para>
|
|
[Jim Dennis]
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="4.2">
|
|
<title id="undelete-files">How To Undelete Files.</title>
|
|
<para>
|
|
In general, this is very hard to do on unices because of their
|
|
multitasking nature. Undelete functionality for the
|
|
<citetitle>ext2fs</citetitle> file system
|
|
is being worked on, but don't hold your breath.
|
|
</para>
|
|
<para>
|
|
There are a number of packages available which instead provide new
|
|
commands for deleting and copying which move deleted files into a
|
|
`wastebasket' directory. The files can be recovered until cleaned out
|
|
automatically by background processing.
|
|
</para>
|
|
<para>
|
|
The Midnight Commander file manager provides an undelete facility that
|
|
uses Ext2 file system library functions and an undelete directory
|
|
for each file system. Commercial distribution packages of MC may or
|
|
may not have this feature enabled, so be sure to look in the source
|
|
code distribution for instructions on how to enable the undelete
|
|
feature.
|
|
</para>
|
|
<para>
|
|
Alternatively, you can search the raw disk device which holds the file
|
|
system in question. This is hard work, and you will need to be logged
|
|
in as root to do this. But it can be done. Run <command>grep</command>
|
|
on the raw device; e.g.:
|
|
</para>
|
|
<para><screen>
|
|
grep -b 'bookmarks' /dev/hda
|
|
</screen></para>
|
|
<para>
|
|
If the data has not been overwritten, you should be able to recover it
|
|
with a text editor.
|
|
</para>
|
|
<para>
|
|
[Dave Cinege, Daniel Novotny]
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="4.3">
|
|
<title id="how-do-i-make-backups">How To Make Backups.</title>
|
|
<para>
|
|
You can back up a directory hierarchy or complete file system to any
|
|
media using GNU <command>tar</command> or
|
|
<command>cpio</command>, the standard *nix tools for this purpose.
|
|
<command>tar</command> seems to be the more commonly
|
|
used program currently, and includes
|
|
command line options to make compressed, incremental, and multi-volume
|
|
backups. Complete information is contained in the documentation, which
|
|
is in GNU Texinfo format.
|
|
</para>
|
|
<para>
|
|
The free program, <application>Amanda</application>,
|
|
receives a lot of mentions on Usenet. Its
|
|
home page is
|
|
<ulink url="http://www.amanda.org/">
|
|
<literal>http://www.amanda.org/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
Several commercial backup utilities also exist. They are often
|
|
included in commercial distributions.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="4.4">
|
|
<title id="resize-a-partition-non-destructively">
|
|
How To Resize a Partition (Non-Destructively).</title>
|
|
<para>
|
|
Use the <command>FIPS.EXE</command> program, included with
|
|
most Linux distributions,under MS-DOS.
|
|
</para>
|
|
<para>
|
|
GNU <command>parted</command>, a partition editor, is stable enough
|
|
for non-guru, mere-mortal use with relative confidence. Source code
|
|
for the latest version is at: <ulink
|
|
url="ftp://ftp.gnu.org/pub/gnu/parted/">
|
|
<literal>ftp://ftp.gnu.org/pub/gnu/parted/</literal></ulink>. There's
|
|
also a boot disk image for resizing root partitions and for running
|
|
<command>parted</command> on non-Linux machines. The disk image
|
|
may be easier for beginners. Building from source could require some
|
|
extra configuration.
|
|
</para>
|
|
<para>
|
|
Parted also has tutorial-style, plain-text documentation for Linux and
|
|
FAT (MS-DOS) file systems.
|
|
</para>
|
|
<para>
|
|
Also, some commercial distributions come with their own partitioning
|
|
software, like <application>Partition Magic</application>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="4.5">
|
|
<title id="defragmenter-for-ext2fs-etc">
|
|
Is There a Defragmenter for Ext2fs?</title>
|
|
<para>
|
|
Yes. There is <application>defrag</application>, a Linux file
|
|
system defragmenter for <citetitle>ext2</citetitle>,
|
|
<citetitle>Minix</citetitle>, and old-style
|
|
<citetitle>ext</citetitle> file systems.
|
|
It is available at
|
|
<ulink url="ftp://metalab.unc.edu/pub/Linux/system/filesystems/defrag-0.70.tar.gz">
|
|
<literal>ftp://metalab.unc.edu/pub/Linux/system/filesystems/defrag-0.70.tar.gz
|
|
</literal></ulink>.</para>
|
|
<para>
|
|
Users of the <citetitle>ext2</citetitle> file system can probably
|
|
do without <application>defrag</application>, because
|
|
<citetitle>ext2</citetitle> contains extra code to keep
|
|
fragmentation reduced even in very full file systems.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="4.6">
|
|
<title id="create-file-system-on-a-floppy">
|
|
How To Create a File System on a Floppy.</title>
|
|
<para>
|
|
To format a 3.5-inch, high density floppy:
|
|
</para>
|
|
<para><screen>
|
|
$ fdformat /dev/fd0H1440
|
|
$ mkfs -t ext2 -m 0 /dev/fd0H1440 1440
|
|
</screen></para>
|
|
<para>
|
|
For a 5.25 inch floppy, use <filename>fd0h1200</filename> and
|
|
1200 as appropriate. For the
|
|
<filename>B:</filename> drive use <filename>fd1</filename> instead of
|
|
<filename>fd0</filename>.
|
|
</para>
|
|
<para>
|
|
The <command>-m 0</command> option tells
|
|
<application>mkfs.ext2</application> not to reserve any space on the disk
|
|
for the superuser—usually the last 10% is reserved for root.
|
|
</para>
|
|
<para>
|
|
The first command performs a low-level format. The second creates an
|
|
empty file system. You can mount the floppy like a hard disk partition
|
|
and simply <command>cp</command> and <command>mv</command> files, etc.
|
|
</para>
|
|
<para>
|
|
Device naming conventions generally are the same as for other unices.
|
|
They can be found in Matt Welsh's <citetitle>Installation and Getting
|
|
Started</citetitle> guide. Refer to
|
|
(``<xref linkend="howtos-and-other-documentation"
|
|
endterm="howtos-and-other-documentation">'')
|
|
A more detailed and technical description is
|
|
<citetitle>Linux Allocated Devices</citetitle> by H. Peter Anvin,
|
|
<ulink url="mailto:hpa@zytor.com">
|
|
<literal>hpa@zytor.com</literal></ulink>, which is
|
|
included in LaTeX and ASCII form in the kernel source distribution
|
|
(probably in <filename>/usr/src/kernel/Documentation/</filename>),
|
|
as <filename>devices.tex</filename> and
|
|
<filename>devices.txt</filename>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="4.7">
|
|
<title id="virtualized-file-systems-like-raid">
|
|
Does Linux Support Virtualized File Systems Like RAID?</title>
|
|
<para>
|
|
The most recent Linux kernels support software RAID, and they will
|
|
work with RAID disk controllers.
|
|
</para>
|
|
<para>
|
|
An automounter for NFS partitions is part of most Linux distributions.
|
|
</para>
|
|
<para>
|
|
In addition, several virtual file system projects exist. One of them,
|
|
the <citetitle>Linux Logical Volume Manager</citetitle>, is located at
|
|
<ulink url="http://linux.msede.com/lvm/">
|
|
<literal>http://linux.msede.com/lvm/</literal></ulink>.</para>
|
|
</sect2>
|
|
|
|
<sect2 label="4.8">
|
|
<title id="support-file-system-encryption">
|
|
Does Linux Support File System Encryption?</title>
|
|
<para>
|
|
Yes. One file system, ppdd, is archived at
|
|
<ulink url="http://pweb.de.uu.net/flexsys.mtk/">
|
|
<literal>http://pweb.de.uu.net/flexsys.mtk/</literal></ulink>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="4.9">
|
|
<title id="nasty-messages-about-inodes">
|
|
Linux Prints Nasty Messages about Inodes, Blocks, and the Like.</title>
|
|
<para>
|
|
You may have a corrupted file system, probably caused by not shutting
|
|
Linux down properly before turning off the power or resetting. You
|
|
need to use a recent shutdown program to do this—for example, the one
|
|
included in the util-linux package, available on sunsite and tsx-11.
|
|
</para>
|
|
<para>
|
|
If you're lucky, the program <command>fsck</command> (or
|
|
<command>e2fsck</command> or <command>xfsck</command> as appropriate
|
|
if you don't have the automatic <command>fsck</command> front-end)
|
|
will be able to repair your file system. If you're unlucky, the file
|
|
system is trashed, and you'll have to re-initialize it with mkfs (or
|
|
<command>mke2fs</command>, <command>mkxfs</command>, etc.),
|
|
and restore from a backup.
|
|
</para>
|
|
<para>
|
|
NB: don't try to check a file system that's mounted read/write—this
|
|
includes the root partition, if you don't see
|
|
</para>
|
|
<para><screen>
|
|
VFS: mounted root ... read-only
|
|
</screen></para>
|
|
<para>
|
|
at boot time.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="4.10">
|
|
<title id="swap-area-isnt-working">
|
|
The Swap Area Isn't Working.</title>
|
|
<para>
|
|
When you boot (or enable swapping manually) you should see
|
|
</para>
|
|
<para><screen>
|
|
Adding Swap: NNNNk swap-space
|
|
</screen></para>
|
|
<para>
|
|
If you don't see any messages at all you are probably missing
|
|
</para>
|
|
<para><screen>
|
|
swapon -av
|
|
</screen></para>
|
|
<para>
|
|
(the command to enable swapping) in your /etc/rc.local or /etc/rc.d/*
|
|
(the system startup scripts), or have forgotten to make the right
|
|
entry in <filename>/etc/fstab</filename>:
|
|
</para>
|
|
<para><screen>
|
|
/dev/hda2 none swap sw
|
|
</screen></para>
|
|
<para>
|
|
for example.
|
|
</para>
|
|
<para>
|
|
If you see:
|
|
</para>
|
|
<para><screen>
|
|
Unable to find swap-space signature
|
|
</screen></para>
|
|
<para>
|
|
you have forgotten to run<command> mkswap</command>.
|
|
See the manual page for details; it
|
|
works much like <command>mkfs</command>.
|
|
</para>
|
|
<para>
|
|
Running, <command>free</command> in addition to showing
|
|
free memory, should display:
|
|
</para>
|
|
<para><screen>
|
|
total used free
|
|
Swap: 10188 2960 7228
|
|
</screen></para>
|
|
<para>
|
|
If typing ``<literal>cat /proc/swaps</literal>'' reveals only file
|
|
or partition names, but no swap space information, then the
|
|
swap file or partition needs re-initialization.
|
|
</para>
|
|
<para>
|
|
Use <command>fdisk</command> (as root) to determine which partition
|
|
on a hard drive has been designated as the swap partition. The partition
|
|
still needs to be initialized with <command>mkswap</command> before
|
|
enabling it with <command>swapon</command>.
|
|
</para>
|
|
<para>
|
|
[Andy Jefferson, Steve Withers]
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="4.11">
|
|
<title id="add-temporary-swap-space">
|
|
How To Add Temporary Swap Space.</title>
|
|
<para>
|
|
In addition to a swap partition, Linux can also use a swap file. Some
|
|
programs, like <application>g++</application>, can use huge amounts of
|
|
virtual memory, requiring
|
|
the temporary creation of extra space. To install an extra 64 MB of
|
|
swap space, for example, use the following shell commands:
|
|
</para>
|
|
<para><screen>
|
|
# dd if=/dev/zero of=/swap bs=1024 count=65535
|
|
# mkswap /swap
|
|
# swapon /swap
|
|
</screen></para>
|
|
<para>
|
|
The <command>count=</command> argument to <command>dd</command>
|
|
determines how big the swap file will be. In
|
|
this example the swap file's name is <filename>/swap</filename>,
|
|
but the name and
|
|
location are, generally, arbitrary, depending only on the file
|
|
system's available space and your having write permissions in the
|
|
directory.
|
|
</para>
|
|
<para>
|
|
When you don't need the swap space any more, remove it with the
|
|
following statements:
|
|
</para>
|
|
<para><screen>
|
|
# swapoff /swap
|
|
# rm /swap
|
|
</screen></para>
|
|
<para>
|
|
Take a look also at the <citetitle>Installation HOWTO</citetitle>
|
|
and <citetitle>Installation & Getting Started</citetitle> for
|
|
detailed instructions.
|
|
</para>
|
|
<para>
|
|
If that still doesn't provide enough swap space, refer to
|
|
(``<xref linkend="more-than-128mb-of-swap"
|
|
endterm="more-than-128mb-of-swap">'')
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="4.12">
|
|
<title id="remove-lilo-so-my-system-boots">
|
|
How To Remove LILO So the System Boots DOS Again?</title>
|
|
<para>
|
|
The <command>lilo</command> program (not the complete
|
|
<application>LILO</application> package), uses the command
|
|
line option <command>-u</command> to uninstall the
|
|
<application>LILO</application> boot loader. You have to supply
|
|
the device name of the device you installed
|
|
<application>LILO</application> on, for example:
|
|
</para>
|
|
<para><screen>
|
|
lilo -u /dev/hda
|
|
</screen></para>
|
|
<para>
|
|
This rewrites the original, pre-<application>LILO</application>
|
|
master boot record back to the
|
|
first hard drive, from the boot record saved in
|
|
<filename>/boot/boot.0300</filename>. If
|
|
you installed <application>LILO</application> to a partition
|
|
as a secondary boot loader, for
|
|
example, <filename>/dev/hda1</filename>, <command>lilo</command>
|
|
re-installs the original boot sector from the
|
|
save file <filename>/boot/boot.0301</filename>.
|
|
Refer to the <command>lilo</command> manual page for details.
|
|
Thanks to Villy Kruse for reminding me to update this answer.
|
|
</para>
|
|
<para>
|
|
If you have an earlier version of <application>LILO</application>, you
|
|
will have to use the DOS (MS-DOS 5.0 or later, or OS/2) <literal>FDISK
|
|
/MBR</literal> (which is not documented). This will restore a
|
|
standard <application>MS-DOS</application> Master Boot Record. If you
|
|
have <application>DR-DOS 6.0</application>, go into
|
|
<filename>FDISK.EXE</filename> in the normal way and then select the
|
|
<literal>Re-write Master Boot Record</literal> option.
|
|
</para>
|
|
<para>
|
|
If you create a boot floppy during the Windows installation process,
|
|
make sure that it contains the programs
|
|
<application>FDISK.EXE</application>, <application>FORMAT.COM</application>,
|
|
and <application>SYS.COM</application>, and use that to re-install
|
|
MS-DOS on the hard disk.
|
|
</para>
|
|
<para>
|
|
If you don't have MS-DOS or DR-DOS, you need to have the boot sector
|
|
that LILO saved when you first installed
|
|
it. You did keep that file, didn't you? It's probably called
|
|
<filename>boot.0301</filename> or some such. Type:
|
|
</para>
|
|
<para><screen>
|
|
dd if=boot.0301 of=/dev/hda bs=445 count=1
|
|
</screen></para>
|
|
<para>
|
|
(or <filename>/dev/sda</filename> if you're using a SCSI disk).
|
|
This may also wipe out your
|
|
partition table, so beware! If you're desperate, you could use
|
|
</para>
|
|
<para><screen>
|
|
dd if=/dev/zero of=/dev/hda bs=512 count=1
|
|
</screen></para>
|
|
<para>
|
|
This will erase your partition table and boot sector completely: you
|
|
can then reformat the disk using your favorite software. But this will
|
|
render the contents of your disk inaccessible—you'll lose it all
|
|
unless you're an expert.
|
|
</para>
|
|
<para>
|
|
Note that the <application>DOS</application> MBR boots
|
|
whichever (single!) partition is flagged
|
|
as ``active.'' You may need to use <command>fdisk</command>
|
|
to set and clear the active
|
|
flags on partitions appropriately.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="4.13">
|
|
<title id="fdformat-except-as-root">
|
|
Why Does <command>fdformat</command> Require Superuser Privileges?</title>
|
|
<para>
|
|
The system call to format a floppy can only be done as root,
|
|
regardless of the permissions of <filename>/dev/fd0*</filename>.
|
|
If you want any user to be
|
|
able to format a floppy, try getting the <command>fdformat2</command>
|
|
program. This works
|
|
around the problems by being setuid to root.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="4.14">
|
|
<title id="partitions-checked-each-reboot.">
|
|
The System Checks the Ext2fs Partitions Each Reboot.</title>
|
|
<para>
|
|
Refer to (``<xref linkend="ext2-fs-warning-mounting"
|
|
endterm="ext2-fs-warning-mounting">)
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="4.15">
|
|
<title id="root-file-system-read-only">
|
|
Root File System Is Read-Only.</title>
|
|
<para>
|
|
Remount it. If <filename>/etc/fstab</filename> is correct,
|
|
you can simply type:
|
|
</para>
|
|
<para><screen>
|
|
mount -n -o remount /
|
|
</screen></para>
|
|
<para>
|
|
If <filename>/etc/fstab</filename> is wrong, you must give
|
|
the device name and possibly the
|
|
type, too: e.g.
|
|
</para>
|
|
<para><screen>
|
|
mount -n -o remount -t ext2 /dev/hda2 /
|
|
</screen></para>
|
|
<para>
|
|
To understand how you got into this state, see,
|
|
(``<xref linkend="ext2-fs-warning-mounting"
|
|
endterm="ext2-fs-warning-mounting">'')
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="4.16">
|
|
<title id="huge-proc-kcore">
|
|
What Is <filename>/proc/kcore</filename>?</title>
|
|
<para>
|
|
None of the files in <filename>/proc</filename> are really
|
|
there—they're all, ``pretend,''
|
|
files made up by the kernel, to give you information about the system
|
|
and don't take up any hard disk space.
|
|
</para>
|
|
<para>
|
|
<filename>/proc/kcore</filename> is like an
|
|
``alias'' for the memory in your computer. Its
|
|
size is the same as the amount of RAM you have, and if you read it as
|
|
a file, the kernel does memory reads.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="4.17">
|
|
<title id="AHA1542C-doesnt-work">
|
|
The AHA1542C Doesn't Work with Linux.</title>
|
|
<para>
|
|
The option to allow disks with more than 1024 cylinders, which the
|
|
AHA1542C card can recognize, is only required as a workaround for a
|
|
PC-compatible BIOS misfeature and should be turned `off' under Linux.
|
|
For older Linux kernels you need to turn off most of the `advanced BIOS'
|
|
options—all but the one about scanning the bus for bootable devices.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="4.18">
|
|
<title id="find-the-journalling-file-system">
|
|
Where Is the Journalling File System on the Net?</title>
|
|
<para>
|
|
The journalling file system, named <application>Reiserfs</application>
|
|
has just been released
|
|
from testing. It is said to make Linux even faster than Linux with the
|
|
<application>Ext2</application> file system installed.
|
|
|
|
Complete information is available at
|
|
<ulink url="http://devlinux.org/namesys/">
|
|
<literal>http://devlinux.org/namesys/</literal></ulink>.
|
|
</para>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
<sect1 label="5">
|
|
<title>Porting, Compiling and Obtaining Programs</title>
|
|
<sect2 label="5.1">
|
|
<title id="how-do-i-compile-programs">How To Compile Programs.</title>
|
|
<para>
|
|
Most Linux software is written in C and compiled with the GNU C
|
|
compiler. GCC is a part of every Linux distribution. The latest
|
|
compiler version, documentation, and patches are on
|
|
<ulink url="ftp://ftp.gnu.org/pub/gnu/">
|
|
<literal>ftp://ftp.gnu.org/pub/gnu/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
Programs that are written in C++ must be compiled with the GNU G++
|
|
compiler, which is also included in Linux distributions and available
|
|
from the same place as GCC.
|
|
</para>
|
|
<para>
|
|
To build version 2.0.x kernels, you will need GCC version 2.7.2.x,
|
|
approximately. Trying to build an early Linux kernel with a different
|
|
compiler, like GCC 2.8.x, EGCS, or PGCC, may cause problems because of
|
|
GCC related code dependencies. Kernel versions 2.3 and 2.4 should
|
|
compile correctly with more recent compilers.
|
|
</para>
|
|
<para>
|
|
Information on the EGCS compiler is at
|
|
<ulink url="http://www.gnu.org/software/gcc/gcc.html">
|
|
<literal>http://www.gnu.org/software/gcc/gcc.html</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
Note that at this time, the kernel developers are not answering bug
|
|
requests for earlier kernels, but instead are concentrating on
|
|
developing 2.4.x version kernels and maintaining 2.2.x version
|
|
kernels.
|
|
</para>
|
|
<para>
|
|
[J.H.M. Dassen, Axel Boldt]
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="5.2">
|
|
<title id="install-gnu-software">How To Install GNU Software.</title>
|
|
<para>
|
|
On a correctly configured system, installing a GNU software package
|
|
requires four steps:
|
|
</para>
|
|
<itemizedlist>
|
|
<listitem><para>
|
|
With the <filename>source.tar.gz</filename> archive in the
|
|
<filename>/usr/src/</filename> directory, or
|
|
wherever you maintain your source files, untar and decompress the
|
|
package with the command:
|
|
</para>
|
|
<para><screen>
|
|
tar zxvf package-name.tar.gz
|
|
</screen></para>
|
|
</listitem>
|
|
<listitem><para>
|
|
Run the <command>./configure</command> script in the untarred source archive's
|
|
top-level directory with whatever command line arguments you need.
|
|
The options that configure recognizes are usually contained in a
|
|
file called <filename>INSTALL</filename> or <filename>README</filename>.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Run <command>make</command>.
|
|
This will build the source code into an executable
|
|
program (or programs) and may take a few minutes or a few hours,
|
|
depending on the speed of the computer and the size of the
|
|
package.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Run <command>make install</command>. This will install the
|
|
compiled binaries,
|
|
configuration files, and any libraries in the appropriate
|
|
directories.
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
</sect2>
|
|
|
|
<sect2 label="5.3">
|
|
<title id="where-do-i-get-java">Where To Get Java.</title>
|
|
<para>
|
|
The Sun Microsystems Java runtime environments and
|
|
developer's kits are at <ulink url="http://java.sun.com/java/">
|
|
<literal>http://java.sun.com/java/</literal>.
|
|
</ulink>
|
|
</para>
|
|
<para>
|
|
You can also get the source code, which is licensed by Sun Microsystems.
|
|
</para>
|
|
<para>
|
|
The home page of IBM's Jikes Java compiler is
|
|
<ulink url="http://www10.software.ibm.com/developerworks/opensource/jikes">
|
|
<literal>http://www10.software.ibm.com/developerworks/opensource/jikes
|
|
</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
There is a version of Sun's HotJava browser for Linux
|
|
at: <ulink url="http://www.java.sun.com/products/hotjava/">
|
|
<literal>http://www.java.sun.com/products/hotjava/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
Kaffee, a free Java clone, is available from: <ulink
|
|
url="http://www.kaffe.org/"><literal>http://www.kaffe.org/</literal>.
|
|
</ulink>
|
|
</para>
|
|
<para>
|
|
There is a resource page of free and commercial Java packages
|
|
at: <ulink url="http://www.blackdown.org/java-linux.html">
|
|
<literal>http://www.blackdown.org/java-linux.html</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
Netscape <application>Communicator</application> comes with its own
|
|
version of the <application>Java Runtime Environment</application>, so
|
|
if you need Java only to view Web graphics, you may already have the
|
|
runtime version of the Java Virtual Machine and libraries that you
|
|
need installed on your system. You can download
|
|
Communicator from
|
|
<ulink url="http://www.netscape.com/">
|
|
<literal>http://www.netscape.com/</literal></ulink>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="5.4">
|
|
<title id="port-xxx-to-linux">
|
|
How To Port <emphasis>XXX</emphasis> to Linux.</title>
|
|
<para>
|
|
In general, *nix programs need very little porting. Simply follow the
|
|
installation instructions. If you don't know—and don't know how to
|
|
find out—the answers to some of the questions asked during the
|
|
installation procedure, you can guess, but this tends to produce buggy
|
|
programs. In this case, you're probably better off asking someone else
|
|
to do the port.
|
|
|
|
If you have a BSD-ish program, you should try using
|
|
<command>-I/usr/include/bsd</command>
|
|
and <command>-lbsd</command> on the appropriate parts
|
|
of the compilation lines.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="5.5">
|
|
<title id="ld-so-and-where-do-i-get-it">
|
|
What Is <application>ld.so</application> and How To Get It?</title>
|
|
<para>
|
|
<application>ld.so</application> is the dynamic library loader.
|
|
Each binary using shared
|
|
libraries used to have about 3K of start-up code to find and load the
|
|
shared libraries. Now that code has been put in a special shared
|
|
library, <filename>/lib/ld.so</filename>, where all binaries
|
|
can look for it, so that it
|
|
wastes less disk space, and can be upgraded more easily.
|
|
|
|
<literal>ld.so</literal> can be obtained from
|
|
<ulink url="http://tsx-11.mit.edu/pub/linux/packages/GCC/">
|
|
<literal>http://tsx-11.mit.edu/pub/linux/packages/GCC/</literal></ulink>
|
|
and mirror sites. The latest version at the time of writing is
|
|
<filename>ld.so.1.9.5.tar.gz</filename>.
|
|
|
|
<filename>/lib/ld-linux.so.1</filename> is the same thing for
|
|
ELF ("What's all this
|
|
about ELF? ") and comes in the same package as the
|
|
<filename>a.out</filename> loader.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="5.6">
|
|
<title id="upgrade-libraries-withough-trashing">
|
|
How To Upgrade the Libraries without Trashing the System.</title>
|
|
<warning><para>
|
|
Note: You should always have a rescue disk set ready when you perform
|
|
this procedure, in the likely event that something goes wrong!
|
|
</para></warning>
|
|
<para>
|
|
This procedure is especially difficult if you're upgrading very old
|
|
libraries like <application>libc4</application>. But you should be
|
|
able to keep <application>libc4</application> on the same
|
|
system with <application>libc5</application> libraries for the
|
|
programs that still need them. The
|
|
same holds true for upgrading from <application>libc5</application> to
|
|
the newer-yet <application>glibc2</application> libraries.
|
|
</para>
|
|
<para>
|
|
The problem with upgrading dynamic libraries is that, the moment you
|
|
remove the old libraries, the utilities that you need to upgrade to
|
|
the new version of the libraries don't work. There are ways around
|
|
around this. One is to temporarily place a spare copy of the run time
|
|
libraries, which are in <filename>/lib/</filename>, in
|
|
<filename>/usr/lib/</filename>, or <filename>/usr/local/lib/</filename>,
|
|
or another directory that is listed in the
|
|
<filename>/etc/ld.so.conf</filename> file.
|
|
</para>
|
|
<para>
|
|
For example, when upgrading <application>libc5</application> libraries,
|
|
the files in <filename>/lib/</filename> might
|
|
look something like:
|
|
</para>
|
|
<para><screen>
|
|
libc.so.5
|
|
libc.so.5.4.33
|
|
libm.so.5
|
|
libm.so.5.0.9
|
|
</screen></para>
|
|
<para>
|
|
These are the C libraries and the math libraries. Copy them to another
|
|
directory that is listed in <filename>/etc/ld.so.conf</filename>,
|
|
like <filename>/usr/lib/</filename>:
|
|
</para>
|
|
<para><screen>
|
|
$ cp -df /lib/libc.so.5* /usr/lib/
|
|
$ cp -df /lib/libm.so.5* /usr/lib/
|
|
$ ldconfig
|
|
</screen></para>
|
|
<para>
|
|
Be sure to run <command>ldconfig</command>
|
|
to upgrade the library configuration.
|
|
</para>
|
|
<para>
|
|
The files <filename>libc.so.5</filename> and <filename>libm.so.5</filename>
|
|
are symbolic links to the actual
|
|
library files. When you upgrade, the new links will not be created if
|
|
the old links are still there, unless you use the <command>-f</command>
|
|
flag with <command>cp</command>. The
|
|
<command>-d</command> flag to <command>cp</command> will copy the
|
|
symbolic link itself, and not the file it points to.
|
|
</para>
|
|
<para>
|
|
If you need to overwrite the link to the library directly, use the
|
|
<command>-f</command> flag with <command>ln</command>.
|
|
</para>
|
|
<para>
|
|
For example, to copy new libraries over the old ones, try this. Make a
|
|
symbolic link to the new libraries first, then copy both the libraries
|
|
and the links to <filename>/lib/</filename>, with the following commands.
|
|
</para>
|
|
<para><screen>
|
|
$ ln -sf ./libm.so.5.0.48 libm.so.5
|
|
$ ln -sf ./libc.so.5.0.48 libc.so.5
|
|
$ cp -df libm.so.5* /lib
|
|
$ cp -df libc.so.5* /lib
|
|
</screen></para>
|
|
<para>
|
|
Again, remember to run <command>ldconfig</command> after you copy
|
|
the libraries.
|
|
</para>
|
|
<para>
|
|
If you are satisfied that everything is working correctly, you can
|
|
remove the temporary copies of the old libraries from
|
|
<filename>/usr/lib/</filename> or wherever you copied them.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="5.7">
|
|
<title id="code-or-compiler-for-486-on-386">
|
|
How To Use Code or a Compiler Compiled for a 486 on a 386.</title>
|
|
<para>
|
|
Yes, unless it's the kernel.
|
|
</para>
|
|
<para>
|
|
The <command>-m486</command> option to <application>GCC</application>,
|
|
which is used to compile binaries for x486
|
|
machines, merely changes certain optimizations. This makes for
|
|
slightly larger binaries that run somewhat faster on a 486. They still
|
|
work fine on a 386, though, with a small performance hit.
|
|
</para>
|
|
<para>
|
|
However, from version 1.3.35 the kernel uses 486 or Pentium-specific
|
|
instructions if configured for a 486 or Pentium, thus making it
|
|
unusable on a 386.
|
|
</para>
|
|
<para>
|
|
<application>GCC</application> can be configured for a 386 or
|
|
486; the only difference is that
|
|
configuring it for a 386 makes <command>-m386</command> the default
|
|
and configuring for a
|
|
486 makes <command>-m486</command> the default. In either case,
|
|
these can be overridden
|
|
on a per-compilation basis or by editing
|
|
<filename>/usr/lib/gcc-lib/i*-linux/</filename>
|
|
<emphasis>n.n.n</emphasis><filename>/specs</filename>.
|
|
</para>
|
|
<para>
|
|
There is an alpha version of <application>GCC</application> that knows
|
|
how to do optimization well for the 586, but it is quite unreliable,
|
|
especially at high optimization settings. The Pentium GCC can be found
|
|
on <ulink url="ftp://tsx-11.mit.edu/pub/linux/ALPHA/pentium-gcc/">
|
|
<literal>ftp://tsx-11.mit.edu/pub/linux/ALPHA/pentium-gcc/</literal>
|
|
</ulink>. The ordinary 486 GCC supposedly produces better code for
|
|
the Pentium using the <command>-m386</command>, or at least slightly
|
|
smaller.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="5.8">
|
|
<title id="what-does-gcc-o6-do">
|
|
What Does ``<literal>gcc -O6</literal>'' Do?</title>
|
|
<para>
|
|
Currently, the same as <command>-O2</command>
|
|
(<application>GCC</application> 2.5) or <command>-O3</command>
|
|
(<application>GCC</application> 2.6, 2.7). Any number greater than
|
|
that does the same thing. The <filename>Makefiles</filename> of newer
|
|
kernels use <command>-O2</command>, and you should probably do the
|
|
same.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="5.9">
|
|
<title id="linux-h-and-asm-h">
|
|
Where Are <filename>linux/*.h</filename> and
|
|
<filename>asm/*.h</filename>?</title>
|
|
<para>
|
|
The files <filename>/usr/include/linux/</filename> and
|
|
<filename>/usr/include/asm/</filename> are often soft
|
|
links to the directories where the kernel headers are. They are
|
|
usually under <filename>/usr/src/kernel*/</filename>.
|
|
</para>
|
|
<para>
|
|
If you don't have the kernel sources, download them. Refer to the answer:
|
|
(``<xref linkend="upgrade-recompile-kernel"
|
|
endterm="upgrade-recompile-kernel">'')
|
|
</para>
|
|
<para>
|
|
Then, use <command>rm</command> to remove any garbage, and
|
|
<command>ln</command> to create the links:
|
|
</para>
|
|
<para><screen>
|
|
$ rm -rf /usr/include/linux /usr/include/asm
|
|
$ ln -sf /usr/src/linux/include/linux /usr/include/linux
|
|
$ ln -sf /usr/src/linux/include/asm /usr/include/asm
|
|
</screen></para>
|
|
<para>
|
|
<filename>/usr/src/linux/include/asm/</filename> is a symbolic link to an
|
|
architecture-specific <filename>asm</filename> directory. If you have
|
|
a freshly unpacked
|
|
kernel source tree, you must make symlinks. You'll also find that you
|
|
may need to do `make config' in a newly-unpacked kernel source tree,
|
|
to create <filename>linux/autoconf.h</filename>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="5.10">
|
|
<title id="errors-when-i-try-to-compile">
|
|
What To Do about Errors Trying to Compile the Kernel.</title>
|
|
<para>
|
|
See the previous question regarding the header files.
|
|
</para>
|
|
<para>
|
|
Remember that when you apply a patch to the kernel, you must use the
|
|
``<literal>-p0</literal>'' or ``<literal>-p1</literal>'' option: otherwise,
|
|
the patch may be misapplied. See the patch manual page for details.
|
|
</para>
|
|
<para>
|
|
``<literal>ld: unrecognized option `-qmagic'</literal>'' means that
|
|
you should get a newer linker, from
|
|
<ulink url="ftp://tsx-11.mit.edu/pub/linux/packages/GCC/">
|
|
<literal>ftp://tsx-11.mit.edu/pub/linux/packages/GCC/</literal></ulink>,
|
|
in the file <filename>binutils-2.8.1.0.1.bin.tar.gz</filename>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="5.11">
|
|
<title id="make-shared-library">
|
|
How To Make a Shared Library.</title>
|
|
<para>
|
|
For <acronym>ELF</acronym>,
|
|
</para>
|
|
<para><screen>
|
|
$ gcc -fPIC -c *.c
|
|
$ gcc -shared -Wl,-soname,libfoo.so.1 -o libfoo.so.1.0 *.o
|
|
</screen></para>
|
|
<para>
|
|
For <filename>a.out</filename>, get
|
|
<filename>tools-</filename><emphasis>n.nn</emphasis><filename>.tar.gz</filename>
|
|
from
|
|
<ulink url="tsx-11.mit.edu/pub/linux/packages/GCC/src/">
|
|
<literal>tsx-11.mit.edu/pub/linux/packages/GCC/src/</literal></ulink>.
|
|
It comes with documentation that will tell you what to do. Note that
|
|
<filename>a.out</filename> shared libraries are a very tricky
|
|
business. Consider upgrading your libraries to <acronym>ELF</acronym>
|
|
shared libraries. See the <citetitle>ELF HOWTO</citetitle>, at
|
|
<ulink url="ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/">
|
|
<literal>ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/</literal></ulink>
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="5.12">
|
|
<title id="executables-are-very-large">
|
|
Programs Are Very Large.</title>
|
|
<para>
|
|
With an <acronym>ELF</acronym> compiler
|
|
(``<xref linkend="about-elf-glibc"
|
|
endterm="about-elf-glibc">''), the most
|
|
common cause of large executables is the lack of an appropriate .so
|
|
library link for one of the libraries you're using. There should be a
|
|
link like <filename>libc.so</filename> for every library like
|
|
<filename>libc.so.5.2.18</filename>.
|
|
</para>
|
|
<para>
|
|
With an <filename>a.out</filename> compiler the most common cause of
|
|
large executables is
|
|
the <command>-g</command> linker (compiler) flag. This produces
|
|
(as well as debugging
|
|
information in the output file) a program which is statically
|
|
linked—one which includes a copy of the C library instead of a
|
|
dynamically linked copy.
|
|
</para>
|
|
<para>
|
|
Other things worth investigating are <command>-O</command> and
|
|
<command>-O2</command>, which enable
|
|
optimization (check the GCC documentation), and -s (or the strip
|
|
command) which strip the symbol information from the resulting binary
|
|
(making debugging totally impossible).
|
|
</para>
|
|
<para>
|
|
You may wish to use -N on very small executables (less than 8K with
|
|
the -N), but you shouldn't do this unless you understand its
|
|
performance implications, and definitely never with daemons.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="5.13">
|
|
<title id="threads-or-lightweight-processes">
|
|
Does Linux Support Threads or Lightweight Processes?</title>
|
|
<para>
|
|
As well as the Unix multiprocessing model involving heavyweight
|
|
processes, which is of course part of the standard Linux kernel, there
|
|
are several implementations of lightweight processes or threads.
|
|
Recent kernels implement a thread model, kthreads. In addition, there
|
|
are the following packages available for Linux.
|
|
</para>
|
|
<itemizedlist>
|
|
<listitem><para>
|
|
GNU glibc2 for Linux has optional support for threads. The archive
|
|
is available from the same place as glibc2,
|
|
<ulink url="ftp://ftp.gnu.org/pub/gnu/">
|
|
<literal>ftp://ftp.gnu.org/pub/gnu/</literal></ulink>
|
|
</para></listitem>
|
|
<listitem><para>
|
|
In
|
|
<ulink url="sipb.mit.edu:/pub/pthread/">
|
|
<literal>sipb.mit.edu:/pub/pthread/</literal></ulink>
|
|
or
|
|
<ulink url="ftp.ibp.fr:/pub/unix/threads/pthreads">
|
|
<literal>ftp.ibp.fr:/pub/unix/threads/pthreads</literal></ulink>.
|
|
Documentation isn't in the
|
|
package, but is available on the World Wide Web at
|
|
<ulink url="http://www.mit.edu:8001/people/proven/home_page.html">
|
|
<literal>http://www.mit.edu:8001/people/proven/home_page.html</literal>
|
|
</ulink>. Newer Linux
|
|
libc's contain the pthreads source. The GNU Ada compiler on
|
|
<ulink url="ftp://metalab.unc.edu/pub/Linux/devel/lang/ada/gnat-3.01-linux+elf.tar.gz">
|
|
<literal>ftp://metalab.unc.edu/pub/Linux/devel/lang/ada/gnat-3.01-linux+elf.tar.gz</literal></ulink>
|
|
contains
|
|
binaries made from that source code.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
In
|
|
<ulink url="ftp://ftp.cs.washington.edu:/pub/qt-001.tar.Z">
|
|
<literal>ftp://ftp.cs.washington.edu:/pub/qt-001.tar.Z</literal></ulink>
|
|
is QuickThreads. More information can be found in the technical
|
|
report, available on the same site is <filename>
|
|
/tr/1993/05/UW-CSE-93-05-06.PS.Z.</filename></para>
|
|
</listitem>
|
|
<listitem><para>
|
|
In gummo.doc.ic.ac.uk/rex/ is lwp, a very minimal implementation.
|
|
</para></listitem>
|
|
<listitem><para> In
|
|
<ulink url="ftp://ftp.cs.fsu.edu:/pub/PART/">
|
|
<literal>ftp://ftp.cs.fsu.edu:/pub/PART/</literal></ulink>, an
|
|
Ada implementation. This is useful mainly because it has a lot of
|
|
Postscript papers that you'll find useful in learning more about
|
|
threads. This is not directly usable under Linux. </para></listitem>
|
|
</itemizedlist>
|
|
<para>
|
|
Please contact the authors of the packages in question for details.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="5.14">
|
|
<title id="lint-for-linux">
|
|
Where To Find <literal>lint</literal> for Linux.</title>
|
|
<para>
|
|
Roughly equivalent functionality is built into GCC. Use the
|
|
<literal>-Wall</literal>
|
|
option to turn on most of the useful extra warnings. See the GCC
|
|
manual for more details (type
|
|
<keycombo><keycap>F1</keycap>
|
|
<keycap>i</keycap></keycombo>
|
|
in Emacs and select the entry for GCC).
|
|
</para>
|
|
<para>
|
|
There is a freely available program called
|
|
<literal>lclint</literal> that does much the
|
|
same thing as traditional lint. The announcement and source code are
|
|
available at on
|
|
<ulink url="ftp://larch.lcs.mit.edu/pub/Larch/lclint/">
|
|
<literal>ftp://larch.lcs.mit.edu/pub/Larch/lclint/</literal></ulink>;
|
|
on the World Wide Web, look at
|
|
<ulink url="http://lclint.cs.virginia.edu/">
|
|
<literal>http://lclint.cs.virginia.edu/</literal></ulink>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="5.15">
|
|
<title id="kermit-for-linux">
|
|
Where To Find Kermit for Linux.</title>
|
|
<para>
|
|
Kermit is distributed under a non-GPL copyright that makes its terms
|
|
of distribution somewhat different. The sources and some binaries are
|
|
available on
|
|
<ulink url="ftp://kermit.columbia.edu">
|
|
<literal>ftp://kermit.columbia.edu</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
The WWW Home Page of the Columbia University Kermit project is
|
|
<ulink url="http://www.columbia.edu/kermit/">
|
|
<literal>http://www.columbia.edu/kermit/</literal></ulink>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="5.16">
|
|
<title id="linux-cable-modem.">
|
|
How To Use Linux with a Cable Modem.</title>
|
|
<para>
|
|
The www.CablemodemInfo.com and xDSL Web page at
|
|
<ulink url="http://www.cablemodeminfo.com/">
|
|
<literal>http://www.cablemodeminfo.com/</literal></ulink>
|
|
has a section devoted to Linux.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="5.17">
|
|
<title id="icq-program-under-linux">
|
|
Is There an ICQ Program That Runs under Linux?</title>
|
|
<para>
|
|
Several ICQ clients are available on metalab.unc.edu. (Refer to:
|
|
``<xref linkend="get-linux-material-by-ftp"
|
|
endterm="get-linux-material-by-ftp">'')
|
|
ICQ itself does not have a Linux
|
|
client, but there is a Java client at
|
|
<ulink url="http://www.mirabilis.com/download/">
|
|
<literal>http://www.mirabilis.com/download/</literal></ulink>.
|
|
</para>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
<sect1 label="6">
|
|
<title>Solutions to Common Miscellaneous Problems</title>
|
|
<sect2 label="6.1">
|
|
<title id="ppp-connection-dies-when-sending">
|
|
FTP Transfers Seem to Hang.</title>
|
|
<para>
|
|
FTP transfers that die suddenly are due, apparently, to some form of
|
|
overrunning buffer. It occurs both with Linux and Microsoft servers.
|
|
On Linux systems, The problem seems to occur most commonly with the
|
|
distribution's server software.
|
|
</para>
|
|
<para>
|
|
If you receive
|
|
<literal>ftp: connection refused</literal> errors, then the problem
|
|
is likely due to a lack of authentication. Refer to
|
|
``<xref linkend="ftp-wont-login"
|
|
endterm="ftp-wont-login">.''
|
|
</para>
|
|
<para>
|
|
One remedy is to be replacing the distribution FTP server with the
|
|
Linux port of the OpenBSD FTP server. The home page is:
|
|
<ulink url="http://www.eleves.ens.fr:8080/home/madore/programs/">
|
|
<literal>http://www.eleves.ens.fr:8080/home/madore/programs/</literal></ulink>
|
|
</para>
|
|
<para>
|
|
To install the BSD server, follow the installation instructions, and
|
|
refer to the manual pages for <filename>inetd</filename> and
|
|
<filename>inetd.conf</filename>. (If you have the newer
|
|
<filename>xinetd</filename>, see below.) Be sure to tell
|
|
<filename>inetd</filename> to run the BSD daemon alone, not as a
|
|
subprocess of, for example, <filename>tcpd</filename>. Comment
|
|
out the line that begins ``<literal>ftp</literal>'' in the
|
|
<filename>/etc/inetd.conf</filename> file and replace it with a
|
|
line similar to (if you install the new <filename>ftpd</filename>
|
|
in <filename>/usr/local/sbin/</filename>):
|
|
</para>
|
|
<para><programlisting>
|
|
|
|
# Original entry, commented out.
|
|
#ftp stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.ftpd
|
|
|
|
# Replacement entry:
|
|
ftp stream tcp nowait root /usr/local/sbin/ftpd -l
|
|
|
|
</programlisting></para>
|
|
<para>
|
|
The replacement daemon will become effective after rebooting
|
|
or sending (as root) a <literal>SIGHUP</literal> to
|
|
<literal>inetd</literal>, e.g.:
|
|
</para>
|
|
<para><screen>
|
|
# kill -HUP inetd
|
|
</screen></para>
|
|
<para>
|
|
To configure <filename>xinetd</filename>, create an entry in
|
|
<filename>/etc/xinetd.d</filename> per the instructions in the
|
|
<filename>xinetd.conf</filename> manual page. Make sure,
|
|
again, that the command-line arguments for <filename>ftpd</filename>
|
|
are correct, and that you have installed the <filename>/etc/ftpusers</filename>
|
|
and <filename>/etc/pam.d/ftp</filename> files. Then restart
|
|
<filename>xinetd</filename> with the command:
|
|
<literal>/etc/rc.d/init.d/xinetd restart</literal>. The command
|
|
should report ``OK,'' and the restart will be noted in the
|
|
system message log.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="6.2">
|
|
<title id="free-dumps-core.">Free Dumps Core.</title>
|
|
<para>
|
|
In Linux 1.3.57 and later, the format of <filename>/proc/meminfo</filename>
|
|
was changed in
|
|
a way that the implementation of <application>free</application>
|
|
doesn't understand.
|
|
|
|
Get the latest version, from metalab.unc.edu, in
|
|
<filename>/pub/Linux/system/Status/ps/procps-0.99.tgz</filename>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="6.3">
|
|
<title id="netscape-crashes">
|
|
Netscape Crashes Frequently.</title>
|
|
<para>
|
|
Netscape shouldn't crash, if it and the network are properly configured.
|
|
Some things to check:
|
|
</para>
|
|
<para>
|
|
<itemizedlist>
|
|
<listitem><para>
|
|
Make sure that the <literal>MOZILLA_HOME</literal> environment
|
|
variable is correctly set. If you installed Netscape under
|
|
<filename>/usr/local/netscape/</filename>, for example, that should be
|
|
the value of <literal>MOZILLA_HOME</literal>. Set it from the command
|
|
line (e.g, ``<literal>export
|
|
MOZILLA_HOME="/usr/local/netscape"</literal>'' under
|
|
<command>bash</command> or add it to one your personal or system
|
|
initialization files. Refer to the manual page for your shell for
|
|
details.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
If you have a brand-new version of Netscape, try a previous version,
|
|
in case the run-time libraries are slightly incompatible. For
|
|
example, if Netscape version 4.75 is installed (type
|
|
``<literal>netscape --version</literal>'' at the shell prompt), try
|
|
installing version 4.7. All versions are archived at
|
|
<ulink url="ftp://ftp.netscape.com/">
|
|
<literal>ftp://ftp.netscape.com/</literal></ulink>.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Netscape uses its own Motif and Java Runtime Environment libraries. If
|
|
a separate version of either is installed on your system, ensure that
|
|
they aren't interfering with Netscape's libraries; e.g., by un-installing
|
|
them.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Make sure that Netscape can connect to its default name servers. The program
|
|
will appear to freeze and time out after several minutes if it can't.
|
|
This indicates a problem with the system's Internet connection; likely,
|
|
the system can't connect to other sites, either.
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="6.4">
|
|
<title id="ftp-wont-login">
|
|
FTP or Telnet Server Won't Allow Logins.
|
|
</title>
|
|
<para>
|
|
This applies to server daemons that respond to clients, but don't
|
|
allow logins. On new systems that have Pluggable Authentication
|
|
Modules installed, look for a file named,
|
|
``<filename>ftp</filename>,'' or ``<filename>telnet</filename>,'' in the
|
|
directory <filename>/etc/pam/</filename> or
|
|
<filename>/etc/pam.d/</filename>. If the corresponding authentication
|
|
file doesn't exist, the instructions for configuring FTP and Telnet
|
|
authentication and other PAM configuration, should be in
|
|
<literal>/usr/doc/pam-<version></literal>. Refer also to the
|
|
answer for ``<xref linkend="ftp-421-error" endterm="ftp-421-error">.''
|
|
</para>
|
|
<para>
|
|
If it's an FTP server on an older system, make sure that the account
|
|
exists in <filename>/etc/passwd</filename>, especially
|
|
``<literal>anonymous</literal>.''
|
|
</para>
|
|
<para>
|
|
This type of problem may also be caused a failure to resolve the host
|
|
addresses properly, especially if using Reverse Address Resolution
|
|
Protocol (RARP). The simple answer to this is to list all relevant
|
|
host names and IP addresses in the <filename>/etc/hosts</filename>
|
|
files on each machine. ( Refer to the example
|
|
<filename>/etc/hosts</filename> and
|
|
<filename>/etc/resolv.conf</filename> files in: ``<xref
|
|
linkend="sendmail-pause" endterm="sendmail-pause">.'') If the network
|
|
has an internal DNS, make sure that each host can resolve network
|
|
addresses using it.
|
|
</para>
|
|
<para>
|
|
If the host machine doesn't respond to FTP or Telnet clients at all,
|
|
then the server daemon is not installed correctly, or at all. Refer
|
|
to the manual pages: <literal>inetd</literal> and
|
|
<literal>inetd.conf</literal> on older systems, or
|
|
<literal>xinetd</literal> and <literal>xinetd.conf</literal>, as well
|
|
as <literal>ftpd</literal>, and <literal>telnetd</literal>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="6.5">
|
|
<title id="track-of-bookmarks-netscape">
|
|
How To Keep Track of Bookmarks in Netscape?</title>
|
|
<para>
|
|
This probably applies to most other browsers, too. In the
|
|
Preferences/Navigator menu, set your home page to Netscape's
|
|
<filename>bookmarks.html</filename> file, which is located in the
|
|
<filename>.netscape</filename> (with a leading period)
|
|
subdirectory. For example, if your login name is
|
|
``<literal>smith</literal>,'' set the home page to:
|
|
</para>
|
|
<para><screen>
|
|
file://home/smith/.netscape/bookmarks.html
|
|
</screen></para>
|
|
<para>
|
|
Setting up your personal home page like this will present you with a
|
|
nicely formatted (albeit possibly long) page of bookmarks when
|
|
Netscape starts. And the file is automatically updated whenever you
|
|
add, delete, or visit a bookmarked site.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="6.6">
|
|
<title id="computer-has-wrong-time">
|
|
The Computer Has the Wrong Time.</title>
|
|
<para>
|
|
There are two clocks in your computer. The hardware (CMOS) clock runs
|
|
even when the computer is turned off, and is used when the system
|
|
starts up and by DOS (if you use DOS). The ordinary system time, shown
|
|
and set by <command>date</command>, is maintained by the kernel while Linux is
|
|
running.
|
|
</para>
|
|
<para>
|
|
You can display the CMOS clock time, or set either clock from the
|
|
other, with <filename>/sbin/clock</filename> (now called
|
|
<command>hwclock</command> in many
|
|
distributions). Refer to: <literal>man 8 clock</literal> or
|
|
<literal>man 8 hwclock</literal>.
|
|
</para>
|
|
<para>
|
|
There are various other programs that can correct either or both
|
|
clocks for system drift or transfer time across the network. Some of
|
|
them may already be installed on your system. Try looking for
|
|
<command>adjtimex</command>
|
|
(corrects for drift), Network Time Protocol clients like
|
|
<command>netdate</command>, <command>getdate</command>,
|
|
and <command>xntp</command>, or NTP client-server suite like
|
|
<command>chrony</command>. Refer to:
|
|
``<xref linkend="ported-compiled-written-xxx"
|
|
endterm="ported-compiled-written-xxx">.''
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="6.7">
|
|
<title id="setuid-scripts-dont-work.">
|
|
Setuid Scripts Don't Seem to Work.</title>
|
|
<para>
|
|
That's right. This feature has been disabled in the Linux kernel on
|
|
purpose, because setuid scripts are almost always a security hole.
|
|
<application>Sudo</application> and
|
|
<application>SuidPerl</application> can provide more
|
|
security than setuid scripts or
|
|
binaries, especially if execute permissions are limited to a certain
|
|
user ID or group ID.
|
|
</para>
|
|
<para>
|
|
If you want to know why setuid scripts are a security hole, read the
|
|
FAQ for <citetitle>comp.unix.questions</citetitle>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="6.8">
|
|
<title id="free-memory-keeps-shrinking">
|
|
Free Memory as Reported by <command>free</command> Keeps Shrinking.</title>
|
|
<para>
|
|
The ``<literal>free</literal>'' figure printed by
|
|
<command>free</command> doesn't include memory used as a disk buffer
|
|
cache—shown in the ``<literal>buffers</literal>'' column. If you
|
|
want to know how much memory is really free add the
|
|
``<literal>buffers</literal>'' amount to ``<literal>free</literal>.''
|
|
Newer versions of <command>free</command> print an extra line with
|
|
this info.
|
|
</para>
|
|
<para>
|
|
The disk buffer cache tends to grow soon after starting Linux up. As
|
|
you load more programs and use more files, the contents get cached. It
|
|
will stabilize after a while.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="6.9">
|
|
<title id="add-memory-system-slows">
|
|
When Adding More Memory, the System Slows to a Crawl.</title>
|
|
<para>
|
|
This is a common symptom of a failure to cache the additional memory.
|
|
The exact problem depends on your motherboard.
|
|
</para>
|
|
<para>
|
|
Sometimes you have to enable caching of certain regions in your BIOS
|
|
setup. Look in the CMOS setup and see if there is an option to cache
|
|
the new memory area which is currently switched off. This is
|
|
apparently most common on a '486.
|
|
</para>
|
|
<para>
|
|
Sometimes the RAM has to be in certain sockets to be cached.
|
|
</para>
|
|
<para>
|
|
Sometimes you have to set jumpers to enable caching.
|
|
</para>
|
|
<para>
|
|
Some motherboards don't cache all of the RAM if you have more RAM per
|
|
amount of cache than the hardware expects. Usually a full 256K cache
|
|
will solve this problem.
|
|
</para>
|
|
<para>
|
|
If in doubt, check the manual. If you still can't fix it because the
|
|
documentation is inadequate, you might like to post a message to
|
|
<citetitle>comp.os.linux.hardware</citetitle>
|
|
giving all of the details—make, model number,
|
|
date code, etc., so other Linux users can avoid it.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="6.10">
|
|
<title id="some-programs-wont-log-in">
|
|
Some Programs (E.g. <command>xdm</command>) Won't Allow Logins.</title>
|
|
<para>
|
|
You are probably using non-shadow password programs and are using
|
|
shadow passwords.
|
|
</para>
|
|
<para>
|
|
If so, you have to get or compile a shadow password version of the
|
|
programs in question. The shadow password suite can be found at
|
|
<ulink url="ftp://tsx-11.mit.edu:/pub/linux/sources/usr.bin/shadow/">
|
|
<literal>ftp://tsx-11.mit.edu:/pub/linux/sources/usr.bin/shadow/</literal>
|
|
</ulink>. This is the source code. The binaries are probably in
|
|
<filename>linux/binaries/usr.bin/</filename>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="6.11">
|
|
<title id="log-in-with-no-password">
|
|
Some Programs Allow Logins with No Password.</title>
|
|
<para>
|
|
You probably have the same problem as in
|
|
(``<xref linkend="some-programs-wont-log-in"
|
|
endterm="some-programs-wont-log-in">''), with an added wrinkle.
|
|
</para>
|
|
<para>
|
|
If you are using shadow passwords, you should put a letter
|
|
`<literal>x</literal>' or an asterisk in the password field of
|
|
<filename>/etc/passwd</filename> for each account, so that if a
|
|
program doesn't know about the shadow passwords it won't think it's a
|
|
passwordless account and let anyone in.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="6.12">
|
|
<title id="machine-runs-very-slowly-when">
|
|
The Machine Runs Very Slowly with GCC / X / ...</title>
|
|
<para>
|
|
You may have too little real memory. If you have less RAM than all the
|
|
programs you're running at once, Linux will swap to your hard disk
|
|
instead and thrash horribly. The solution in this case is to not run
|
|
so many things at once or buy more memory. You can also reclaim some
|
|
memory by compiling and using a kernel with less options configured.
|
|
See
|
|
(``<xref linkend="upgrade-recompile-kernel"
|
|
endterm="upgrade-recompile-kernel">'')
|
|
</para>
|
|
<para>
|
|
You can tell how much memory and swap you're using with the free
|
|
command, or by typing:
|
|
</para>
|
|
<para><screen>
|
|
$ cat /proc/meminfo
|
|
</screen></para>
|
|
<para>
|
|
If your kernel is configured with a RAM disk, this is probably wasted
|
|
space and will cause things to go slowly. Use LILO or rdev to tell the
|
|
kernel not to allocate a RAM disk (see the LILO documentation or type
|
|
``<literal>man rdev</literal>'').
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="6.13">
|
|
<title id="can-only-log-in-as-root">
|
|
System Only Allows Root Logins.</title>
|
|
<para>
|
|
You probably have some permission problems, or you have a file
|
|
<filename>/etc/nologin</filename>.
|
|
</para>
|
|
<para>
|
|
In the latter case, put ``<literal>rm -f /etc/nologin</literal>''
|
|
in your <filename>/etc/rc.local</filename> or
|
|
<filename>/etc/rc.d/*</filename> scripts.
|
|
</para>
|
|
<para>
|
|
Otherwise, check the permissions on your shell, and any file names
|
|
that appear in error messages, and also the directories that contain
|
|
these files, up to and including the root directory.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="6.14">
|
|
<title id="screen-is-all-full-of-weird">
|
|
The Screen Is All Full of Weird Characters Instead of Letters.</title>
|
|
<para>
|
|
You probably sent some binary data to your screen by mistake. Type
|
|
<literal>echo '\033c'</literal> to fix it.
|
|
Many Linux distributions have a command,
|
|
<command>reset</command>, that does this.
|
|
</para>
|
|
<para>
|
|
If that doesn't help, try a direct screen escape command.
|
|
</para>
|
|
<para><screen>
|
|
$ echo '<keycombo><keycap>Ctrl</keycap><keycap>V</keycap></keycombo> <keycombo><keycap>Ctrl</keycap><keycap>O</keycap></keycombo>'
|
|
</screen></para>
|
|
<para>
|
|
This resets the default font of a Linux console. Remember to hold down
|
|
the Control key and type the letter, instead of, for example,
|
|
<keycombo><keycap>Ctrl</keycap></keycombo>, then
|
|
<keycombo><keycap>V</keycap></keycombo>. The sequence
|
|
</para>
|
|
<para><screen>
|
|
$ echo '<keycombo><keycap>Ctrl</keycap><keycap>V</keycap></keycombo> <keycap>Esc</keycap> <keycap>C</keycap>'
|
|
</screen></para>
|
|
<para>
|
|
causes a full screen reset. If there's data left on the shell command
|
|
line after typing a binary file, press <keycombo><keycap>Ctrl</keycap><keycap>C</keycap></keycombo> a few times to restore
|
|
the shell command line.
|
|
</para>
|
|
<para>
|
|
Another possible command is an alias, ``<literal>sane</literal>,''
|
|
that can work with generic terminals:
|
|
</para>
|
|
<para><screen>
|
|
$ alias sane='echo -e "\\033c";tput is2; \
|
|
> stty sane line 1 rows $LINES columns $COLUMNS'
|
|
</screen></para>
|
|
<para>
|
|
The alias is enclosed with open quotes (backticks), not single quotes.
|
|
The line break is included here for clarity, and is not required.
|
|
</para>
|
|
<para>
|
|
Make sure that <literal>$LINES</literal> and <literal>$COLUMNS</literal>
|
|
are defined in the environment with a command similar to this in
|
|
<filename>~/.cshrc</filename> or <filename>~/.bashrc</filename>,
|
|
</para>
|
|
<para><screen>
|
|
$ LINES=25; export $LINES; $COLUMNS=80; export $COLUMNS
|
|
</screen></para>
|
|
<para>
|
|
using the correct numbers of <literal>$LINES</literal> and
|
|
<literal>$COLUMNS</literal> for the terminal.
|
|
</para>
|
|
<para>
|
|
Finally, the output of ``<command>stty -g</command>'' can be used to
|
|
create a shell script that will reset the terminal:
|
|
</para>
|
|
<orderedlist>
|
|
<listitem>
|
|
<para>
|
|
Save the output of ``<command>stty -g</command>'' to a file. In
|
|
this example, the file is named ``termset.'':
|
|
</para>
|
|
<para><screen>
|
|
$ stty -g >termset
|
|
</screen></para>
|
|
<para>
|
|
The output of ``<command>stty -g</command>'' (the contents of
|
|
``<filename>termset</filename>'') will
|
|
look something like:
|
|
</para>
|
|
<para><screen>
|
|
500:5:bd:8a3b:3:1c:7f:15:4:0:1:0:11:13:1a:0:12:f:17:16:0:0:73
|
|
</screen></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Edit ``<filename>termset</filename>'' to become a shell
|
|
script; adding an interpreter and ``<command>stty</command>''
|
|
command:
|
|
</para>
|
|
<para><screen>
|
|
#!/bin/bash
|
|
stty 500:5:bd:8a3b:3:1c:7f:15:4:0:1:0:11:13:1a:0:12:f:17:16:0:0:73
|
|
</screen></para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Add executable permissions to ``<command>termset</command>'' and
|
|
use as a shell script:
|
|
</para>
|
|
<para><screen>
|
|
$ chmod +x termset
|
|
$ ./termset
|
|
</screen></para>
|
|
</listitem>
|
|
</orderedlist>
|
|
<para>
|
|
[Floyd L. Davidson, Bernhard Gabler]
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="6.15">
|
|
<title id="screwed-up-system-and-cant-log-in">
|
|
I Screwed Up the System and Can't Log In to Fix It.</title>
|
|
<para>
|
|
Reboot from an emergency floppy or floppy pair. For example, the
|
|
Slackware boot and root disk pair in the install subdirectory of the
|
|
Slackware distribution.
|
|
</para>
|
|
<para>
|
|
There are also two, do-it-yourself rescue disk creation packages in
|
|
<ulink url="ftp://metalab.unc.edu/pub/Linux/system/Recovery/">
|
|
<literal>ftp://metalab.unc.edu/pub/Linux/system/recovery/</literal></ulink>.
|
|
These are better because they have your own kernel on them, so you
|
|
don't run the risk of missing devices and file systems.
|
|
</para>
|
|
<para>
|
|
Get to a shell prompt and mount your hard disk with something like
|
|
</para>
|
|
<para><screen>
|
|
$ mount -t ext2 /dev/hda1 /mnt
|
|
</screen></para>
|
|
<para>
|
|
Then your file system is available under the directory
|
|
<filename>/mnt</filename> and you
|
|
can fix the problem. Remember to unmount your hard disk before
|
|
rebooting (<command>cd</command> somewhere else
|
|
first, or it will say it's busy).
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="6.16">
|
|
<title id="forgot-root-password">
|
|
I Forgot the <literal>root</literal> Password.</title>
|
|
<para>
|
|
<emphasis>Note: Incorrectly editing any of the files in the
|
|
<filename>/etc/</filename> directory can severely screw up
|
|
a system. Please keep a spare copy of any files in case
|
|
you make a mistake.</emphasis>
|
|
</para>
|
|
<para>
|
|
If your Linux distribution permits, try booting into single-user mode
|
|
by typing ``<literal>single</literal>'' at the <literal>BOOT
|
|
lilo:</literal> prompt. With more recent distributions, you can boot
|
|
into single-user mode when prompted by typing ``<literal>linux
|
|
1</literal>,'' ``<literal>linux single</literal>,'' or
|
|
``<literal>init=/bin/bash</literal>.''
|
|
</para>
|
|
<para>
|
|
If the above doesn't work for you, boot from the installation
|
|
or rescue floppy, and switch to another virtual console with
|
|
<keycombo><keycap>Alt</keycap><keycap>F1</keycap></keycombo> --
|
|
<keycombo><keycap>Alt</keycap><keycap>F8</keycap></keycombo>,
|
|
and then mount the root file system on <literal>/mnt</literal>.
|
|
Then proceed with the steps below to determine if your system
|
|
has standard or shadow passwords, and how to remove the
|
|
password.
|
|
</para>
|
|
<para>
|
|
Using your favorite text editor, edit the root entry of
|
|
the <filename>/etc/passwd</filename> file to remove
|
|
the password, which is located between the first and second
|
|
colons. <emphasis>Do this only if the password field does not
|
|
contain an ``<literal>x</literal>,'' in which case see
|
|
below.</emphasis>
|
|
</para>
|
|
<para>
|
|
<screen>
|
|
root:Yhgew13xs:0:0: ...
|
|
</screen>
|
|
</para>
|
|
<para>
|
|
Change that to:
|
|
</para>
|
|
<para>
|
|
<screen>
|
|
root::0:0: ...
|
|
</screen>
|
|
</para>
|
|
<para>
|
|
If the password field contains an ``<literal>x</literal>,''
|
|
then you must remove the password from the <filename>/etc/shadow</filename>
|
|
file, which is in a similar format. Refer to the manual pages:
|
|
``<literal>man passwd</literal>,'' and ``<literal>man 5 shadow</literal>.''
|
|
</para>
|
|
<para>
|
|
[Paul Colquhuon, Robert Kiesling, Tom Plunket]
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="6.17">
|
|
<title id="a-security-hole-in-rm">
|
|
There's a Huge Security Hole in <command>rm</command>!</title>
|
|
<para>
|
|
No there isn't. You are obviously new to unices and need to read a
|
|
good book to find out how things work. Clue: the ability to delete
|
|
files depends on permission to write in that directory.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="6.18">
|
|
<title id="lpr-andor-lpd-dont-work"><command>
|
|
lpr</command> and/or <command>lpd</command> Don't Work.</title>
|
|
<para>
|
|
First make sure that your <filename>/dev/lp*</filename> port is
|
|
correctly configured. Its
|
|
IRQ (if any) and port address need to match the settings on the
|
|
printer card. You should be able to dump a file directly to the
|
|
printer:
|
|
</para>
|
|
<para><screen>
|
|
$ cat the_file >/dev/lp1
|
|
</screen></para>
|
|
<para>
|
|
If <command>lpr</command> gives you a message like
|
|
<literal>myname@host: host not found</literal>" it may mean that the
|
|
TCP/IP loopback interface, <literal>lo</literal>, isn't working
|
|
properly. Loopback support is compiled into most distribution kernels.
|
|
Check that the interface is configured with the ifconfig command. By
|
|
Internet convention, the network number is 127.0.0.0, and the local
|
|
host address is 127.0.0.1. If everything is configured correctly, you
|
|
should be able to telnet to your own machine and get a login prompt.
|
|
</para>
|
|
<para>
|
|
Make sure that <filename>/etc/hosts.lpd</filename> contains the
|
|
machine's host name.
|
|
</para>
|
|
<para>
|
|
If your machine has a network-aware <command>lpd</command>, like the
|
|
one that comes with LPRng, make sure that
|
|
<filename>/etc/lpd.perms</filename> is configured correctly.
|
|
|
|
Also look at the <citetitle>Printing HOWTO</citetitle>.
|
|
"Where can I get the HOWTO's and other documentation? ".
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="6.19">
|
|
<title id="timestamps-on-files-are-incorrectly">
|
|
Timestamps on Files on MS-DOS Partitions Are Set Incorrectly</title>
|
|
<para>
|
|
There is a bug in the program <command>clock</command>
|
|
(often found in <filename>/sbin</filename>). It
|
|
miscounts a time zone offset, confusing seconds with minutes or
|
|
something like that. Get a recent version.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="6.20">
|
|
<title id="lilo-boot-kernel-image">
|
|
How To Get LILO to Boot the Kernel Image.</title>
|
|
<para>
|
|
From kernel versions 1.1.80 on, the compressed kernel image, which is
|
|
what LILO needs to find, is in <filename>arch/i386/boot/zImage</filename>, or
|
|
<filename>arch/i386/boot/bzImage</filename> when it is built,
|
|
and is normally stored in the
|
|
<filename>/boot/</filename> directory. The
|
|
<filename>/etc/lilo.conf</filename> file should refer to the
|
|
<filename>vmlinuz</filename>
|
|
symbolic link, not the actual kernel image.
|
|
</para>
|
|
<para>
|
|
This was changed to make it easier to build kernel versions for
|
|
several different processors from one source tree.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="6.21">
|
|
<title>How To Make Sure the System Boots after Re-Installing
|
|
the Operating System.
|
|
</title>
|
|
<para>
|
|
This should work whether you're re-installing Linux or some other,
|
|
commercial, operating system:
|
|
</para>
|
|
<itemizedlist>
|
|
<listitem><para>
|
|
Insert a blank, formatted floppy in drive A:
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Save a copy of the boot hard drive's Master Boot Record to the
|
|
floppy, by executing the command:
|
|
</para>
|
|
<para><screen>
|
|
#dd if=/dev/hda of=/dev/fd0 count=1
|
|
</screen></para>
|
|
<para>
|
|
<literal>dd</literal> is a standard program on Linux systems. A
|
|
MS-Windows compatible version is available from
|
|
<ulink url="ftp://ftp.gnu.org/"><literal>ftp://ftp.gnu.org/</literal>
|
|
</ulink>, as well as many MS software archives.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Test that the floppy boots the system by rebooting with the floppy
|
|
in the A: drive.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Then you should be able to install the other operating system (on
|
|
a different hard drive and/or partition, if you don't want to
|
|
uninstall Linux).
|
|
</para></listitem>
|
|
<listitem><para>
|
|
After installation, boot Linux again from the floppy, and re-install
|
|
the MBR with the command: <filename>/sbin/lilo</filename>.
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
<para>[Jacques Guy]</para>
|
|
</sect2>
|
|
|
|
|
|
<sect2 label="6.22">
|
|
<title id="upgraded-kernel-pcmcia-doesnt-work">
|
|
The PCMCIA Card Doesn't Work after Upgrading the Kernel.</title>
|
|
<para>
|
|
The PCMCIA Card Services modules, which are located in
|
|
<filename>/lib/modules/</filename><emphasis>version</emphasis><filename>/pcmcia</filename>,
|
|
where <emphasis>version</emphasis> is the version number of the
|
|
kernel, use configuration information that is specific to that kernel
|
|
image only. The PCMCIA modules on your system will not work with a
|
|
different kernel image. You need to upgrade the PCMCIA card modules
|
|
when you upgrade the kernel.
|
|
</para>
|
|
<para>
|
|
When upgrading from older kernels, make sure that you have the most recent
|
|
version of the run-time libraries, the modutils package, and so on.
|
|
Refer to the file <filename>Documentation/Changes</filename>
|
|
in the kernel source tree for details.
|
|
</para>
|
|
<para>
|
|
Important: If you use the PCMCIA Card Services, do not enable the
|
|
<literal>Network device support/Pocket and portable adapters</literal>
|
|
option of the kernel configuration menu, as this conflicts with the
|
|
modules in Card Services.
|
|
</para>
|
|
<para>
|
|
Knowing the PCMCIA module dependencies of the old kernel is useful.
|
|
You need to keep track of them. For example, if your PCMCIA card
|
|
depends on the serial port character device being installed as a
|
|
module for the old kernel, then you need to ensure that the serial
|
|
module is available for the new kernel and PCMCIA modules as well.
|
|
</para>
|
|
<para>
|
|
The procedure described here is somewhat kludgey, but it is much easier
|
|
than re-calculating module dependencies from scratch, and making sure
|
|
the upgrade modules get loaded so that both the non-PCMCIA and PCMCIA
|
|
are happy. Recent kernel releases contain a myriad of module options,
|
|
too many to keep track of easily. These steps use the existing module
|
|
dependencies as much as possible, instead of requiring you to
|
|
calculate new ones.
|
|
</para>
|
|
<para>
|
|
However, this procedure does not take into account instances where
|
|
module dependencies are incompatible from one kernel version to
|
|
another. In these cases, you'll need to load the modules yourself with
|
|
insmod, or adjust the module dependencies in the
|
|
<filename>/etc/conf.modules</filename> file. The
|
|
<filename>Documentation/modules.txt</filename> file in the kernel
|
|
source tree contains a good description of how to use the kernel
|
|
loadable modules and the module utilities like
|
|
<command>insmod</command>, <command>modprobe</command>, and
|
|
<command>depmod</command>. <filename>Modules.txt</filename> also
|
|
contains a recommended procedure for determining which features to
|
|
include in a resident kernel, and which to build as modules.
|
|
</para>
|
|
<para>
|
|
Essentially, you need to follow these steps when you install a new
|
|
kernel.
|
|
</para>
|
|
<itemizedlist>
|
|
<listitem><para> Before building the new kernel, make a record with
|
|
the <command>lsmod</command> command of the module dependencies that
|
|
your system currently uses. For example, part of the
|
|
<command>lsmod</command> output might look like this:
|
|
</para>
|
|
<para><screen>
|
|
Module Pages Used by
|
|
memory_cs 2 0
|
|
ds 2 [memory_cs] 3
|
|
i82365 4 2
|
|
pcmcia_core 8 [memory_cs ds i82365] 3
|
|
sg 1 0
|
|
bsd_comp 1 0
|
|
ppp 5 [bsd_comp] 0
|
|
slhc 2 [ppp] 0
|
|
serial 8 0
|
|
psaux 1 0
|
|
lp 2 0
|
|
</screen></para>
|
|
<para>
|
|
This tells you for example that the <filename>memory_cs</filename>
|
|
module needs the ds
|
|
and <filename>pcmcia_core</filename> modules loaded first.
|
|
What it doesn't say is that,
|
|
in order to avoid recalculating the module dependencies, you may
|
|
also need to have the <filename>serial</filename>,
|
|
<filename>lp</filename>, <filename>psaux</filename>, and other standard
|
|
modules available to prevent errors when installing the pcmcia
|
|
routines at boot time with <command>insmod</command>.
|
|
A glance at the <filename>/etc/modules</filename> file will tell
|
|
you what modules the system currently loads, and in what order.
|
|
Save a copy of this file for future reference, until you have
|
|
successfully installed the new kernel's modules. Also save the
|
|
<command>lsmod</command>
|
|
output to a file, for example, with the command:
|
|
<command>lsmod >lsmod.old-kernel.output</command>.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Build the new kernel, and install the boot image, either
|
|
<filename>zImage</filename> or
|
|
<filename>bzImage</filename>, to a floppy diskette. To do this, change to the
|
|
<filename>arch/i386/boot</filename> directory (substitute the
|
|
correct architecture
|
|
directory if you don't have an Intel machine), and, with a floppy
|
|
in the diskette drive, execute the command:
|
|
</para>
|
|
<para><screen>
|
|
$ dd if=bzImage of=/dev/fd0 bs=512
|
|
</screen></para>
|
|
<para>
|
|
if you built the kernel with the <command>make bzImage</command>
|
|
command, and if
|
|
your floppy drive is <filename>/dev/fd0</filename>.
|
|
This results in a bootable kernel
|
|
image being written to the floppy, and allows you to try out the
|
|
new kernel without replacing the existing one that LILO boots on
|
|
the hard drive.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Boot the new kernel from the floppy to make sure that it works.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
With the system running the new kernel, compile and install a current
|
|
version of the PCMCIA Card Services package, available from
|
|
metalab.unc.edu as well as other Linux archives. Before installing the
|
|
Card Services utilities, change the names of
|
|
<filename>/sbin/cardmgr</filename> and
|
|
<filename>/sbin/cardctl</filename> to
|
|
<filename>/sbin/cardmgr.old</filename> and
|
|
<filename>/sbin/cardctl.old</filename>. The old versions of these
|
|
utilities are not compatible with the replacement utilities that Card
|
|
Services installs. In case something goes awry with the installation,
|
|
the old utilities won't be overwritten, and you can revert to the
|
|
older versions if necessary. When configuring Card Services with the
|
|
``<literal>make config</literal>'' command, make sure that the build
|
|
scripts know where to locate the kernel configuration, either by using
|
|
information from the running kernel, or telling the build process
|
|
where the source tree of the new kernel is. The ``<literal>make
|
|
config</literal>'' step should complete without errors. Installing the
|
|
modules from the Card Services package places them in the directory
|
|
<filename>/lib/modules/</filename><emphasis>version</emphasis><filename>/pcmcia</filename>,
|
|
where <emphasis>version</emphasis> is the version number of the new
|
|
kernel.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Reboot the system, and note which, if any, of the PCMCIA devices
|
|
work. Also make sure that the non-PCMCIA hardware devices are
|
|
working. It's likely that some or all of them won't work. Use
|
|
<command>lsmod</command> to determine which modules the kernel
|
|
loaded at boot time,
|
|
and compare it with the module listing that the old kernel loaded,
|
|
which you saved from the first step of the procedure. (If you
|
|
didn't save a listing of the <command>lsmod</command> output,
|
|
go back and reboot the old kernel, and make the listing now.)
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
When all modules are properly loaded, you can replace the old
|
|
kernel image on the hard drive. This will most likely be the file
|
|
pointed to by the <filename>/vmlinuz</filename> symlink.
|
|
Remember to update the boot
|
|
sector by running the <command>lilo</command> command after
|
|
installing the new kernel image on the hard drive.
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
<para>
|
|
Also look at the questions, How do I upgrade/recompile my kernel?
|
|
and Modprobe can't locate module, "XXX," and similar messages.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="6.23">
|
|
<title id="ls-colors">
|
|
How To Remove (or Change) the Colors in the
|
|
<application>ls</application> Display.
|
|
</title>
|
|
<para>
|
|
The shell command, ``<literal>unalias ls</literal>,'' should
|
|
completely unset the configuration that some distributions provide as
|
|
standard. To change the colors, refer to the
|
|
<application>ls</application> man page (``<literal>man ls</literal>'').
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="6.24">
|
|
<title id="programs-in-cwd">
|
|
Why Won't a Program Work in the Current Directory?
|
|
</title>
|
|
<para>
|
|
Because the current directory (i.e., ``<literal>.</literal>'') is not
|
|
in the search path, for security reasons, as well as to insure that
|
|
the correct program versions are used. If an intruder is able to
|
|
write a file to a world-writable directory, like
|
|
<filename>/tmp</filename>, presumably he or she would be able to
|
|
execute it if the directory were in the search path. The solution to
|
|
this is to include the directory in the command; e.g.,
|
|
``<literal>./myprog</literal>,'' instead of
|
|
``<literal>myprog</literal>.'' Or add the current directory to your
|
|
<literal>PATH</literal> environment variable; e.g.,
|
|
``<literal>export PATH=".:"$PATH</literal>'' using
|
|
<application>bash</application>, although this is discouraged for the
|
|
reasons mentioned above.
|
|
</para>
|
|
</sect2>
|
|
|
|
</sect1>
|
|
|
|
|
|
<sect1 label="7">
|
|
<title>How To Do This or Find Out That... </title>
|
|
|
|
<sect2 label="7.1">
|
|
<title id="my-notebook-runs-linux">
|
|
How To Find Out If a Notebook Runs Linux.</title>
|
|
<para>
|
|
There's no fixed answer to this question, because notebook hardware is
|
|
constantly updated, and getting the X display, sound, PCMCIA, modem,
|
|
and so forth, working, can take a good deal of effort.
|
|
</para>
|
|
<para>
|
|
Most notebooks currently on the market, for example, use
|
|
``Winmodems,'' which often do not work with Linux because of their
|
|
proprietary hardware interfaces. Even notebooks which are certified as
|
|
``Linux compatible,'' may not be completely compatible.
|
|
</para>
|
|
<para>
|
|
Information about installing Winmodems in general is contained
|
|
in the <citetitle>Winmodems-and-Linux HOWTO</citetitle>. (Refer
|
|
to ``<xref linkend="howtos-and-other-documentation"
|
|
endterm="howtos-and-other-documentation">'')
|
|
</para>
|
|
<para>
|
|
You can find the most current information, or ask other users about
|
|
their notebook experiences, on the linux-laptop mailing list, which is
|
|
hosted by the <literal>vger.redhat.com</literal> server. (Refer to
|
|
``<xref linkend="what-mailing-lists-are-there"
|
|
endterm="what-mailing-lists-are-there">'')
|
|
</para>
|
|
<para>
|
|
A mailing list for Linux on IBM Thinkpads has its home page at
|
|
<ulink url="http://www.topica.com/lists/linux-thinkpad/">
|
|
<literal>http://www.topica.com/lists/linux-thinkpad/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
Another Thinkpad mailing list is hosted by
|
|
<ulink url="http://www.bm-soft.com/">
|
|
<literal>http://www.bm-soft.com/</literal></ulink>.
|
|
Send email with the word ``<literal>help</literal>'' in the
|
|
body of the message to
|
|
<ulink url="mailto:majordomo@www.bm-soft.com">
|
|
<literal>majordomo@www.bm-soft.com</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
There is a Web page about Linux on IBM Thinkpads at
|
|
<ulink url="http://peipa.essex.ac.uk/tp-linux/">
|
|
<literal>http://peipa.essex.ac.uk/tp-linux/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
The Linux Laptop home page is at
|
|
<ulink url="http://www.cs.utexas.edu/users/kharker/linux-laptop/">
|
|
<literal>http://www.cs.utexas.edu/users/kharker/linux-laptop/</literal>
|
|
</ulink>.
|
|
</para>
|
|
<para>
|
|
For information about interfacing peripherals like Zip and CD-ROM
|
|
drives through parallel ports, refer to the Linux Parallel Port Home
|
|
Page, at
|
|
<ulink url="http://www.torque.net/linux-pp.html">
|
|
<literal>http://www.torque.net/linux-pp.html</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
If you need the latest version of the PCMCIA Card Services package, it
|
|
is (or was) located at
|
|
<ulink url="ftp://cb-iris.stanford.edu/pub/pcmcia/">
|
|
<literal>ftp://cb-iris.stanford.edu/pub/pcmcia/</literal></ulink>,
|
|
but that host no longer seems to be available. Recent distributions
|
|
are on
|
|
<ulink url="ftp://metalab.unc.edu/pub/Linux/kernel/pcmcia/">
|
|
<literal>ftp://metalab.unc.edu/pub/Linux/kernel/pcmcia/</literal></ulink>.
|
|
You will also need to have the kernel source code installed as
|
|
well. Be sure to read the <citetitle>PCMCIA-HOWTO</citetitle>, which
|
|
is included in the distribution.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="7.2">
|
|
<title id="install-linux-using-ftp">
|
|
Installing Linux Using FTP.</title>
|
|
<para>
|
|
Most distributions are too large and complex to make FTP installation
|
|
practical. Installing a basic Linux system that doesn't have a GUI or
|
|
major applications is possible with FTP, however. The main
|
|
non-commercial distribution in use is Debian GNU/Linux, and this
|
|
answer describes an installation of a basic Debian system, to which
|
|
you can add other Linux applications and commercial software as
|
|
necessary.
|
|
</para>
|
|
<para>
|
|
This answer describes installation on IBM-compatible machines with an
|
|
Intel x86 or Pentium processor. You will need a machine with at least
|
|
a 80386 processor, 8 Mb of memory, and about 100 Mb of disk space. More
|
|
memory and a larger disk is necessary however, for practical everyday use.
|
|
</para>
|
|
<para>
|
|
For other hardware, substitute ``-arm,'' ``-ppc,'' ``-m68k,''
|
|
or other abbreviation in directory names for ``-i386.''
|
|
</para>
|
|
<para>
|
|
For detailed and hardware-specific information
|
|
refer to: <ulink url="http://www.debian.org/releases/stable/">
|
|
<literal>http://www.debian.org/releases/stable/</literal></ulink>.
|
|
</para>
|
|
<itemizedlist>
|
|
<listitem><para>
|
|
Connect using anonymous FTP to <literal>ftp.debian.org</literal>
|
|
and <command>cd</command> to the
|
|
<filename>pub/debian/dists/stable/main/disks-i386/current/</filename>
|
|
subdirectory.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Retrieve the binary image files for the rescue disk, and the drivers
|
|
disk. Depending on the floppy drive installed on your machine, retrieve
|
|
either the diskette images with "1200" in the names if you have a 1.2 Mb,
|
|
5.25-in. floppy, or the disks with "1440" in the name if the
|
|
computer has a 3.25-in., 1.44 Mb floppy. Then retrieve the base
|
|
system diskettes. Note that there are 7 base system images in the
|
|
1.44-Mb set (which have a ``14'' in their names) , and 9 in the
|
|
1.2-Mb set of images (which have a ``12'' in their names). You will
|
|
use these to create the basic installation diskettes. If you have
|
|
a Linux machine, you can use <command>dd</command>
|
|
to write the images to the
|
|
diskettes. If you are creating the installation diskettes on a
|
|
MS-DOS machine, also download the
|
|
<filename>RAWRITE.EXE</filename> MS-DOS utility,
|
|
which will copy the raw binary images to floppy disks. Also
|
|
download the <filename>install.en.txt</filename>
|
|
document, which contains the detailed installation instructions.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Create the installation disk set on floppies using either
|
|
<command>dd</command>
|
|
under Linux (e.g.:
|
|
``<literal>dd if=resc1440.bin of=/dev/fd0</literal>''), or
|
|
the <filename>RAWRITE.EXE</filename>
|
|
utility under MS-DOS. Be sure to label each
|
|
installation diskette.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Insert the rescue diskette into the floppy drive and reboot the
|
|
computer. If all goes well, the Linux kernel will boot, and you
|
|
will be able start the installation program by pressing
|
|
<keycap>Enter</keycap> at the <literal>boot:</literal> prompt.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Follow the on-screen instructions for partitioning the hard disk,
|
|
installing device drivers, the basic system software, and the
|
|
Linux kernel. If the machine is connected to a local network,
|
|
enter the network information when the system asks for it.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
To install additional software over the Internet, be sure that you
|
|
have installed the <literal>ppp</literal>
|
|
module during the installation process, and
|
|
run (as root) the <filename>/usr/sbin/pppconfig</filename>
|
|
utility. You will need to
|
|
provide your user name with your ISP, your password, the ISP's
|
|
dial-up phone number, the address(es) of the ISP's Domain Name
|
|
Service, and the serial port that your modem is connected to,
|
|
<filename>/dev/ttyS0</filename>–<filename>/dev/ttyS3</filename>.
|
|
Be sure also to specify the
|
|
<literal>defaultroute</literal>
|
|
option to the PPP system, so the computer knows to
|
|
use the PPP connection for remote Internet addresses.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
You may have to perform additional configuration on the PPP
|
|
scripts in the <filename>/etc/ppp</filename>
|
|
subdirectory, and in particular, the
|
|
ISP-specific script in the <filename>/etc/ppp/peers</filename>
|
|
subdirectory. There are
|
|
basic instructions in each script. For detailed information, refer
|
|
to the Debian/GNU Linux installation instructions that you
|
|
downloaded, the pppd manual page
|
|
(type <literal>man pppd</literal>), and the <citetitle>PPP
|
|
HOWTO</citetitle> from the Linux Documentation project,
|
|
<ulink url="http://www.linuxdoc.org/">
|
|
<literal>http://www.linuxdoc.org/</literal></ulink>.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Once you have a PPP connection established with your ISP (it will
|
|
be displayed in the output of ifconfig), use the dselect program
|
|
to specify which additional software you want to install. Use the
|
|
<command>apt</command> <literal>[A]ccess</literal>
|
|
option to retrieve packages via anonymous FTP,
|
|
and make sure to use the <literal>[U]pdate</literal>
|
|
option to retrieve a current
|
|
list of packages from the FTP archive.
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
</sect2>
|
|
|
|
<sect2 label="7.3">
|
|
<title id="resume-ftp">
|
|
Resuming an Interrupted Download.
|
|
</title>
|
|
<para>
|
|
You can use the ``<literal>reget</literal>'' command of the
|
|
standard <command>ftp</command> client program after reconnecting
|
|
to pick up where you left off.
|
|
</para>
|
|
<para>
|
|
Clients like <command>ncftp</command> support resumed FTP downloads,
|
|
and <command>wget</command> supports resumed FTP and HTTP downloads.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="7.4">
|
|
<title id="boot-time-parameters">
|
|
Boot-Time Configuration.</title>
|
|
<para>
|
|
You can configure Linux at the <literal>lilo:</literal> prompt either
|
|
by typing the kernel arguments at the <literal>BOOT lilo:</literal>
|
|
prompt, or by adding an ``<literal>append=</literal>'' directive to the
|
|
<filename>/etc/lilo.conf</filename> file; for example:
|
|
</para>
|
|
<para>
|
|
<screen>
|
|
# At the LILO prompt (example only):
|
|
BOOT lilo: parport=0x3bc,7 parport=0x3bc,none serial=0x3f8,4 serial=0x2f8,3
|
|
</screen>
|
|
</para>
|
|
<para>
|
|
<programlisting>
|
|
# Example statement for /etc/lilo.conf:
|
|
append="parport=0x3bc,none serial=0x3f8,4 serial=0x2f8,3"
|
|
</programlisting>
|
|
</para>
|
|
<para>
|
|
If you modify the <filename>/etc/lilo.conf</filename> file, be sure
|
|
to run the <command>lilo</command> command to install the new
|
|
configuration.
|
|
</para>
|
|
<para>
|
|
Configuration notes for specific hardware devices are in the
|
|
documentation of the kernel source distribution,
|
|
<filename>/usr/src/linux/Documentation</filename> in most
|
|
distributions.
|
|
</para>
|
|
<para>
|
|
Refer to the <command>lilo</command> and
|
|
<filename>/etc/lilo.conf</filename> manual pages, as well as the LDP
|
|
<citetitle>BootPrompt-HowTo</citetitle> (``<xref
|
|
linkend="howtos-and-other-documentation"
|
|
endterm="howtos-and-other-documentation">''), and the documentation in
|
|
<filename>/usr/doc/lilo</filename>.
|
|
</para>
|
|
</sect2>
|
|
|
|
|
|
<sect2 label="7.5">
|
|
<title id="man-pages-without-man">
|
|
Formatting Man Pages without <command>man</command> or
|
|
<command>groff</command>.</title>
|
|
<para>
|
|
The <command>man2html</command> program translates <command>groff</command>
|
|
text to HTML, which you can view with a Web browser. The
|
|
<command>man2html</command> program, and many like it, are availble on
|
|
the Web. Look for them with your favorite search engine.
|
|
</para>
|
|
<para>
|
|
The unformatted manual pages are stored in subdirectories of
|
|
<filename>/usr/man</filename>, <filename>/usr/local/man</filename>,
|
|
and elsewhere.
|
|
</para>
|
|
<para>
|
|
If you want to view text, use <command>nroff</command> and
|
|
<command>less</command>. Both of these programs have MSDOS
|
|
versions with an implementation of the <emphasis>man</emphasis>
|
|
macro package available as well. An example would be:
|
|
</para>
|
|
<para>
|
|
<screen>
|
|
$ nroff -man /usr/man/man1/ls.1 | less
|
|
</screen>
|
|
</para>
|
|
<para>
|
|
If you know where to find a good implementation of the
|
|
<emphasis>man</emphasis> macros without installing <emphasis>groff</emphasis>,
|
|
please let the FAQ maintainer know.
|
|
</para>
|
|
<para>
|
|
If the manual page filename ends in ``<literal>.gz</literal>,'' then
|
|
you'll need to uncompress it before formatting it, using
|
|
<command>gzip -d</command> or <command>gunzip</command>. A one-line
|
|
example would be:
|
|
</para>
|
|
<screen>
|
|
$ gzip -dc /usr/man/man1/ls.1.gz | nroff -man | less
|
|
</screen>
|
|
</sect2>
|
|
|
|
<sect2 label="7.6">
|
|
<title id="scrollback-in-text-mode">
|
|
How To Scroll Backwards in Text Mode.</title>
|
|
<para>
|
|
With the default US keymap, you can use <keycap>Shift</keycap> with
|
|
the <keycap>PgUp</keycap> and <keycap>PgDn</keycap> keys. (The gray
|
|
ones, not the ones on the numeric keypad.) With other keymaps, look
|
|
in <filename>/usr/lib/keytables</filename>.
|
|
You can remap the <keycap>ScrollUp</keycap> and
|
|
<keycap>ScrollDown</keycap> keys
|
|
to be whatever you like.
|
|
</para>
|
|
<para>
|
|
The <command>screen</command> program,
|
|
<ulink url="http://vector.co.jp/vpack/browse/person/an010455.html">
|
|
<literal>http://vector.co.jp/vpack/browse/person/an010455.html</literal>
|
|
</ulink>
|
|
provides a searchable scrollback buffer and the ability to take
|
|
``snapshots'' of text-mode screens.
|
|
</para>
|
|
<para>
|
|
Recent kernels that have the VGA Console driver can use dramatically
|
|
more memory for scrollback, provided that the video card can
|
|
<emphasis>actually handle</emphasis> 64 kb of video memory. Add
|
|
the line:
|
|
</para>
|
|
<para><screen>
|
|
#define VGA_CAN_DO_64B
|
|
</screen></para>
|
|
<para>
|
|
to the start of the file <filename>drivers/video/vgacon.c</filename>.
|
|
This feature may become a standard setting in future kernels. If the
|
|
video frame buffer is also enabled in the kernel, this setting may not
|
|
affect buffering.
|
|
</para>
|
|
<para>
|
|
In older kernels, the amount of scrollback is fixed, because
|
|
it is implemented using the video memory to store the scrollback
|
|
text. You may be able to get more scrollback in each virtual console
|
|
by reducing the total number of VC's. See
|
|
<filename>linux/tty.h</filename>.
|
|
</para>
|
|
<para>
|
|
[Chris Karakas]
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="7.7">
|
|
<title id="e-mail-to-work">How To Get Email to Work.</title>
|
|
<para>
|
|
For sending mail via SMTP (Simple Mail Transfer Protocol) and
|
|
receiving mail from an ISP's POP (Post Office Protocol) server, you
|
|
can use a desktop client like Netscape Communicator or KDE kmail. You
|
|
will need to enter the names of the SMTP and POP servers in the
|
|
preferences of the respective application, as well as your E-mail
|
|
address (username@isp's-domain-name), and your dial-up password. The
|
|
same applies to Usenet News. Enter the name of the NNTP (Network News
|
|
Transfer Protocol) server in your News client's preferences section.
|
|
You may also have to provide the IP addresses of the ISP's primary and
|
|
secondary name servers.
|
|
</para>
|
|
<para>
|
|
If you have a traditional MTA (Mail Transport Agent) like
|
|
<application>Sendmail</application>,
|
|
<application>Smail</application>, <application>qmail</application>,
|
|
or <application>Exim</application>,
|
|
you'll need to follow the instructions in each
|
|
package. Basically, configuration entails determining which host
|
|
machine, either on your local LAN or via dial-up Internet, is the
|
|
``Smart Host,'' if you're using SMTP. If you're using the older UUCP
|
|
protocol, then you'll need to consult the directions for configuring
|
|
UUCP, and also make sure that your ISP's system is configured to relay
|
|
mail to you.
|
|
</para>
|
|
<para>
|
|
Information about Internet hosting, and News and E-mail in general, is
|
|
available on the Usenet News group
|
|
<citetitle>news.announce.newusers</citetitle>, and those FAQ's are
|
|
also archived at <ulink url="ftp://rtfm.mit.edu/pub/usenet/">
|
|
<literal>ftp://rtfm.mit.edu/pub/usenet/</literal></ulink>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="7.8">
|
|
<title id="sendmail-pause">
|
|
<application>Sendmail</application> Pauses for
|
|
Up to a Minute at Each Command.
|
|
</title>
|
|
<para>
|
|
Make sure that <application>Sendmail</application> can resolve your
|
|
hostname to a valid (i.e., parsable) domain address. If you are not
|
|
connected to the Internet, or have a dial-up connection with dynamic
|
|
IP addressing, add the fully qualified domain name to the
|
|
<literal>/etc/hosts</literal> file, <emphasis>in addition</emphasis>
|
|
to the base host name; e.g., if the host name is
|
|
``<literal>bilbo</literal>'' and the domain is
|
|
``<literal>bag-end.com</literal>:''
|
|
</para>
|
|
<para>
|
|
<screen>
|
|
192.168.0.1 bilbo.bag-end.com bilbo
|
|
</screen>
|
|
</para>
|
|
<para>
|
|
And make sure that either the <literal>/etc/host.conf</literal> or <literal>
|
|
/etc/resolv.conf</literal> file contains the line:
|
|
</para>
|
|
<para><screen>
|
|
order hosts,bind
|
|
</screen></para>
|
|
<para>
|
|
<emphasis>Caution:</emphasis> Do not change the
|
|
``<literal>localhost</literal>'' entry in
|
|
<literal>/etc/hosts</literal>, because many programs depend on it for
|
|
internal message-passing.
|
|
</para>
|
|
<para>
|
|
<application>Sendmail</application> takes many factors into account
|
|
when resolving domain addresses. These factors, collectively, are
|
|
known as, ``rulesets,'' in <application>sendmail</application> jargon.
|
|
The program does <emphasis>not</emphasis> require that a domain
|
|
address be canonical, or even appear to be canonical. In the example
|
|
above, ``<literal>bilbo.</literal>'' (note the period) would work just
|
|
as well as ``<literal>bilbo.bag-end.com</literal>.'' This and other
|
|
modifications apply mainly to recent versions.
|
|
</para>
|
|
<para>
|
|
Prior to version 8.7, <application>sendmail</application> required
|
|
that the FQDN appear first in the <filename>/etc/hosts</filename>
|
|
entry. This is due to changes in the envelope address masquerade
|
|
options. Consult the <application>sendmail</application> documents.
|
|
</para>
|
|
<para>
|
|
If you have a domain name server for <emphasis>only</emphasis> a
|
|
local subnet, make sure that ``.'' refers to a SOA record on the server
|
|
machine, and that reverse lookups (check by using
|
|
<application>nslookup</application>) work for all machines on the subnet.
|
|
</para>
|
|
<para>
|
|
Finally, <literal>FEATURE</literal> configuration macro options like
|
|
<literal>nodns</literal>, <literal>always_add_domain</literal>, and
|
|
<literal>nocanonify</literal>, control how
|
|
<application>sendmail</application> interprets host names.
|
|
</para>
|
|
<para>
|
|
The document, <citetitle>Sendmail: Installation and Operation
|
|
Guide</citetitle>, included in the <literal>doc/</literal>
|
|
subdirectory of <application>Sendmail</application> source
|
|
code distributions, discusses
|
|
briefly how <application>Sendmail</application> resolves Internet
|
|
addresses. <application>Sendmail</application>
|
|
source code archives are listed at:
|
|
<ulink url="http://www.sendmail.org/">
|
|
<literal>http://www.sendmail.org/</literal></ulink>
|
|
</para>
|
|
<para>
|
|
[Chris Karakas]
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="7.9">
|
|
<title id="switch-virtual-consoles">
|
|
How To Enable and Select Virtual Consoles.</title>
|
|
<para>
|
|
In text mode, press the left
|
|
<keycombo>
|
|
<keycap>Alt</keycap><keycap>F1</keycap>
|
|
</keycombo> to
|
|
<keycombo>
|
|
<keycap>Alt</keycap><keycap>F12</keycap>
|
|
</keycombo>
|
|
to select the consoles <literal>tty1</literal> to
|
|
<literal>tty12</literal>; Right
|
|
<keycombo>
|
|
<keycap>Alt</keycap><keycap>F1</keycap>
|
|
</keycombo>
|
|
gives <literal>tty13</literal> and so on. To
|
|
switch out of X you must press
|
|
<keycombo>
|
|
<keycap>Ctrl</keycap><keycap>Alt</keycap><keycap>F1</keycap>
|
|
</keycombo>, etc;
|
|
<keycombo>
|
|
<keycap>Alt</keycap><keycap>F5</keycap>
|
|
</keycombo>
|
|
or whatever will switch back.
|
|
</para>
|
|
<para>
|
|
However, If you have a non-PC compatible system, please see
|
|
the note below.
|
|
</para>
|
|
<para>
|
|
If you want to use a VC for ordinary login, it must be listed in
|
|
<citetitle>/etc/inittab</citetitle>,
|
|
which controls which terminals and virtual consoles have
|
|
login prompts. The X Window System needs at least one free VC in order
|
|
to start.
|
|
</para>
|
|
<para>
|
|
[Note: The key sequence is actually <keycombo>
|
|
<keycap>Ctrl</keycap></keycombo>—<literal>Meta</literal>—
|
|
<keycombo><keycap>F</keycap></keycombo><emphasis>N</emphasis>. On PC
|
|
compatible systems, the right and left <keycap>Alt</keycap> keys are
|
|
really synonymous with the keysymbols <literal>Meta_L</literal> and
|
|
<literal>Meta_R</literal>. If the binding is different, you can
|
|
determine what keys produce <literal>Meta_L</literal> and
|
|
<literal>Meta_R</literal> with <application>xkeycaps</application> or
|
|
a similar application.]
|
|
</para>
|
|
<para>
|
|
[David Charlap]
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="7.10">
|
|
<title id="set-the-time-zone">How To Set the Time Zone.</title>
|
|
<para>
|
|
Change directory to <filename>/usr/lib/zoneinfo/</filename>.
|
|
Get the time zone package if
|
|
you don't have this directory. The source is available in
|
|
<ulink url="ftp://metalab.unc.edu/pub/Linux/system/admin/time/">
|
|
<literal>ftp://metalab.unc.edu/pub/Linux/system/admin/time/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
Then make a symbolic link named <filename>localtime</filename>
|
|
pointing to one of the files
|
|
in this directory (or a subdirectory), and one called
|
|
<filename>posixrules</filename> pointing to
|
|
<filename>localtime</filename>. For example:
|
|
</para>
|
|
<para><screen>
|
|
$ ln -sf US/Mountain localtime
|
|
$ ln -sf localtime posixrules
|
|
</screen></para>
|
|
<para>
|
|
This change will take effect immediately—try <command>date</command>.
|
|
</para>
|
|
<para>
|
|
If the system uses Red Hat-style configuration files, the respective
|
|
time zone info files are <filename>/usr/share/zoneinfo</filename> and
|
|
<filename>/etc/localtime</filename>.
|
|
</para>
|
|
<para>
|
|
The manual pages for <command>tzset</command> or <command>tzselect</command>
|
|
describe setting the time zone. Some
|
|
programs recognize the ``<literal>TZ</literal>'' environment variable, but
|
|
this is not POSIX-correct.
|
|
</para>
|
|
<para>
|
|
You should also make sure that your Linux kernel clock is set to the
|
|
correct GMT time. Type <command>date -u</command> and check that the
|
|
correct UTC time is displayed.
|
|
(``<xref linkend= "computer-has-wrong-time"
|
|
endterm="computer-has-wrong-time">'')
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="7.11">
|
|
<title id="get-dial-up-ppp-work">
|
|
Dial-up PPP Configuration.</title>
|
|
<para>
|
|
This information is mainly for people who do not have a wrapper
|
|
utility like <command>kppp</command> or
|
|
<command>pppconfig</command>, or are not able to get those utilities
|
|
to work correctly. If you need to manually configure PPP to dial in to
|
|
your ISP, you will need the following information:
|
|
</para>
|
|
<itemizedlist>
|
|
<listitem><para>
|
|
The port that your modem is connected to:
|
|
<filename>/dev/ttyS0</filename>–<filename>/dev/ttyS3</filename>,
|
|
which correspond to COM1-COM4 under MS-DOS.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
The phone number of your ISP's data connection.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
The user name and password that your ISP gave you.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
The IP addresses of the primary and possibly secondary Domain Name
|
|
Service that you will use when dialing in to the ISP. This assumes
|
|
that you will not be using a DNS that you installed on your
|
|
system.
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
<para>
|
|
When you have all of this information, make sure that the programs
|
|
<command>pppd</command> and <command>chat</command>,
|
|
at the very minimum, are installed correctly. In most
|
|
current distributions, they are installed in the
|
|
<filename>/usr/sbin/</filename> directory,
|
|
and you will need to be logged in as root to use them. In addition,
|
|
the following programs are also useful for configuring network
|
|
connections, determining network status, and diagnosing problems:
|
|
<filename>/sbin/ifconfig</filename>,
|
|
<filename>/sbin/route</filename>, <filename>/bin/ping</filename>,
|
|
<filename>/usr/sbin/traceroute</filename>.
|
|
</para>
|
|
<para>
|
|
These are the basic steps that you need to follow to configure PPP.
|
|
You must be logged in as root.
|
|
</para>
|
|
<itemizedlist>
|
|
<listitem><para> Make sure that the serial port and modem are
|
|
operating correctly. Using a program like <command>minicomm</command>
|
|
or <command>kermit</command>, you should be able to send
|
|
<literal>AT</literal> commands to the modem and receive the
|
|
<literal>OK</literal> string in response from the modem.
|
|
</para></listitem> <listitem><para> Enter the primary and possibly
|
|
secondary Domain Name Server IP addresses in the
|
|
<filename>/etc/resolv.conf</filename> file, using dotted quad
|
|
notation, with the <literal>nameserver</literal> label. For example:
|
|
</para>
|
|
<para><screen>
|
|
order hosts,bind
|
|
nameserver 196.182.101.103
|
|
nameserver 196.182.101.104
|
|
</screen></para>
|
|
<para>
|
|
The nameserver addresses in the example above are examples only. They
|
|
don't correspond to actual network hosts.
|
|
</para>
|
|
<para>
|
|
The first line, <literal>order hosts,bind</literal>, tells your
|
|
networking software, when it resolves network domain addresses, to
|
|
first look in the <filename>/etc/hosts file</filename>, and then use
|
|
the bind service; i.e., the DNS servers, which are specified on the
|
|
lines that begin with nameserver. </para></listitem> <listitem><para>
|
|
Locate the chat script that PPP will use to dial the modem and connect
|
|
to your ISP. In many systems, this is either in the
|
|
<filename>/etc/chatscripts</filename> or <filename>/etc/ppp</filename>
|
|
directory, and will be called <filename>provider</filename> or
|
|
something similar. You can store a <literal>chat</literal> script
|
|
anywhere, provided that you tell <command>pppd</command> to use it
|
|
rather than the default script. Refer to the <command>chat</command>
|
|
and <command>pppd</command> manual pages, and the information below,
|
|
for details. Here is a sample <literal>chat</literal> script:
|
|
</para>
|
|
<para><screen>
|
|
ABORT BUSY
|
|
ABORT "NO CARRIER"
|
|
ABORT VOICE
|
|
ABORT "NO DIALTONE"
|
|
"" ATDT<your_isp's_phone_number>
|
|
ogin <your_user_name>
|
|
word <your_password>
|
|
</screen></para>
|
|
<para>
|
|
This is a <command>chat</command>
|
|
program for a simple, script based login. The <command>chat</command>
|
|
program uses the pair of strings on each line as a match/response
|
|
pair. When it starts, it sends the string
|
|
``ATDT<emphasis>your_isp's_phone_number</emphasis>,''
|
|
where you have substituted the
|
|
actual phone number of course. It then waits for the string
|
|
<literal>ogin</literal>
|
|
(a substring of the word <literal>login</literal>) and sends your user
|
|
name. It then waits for <literal>word</literal>
|
|
(a substring of <literal>password</literal>) and sends
|
|
your password. If your ISP uses a different login and password
|
|
prompts, and any additional prompts, you will need to edit the
|
|
script accordingly. Again, refer to the <command>chat</command>
|
|
manual page for details.
|
|
</para>
|
|
<para>
|
|
If your ISP uses PAP or CHAP authentication, you will need to edit the
|
|
<filename>pap-secrets</filename> or <filename>chap-secrets</filename>
|
|
files in <filename>/etc/ppp</filename> directory as well. Refer to the
|
|
manual pages for these files, as well as the instruction in the files
|
|
themselves. </para></listitem> <listitem><para> The configuration of
|
|
<command>pppd</command>, the program that maintains the actual
|
|
connection, is usually contained in two or three separate files. The
|
|
first is usually <filename>/etc/ppp/options</filename>, which contains
|
|
options that all of your system's PPP connections will use. (Yes, you
|
|
can have more than one; as many as your computer has serial ports,
|
|
generally.)
|
|
</para>
|
|
<para>
|
|
Here is a sample <filename>/etc/ppp/options</filename> file:
|
|
</para>
|
|
<para><screen>
|
|
# /etc/ppp/options
|
|
|
|
asyncmap 0
|
|
auth
|
|
crtscts
|
|
lock
|
|
noipx
|
|
|
|
# ---<End of File>---
|
|
</screen></para>
|
|
<para>
|
|
The options may be given on one line or each on a separate line.
|
|
Many options files are much longer, and come with a description of
|
|
each option. Here, the options mean, in order, don't remap any
|
|
characters between the PPP client and server; always use password,
|
|
PAP, or CHAP authentication when making a connection; use the
|
|
modem's hardware handshake lines for flow control; lock the serial
|
|
port when in use so no other programs can access it; and do not
|
|
use the IPX network protocol.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
For connection set-up on each individual serial port or PPP host,
|
|
there will either be an <filename>/etc/ppp/options.ttyS1</filename>,
|
|
for example,
|
|
options file for <filename>/etc/ttyS1</filename>, or a file for
|
|
your ISP in the <filename>/etc/ppp/peers</filename> directory.
|
|
The default is often called
|
|
<filename>/etc/ppp/peers/provider</filename>. Here is a sample
|
|
of the default <filename>provider</filename>
|
|
file:
|
|
</para>
|
|
<para><screen>
|
|
noauth
|
|
connect "/usr/sbin/chat -v -f /etc/chatscripts/provider"
|
|
defaultroute
|
|
/dev/ttyS1
|
|
38400
|
|
persist
|
|
</screen></para>
|
|
<para>
|
|
There might be an explanation of these and other options in the
|
|
<filename>/etc/ppp/peers/provider</filename> file itself. You
|
|
can also refer to the
|
|
<command>pppd</command> manual page for details.
|
|
Briefly, they mean: do not use PAP
|
|
authentication for this connection; use the <command>chat</command>
|
|
program and the
|
|
<filename>/etc/chatscripts/provider</filename> script, which is
|
|
described above, to
|
|
dial the phone and log in; set the network default route to the
|
|
PPP connection (so when your network software needs to resolve an
|
|
network address that is not on your local machine(s), it will use
|
|
the PPP connection to the Internet); use <filename>/dev/ttyS1</filename>
|
|
as the serial
|
|
port for the connection; set the modem speed to 38400; and keep
|
|
the <command>pppd</command> daemon running even if the connection fails.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
That is all of the configuration you need. To actually start and
|
|
stop PPP, there are often <filename>/usr/bin/pon</filename> and
|
|
<filename>/usr/bin/poff</filename> scripts
|
|
(in Debian), or something similar, and they are usually very simple,
|
|
and only contain the command:
|
|
</para>
|
|
<para><screen>
|
|
$ /usr/sbin/pppd call ${1:-provider}
|
|
</screen></para>
|
|
<para>
|
|
This will start <command>pppd</command> and use the
|
|
<literal>call</literal> option to call the
|
|
server that you type on the command line, or the provider given in
|
|
the <filename>/etc/ppp/peers/provider</filename> file if you
|
|
do not specify a remote
|
|
server. After making the call and logging in (about 30 seconds),
|
|
you should be able to use the <filename>/sbin/ifconfig</filename>
|
|
program to determine
|
|
that the connection really did establish a PPP interface (the
|
|
first will be <filename>ppp0</filename>, the second will be
|
|
<filename>ppp1</filename>, etc., depending on
|
|
how many simultaneous PPP connections you have. If something goes
|
|
wrong, you can look at the <filename>/var/log/ppp.log</filename>
|
|
file to determine what
|
|
happened. You can also view the log as the connection is being
|
|
made, by ``tailing'' it in another window; that is, viewing it as
|
|
pppd logs the connection's status information. To do this, use the
|
|
command (again, as root):
|
|
</para>
|
|
<para><screen>
|
|
$ tail -f /var/log/ppp.log
|
|
</screen></para>
|
|
<para>
|
|
On some systems the PPP output is directed to
|
|
<filename>/var/log/messages</filename>, in which case your system
|
|
may not have a dedicated PPP log file.
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
<para>
|
|
You should be also able to <command>ping</command>
|
|
one of your ISP's domain names
|
|
(e.g., <literal>mail.isp.com</literal>) and receive a response.
|
|
</para>
|
|
<para>
|
|
These are the most basic steps for configuring a PPP connection. You
|
|
will also need to take into account what other network connections may
|
|
be present (for example, if there's an Ethernet connection that has
|
|
already been assigned the default route), as well as various security
|
|
measures at your ISP's end. If you're having trouble making the
|
|
dial-up connection, usually the best way to determine what may be
|
|
going wrong is to use Seyon, minicomm, kermit, or some other program to dial
|
|
and log in manually to the ISP, and determine just exactly what you
|
|
have to do to log in, then duplicate that in the PPP scripts.
|
|
</para>
|
|
<para>
|
|
Most Linux documentation also has additional instructions for
|
|
configuring PPP connections. Refer to
|
|
(``<xref linkend="get-linux-material-by-ftp"
|
|
endterm="get-linux-material-by-ftp">'')
|
|
(``<xref linkend="howtos-and-other-documentation"
|
|
endterm="howtos-and-other-documentation">'')
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="7.12">
|
|
<title id="version-of-linux-and-what-machine">
|
|
What Version of Linux and What Machine Name Is This?</title>
|
|
<para>
|
|
Type:
|
|
</para>
|
|
<para><screen>
|
|
$ uname -a
|
|
</screen></para>
|
|
</sect2>
|
|
|
|
<sect2 label="7.13">
|
|
<title id="core-file">
|
|
What Is a ``<filename>core</filename>'' File?
|
|
</title>
|
|
<para>
|
|
A <literal>core</literal> file is created when a program terminates
|
|
unexpectedly, due to a bug, or a violation of the operating system's
|
|
or hardware's protection mechanisms. The operating system kills the
|
|
program and creates a <filename>core</filename> file that programmers
|
|
can use to figure out what went wrong. It contains a detailed
|
|
description of the state that the program was in when it died.
|
|
</para>
|
|
<para>
|
|
If would like to determine what program a core file came from, use the
|
|
<literal>file</literal> command, like this:
|
|
</para>
|
|
<para>
|
|
<screen>
|
|
$ file core
|
|
</screen>
|
|
</para>
|
|
<para>
|
|
That will tell you the name of the program that produced the core
|
|
dump. You may want to write the maintainer(s) of the program, telling
|
|
them that their program <emphasis>dumped core.</emphasis>
|
|
</para>
|
|
<para>
|
|
[Eric Hanchrow]
|
|
</para>
|
|
</sect2>
|
|
|
|
|
|
<sect2 label="7.14">
|
|
<title id="enable-core-dumps">
|
|
How To Enable or Disable Core Dumps.</title>
|
|
<para>
|
|
By using the <command>ulimit</command> command in
|
|
<command>bash</command>, the <command>limit</command> command in
|
|
<command>tcsh</command>, or the
|
|
<command>rlimit</command> command in <command>ksh</command>.
|
|
See the appropriate manual page for details.
|
|
</para>
|
|
<para>
|
|
This setting affects all programs run from the shell (directly or
|
|
indirectly), not the whole system.
|
|
</para>
|
|
<para>
|
|
If you wish to enable or disable core dumping for all processes by
|
|
default, you can change the default setting in
|
|
<filename>linux/sched.h</filename>. Refer to
|
|
definition of <literal>INIT_TASK</literal>, and look also in
|
|
<filename>linux/resource.h</filename>.
|
|
</para>
|
|
<para>
|
|
PAM support optimizes the system's environment, including the amount
|
|
of memory a user is allowed. In some distributions this parameter is
|
|
configurable in the <literal>/etc/security/limits.conf</literal> file.
|
|
For more information, refer to the <citetitle>Linux Administrator's
|
|
Security Guide</citetitle>. (``<xref
|
|
linkend="howtos-and-other-documentation"
|
|
endterm="howtos-and-other-documentation">'')
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="7.15">
|
|
<title id="upgrade-recompile-kernel">
|
|
How To Upgrade/Recompile a Kernel.</title>
|
|
<para>
|
|
See the <citetitle>Kernel HOWTO</citetitle> or the
|
|
<filename>README</filename> files which come with the kernel release
|
|
on
|
|
<ulink url="ftp.cs.helsinki.fi/pub/Software/Linux/Kernel/">
|
|
<literal>ftp.cs.helsinki.fi/pub/Software/Linux/Kernel/</literal>
|
|
</ulink> and mirrors.
|
|
(See ``<xref linkend="get-linux-material-by-ftp"
|
|
endterm="get-linux-material-by-ftp">'') You may already have a version
|
|
of the kernel source code installed on your system, but if it is part
|
|
of a standard distribution it is likely to be somewhat out of date
|
|
(this is not a problem if you only want a custom configured kernel,
|
|
but it probably is if you need to upgrade.)
|
|
</para>
|
|
<para>
|
|
With newer kernels you can (and should) make all of the following
|
|
targets. Don't forget that you can specify multiple targets with one
|
|
command.
|
|
</para>
|
|
<para><screen>
|
|
$ make clean dep install modules modules_install
|
|
</screen></para>
|
|
<para>
|
|
Also remember to update the module dependencies.
|
|
</para>
|
|
<para><screen>
|
|
$ depmod -a
|
|
</screen></para>
|
|
<para>
|
|
This command can be run automatically at boot time. On Debian/GNU
|
|
Linux systems, the command is part of the
|
|
<filename>/etc/init.d/modutils</filename> script,
|
|
and can be linked appropriately in the
|
|
<filename>/etc/rc</filename><emphasis>x</emphasis><filename>.d/</filename>
|
|
directories. For
|
|
more information on <command>depmod</command>, see the manual page.
|
|
</para>
|
|
<para>
|
|
Make sure you are using the most recent version of the modutils
|
|
utilities, as well as all other supporting packages. Refer to the file
|
|
<filename>Documentation/Changes</filename> in the kernel source
|
|
tree for specifics, and be
|
|
sure to consult the <filename>README</filename> file in the
|
|
<application>modutils</application> package.
|
|
</para>
|
|
<para>
|
|
Remember that to make the new kernel boot you must run <command>lilo</command>
|
|
after copying the kernel into your root partition. The
|
|
Makefile in some kernels have a special <literal>zlilo</literal>
|
|
target for this; try:
|
|
</para>
|
|
<para><screen>
|
|
$ make zlilo
|
|
</screen></para>
|
|
<para>
|
|
On current systems, however, you can simply copy the
|
|
<filename>zImage</filename> or <filename>bzImage</filename> file (in
|
|
<filename>arch/i386/boot/</filename> to the
|
|
<filename>/boot/</filename> directory on the root file system, or to a
|
|
floppy using the <command>dd</command> command. Refer also to the
|
|
question, How do I get LILO to boot the kernel image?
|
|
</para>
|
|
<para>
|
|
Kernel version numbers with an odd minor version (ie, 1.1.x, 1.3.x)
|
|
are the testing releases; stable production kernels have even minor
|
|
versions (1.0.x, 1.2.x). If you want to try the testing kernels you
|
|
should probably subscribe to the linux-kernel mailing list.
|
|
(``<xref linkend="what-mailing-lists-are-there"
|
|
endterm="what-mailing-lists-are-there">'')
|
|
</para>
|
|
<para>
|
|
The Web site
|
|
<ulink url="http://www.kernelnotes.org/">
|
|
<literal>http://www.kernelnotes.org/</literal></ulink> has lots of
|
|
information and links to other sites that provide information about
|
|
Linux kernel updates.
|
|
</para>
|
|
<para>
|
|
Also refer to the questions,
|
|
``<xref linkend="upgraded-kernel-pcmcia-doesnt-work"
|
|
endterm="upgraded-kernel-pcmcia-doesnt-work">''
|
|
and ``<xref linkend="lilo-boot-kernel-image"
|
|
endterm="lilo-boot-kernel-image">''
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="7.16">
|
|
<title id="serial-ports-by-sharing">
|
|
Can Linux Use More than 3 Serial Ports by Sharing Interrupts?</title>
|
|
<para>
|
|
Yes, but you won't be able to use simultaneously two ordinary ports
|
|
which share an interrupt (without some trickery). This is a limitation
|
|
of the ISA Bus architecture.
|
|
</para>
|
|
<para>
|
|
See the <citetitle>Serial HOWTO</citetitle> for information about
|
|
possible solutions and workarounds for this problem.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="7.17">
|
|
<title id="configure-emacs-with-default">
|
|
Configuring <application>Emacs</application>'s Default Settings.</title>
|
|
<para>
|
|
Create a file in your home directory named
|
|
<filename>.emacs</filename> with the Emacs Lisp
|
|
commands that you want to run every time Emacs starts up. You won't
|
|
see the file in the directory listing. (The leading '.' tells
|
|
<command>ls</command> not to
|
|
display it, unless you use the <literal>-a</literal> command
|
|
line switch with <command>ls</command>.)
|
|
</para>
|
|
<para>
|
|
Any kind of Emacs Lisp statement will work in the
|
|
<filename>.emacs</filename> file,
|
|
including entire <literal>defuns</literal>.
|
|
Emacs uses lisp variables and statements extensively, and
|
|
many of the editing functions are written in Emacs Lisp.
|
|
For example, to enable word wrapping whenever
|
|
you edit a file that ends with <filename>.txt</filename>,
|
|
add the following statement. This is from the Emacs
|
|
Texinfo help document (
|
|
<keycombo><keycap>F1</keycap><keycap>i</keycap></keycombo>,
|
|
then <keycap>m</keycap> <literal>Emacs</literal> <keycap>Return</keycap>):
|
|
</para>
|
|
<para>
|
|
<programlisting>
|
|
(add-hook text-mode-hook
|
|
'(lambda () (auto-fill-mode 1)))
|
|
</programlisting>
|
|
</para>
|
|
<para>
|
|
This adds a statement that calls a <emphasis>hook</emphasis>
|
|
function whenever a text editing mode is entered for that
|
|
buffer. The value of <literal>text-mode-hook</literal>,
|
|
which is a variable, to <literal>auto-fill-mode</literal>,
|
|
which is a function.
|
|
</para>
|
|
<para>
|
|
If you want to turn off the menu bar at the top of each Emacs frame,
|
|
add this statement:
|
|
</para>
|
|
<para>
|
|
<programlisting>
|
|
(menu-bar-mode -1)
|
|
</programlisting>
|
|
</para>
|
|
<para>
|
|
And if you want to include an Emacs Lisp program that someone has
|
|
written, like <filename>msb.el</filename>
|
|
(an enhanced, pop-up buffer menu), make sure the
|
|
lisp file is in a directory where Emacs can find it (usually it will
|
|
be named Site-lisp), and add these statements in the
|
|
<filename>.emacs</filename> file:
|
|
</para>
|
|
<para>
|
|
<programlisting>
|
|
(require 'msb)
|
|
(msb-mode 1)
|
|
</programlisting>
|
|
</para>
|
|
<para>
|
|
Most tasks have several possible solutions in Emacs Lisp. Any task
|
|
that can be programmed in Emacs Lisp is valid in the
|
|
<filename>.emacs</filename> file. For
|
|
more information, consult the Texinfo documentation.
|
|
There is also a FAQ list for Emacs (refer to: What
|
|
other FAQ's are there for Linux? ).
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="7.18">
|
|
<title id="make-rescue-floppy">
|
|
How To Make a Rescue Floppy.</title>
|
|
<para>
|
|
Make a file system on it with bin, etc, lib and dev
|
|
directories—everything you need. Install a kernel on it and arrange
|
|
to have LILO boot it from the floppy (see the LILO documentation, in
|
|
<filename>lilo.u.*.ps</filename>).
|
|
</para>
|
|
<para>
|
|
If you build the kernel (or tell LILO to tell the kernel) to have a
|
|
RAM disk the same size as the floppy the RAM disk will be loaded at
|
|
boot time and mounted as root in place of the floppy.
|
|
</para>
|
|
<para>
|
|
See the <citetitle>Bootdisk HOWTO</citetitle>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="7.19">
|
|
<title id="remap-keyboard">
|
|
How To Remap a Keyboard to UK, French, Etc.?</title>
|
|
<para>
|
|
For recent kernels, get
|
|
<filename>/pub/Linux/system/Keyboards/kbd-0.90.tar.gz</filename>
|
|
from
|
|
<ulink url="ftp://metalab.unc.edu/">
|
|
<literal>ftp://metalab.unc.edu/</literal></ulink>.
|
|
Make sure you get the appropriate version; you
|
|
have to use the right keyboard mapping package for your kernel
|
|
version.
|
|
|
|
For older kernels you have to edit the top-level kernel
|
|
<filename>Makefile</filename>, in
|
|
<filename>/usr/src/linux/</filename>.
|
|
|
|
You may find more helpful information in <citetitle>The Linux Keyboard and
|
|
Console HOWTO</citetitle>, by Andries Brouwer, at
|
|
<ulink url="ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/">
|
|
<literal>ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/</literal></ulink>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="7.20">
|
|
<title id="num-lock-default-on">
|
|
How To Get NUM LOCK to Default to On.</title>
|
|
<para>
|
|
Use the <command>setleds</command> program, for
|
|
example (in <filename>/etc/rc.local</filename> or one of the
|
|
<filename>/etc/rc.d/*</filename> files):
|
|
</para>
|
|
<para>
|
|
<programlisting>
|
|
for t in 1 2 3 4 5 6 7 8
|
|
do
|
|
setleds +num < /dev/tty$t > /dev/null
|
|
done
|
|
</programlisting>
|
|
</para>
|
|
<para>
|
|
<command>setleds</command> is part of the kbd package
|
|
("How do I remap my keyboard
|
|
to UK, French, etc.? ").
|
|
|
|
Alternatively, patch your kernel. You need to arrange for
|
|
<literal>KBD_DEFLEDS</literal>
|
|
to be defined to (<literal>1 << VC_NUMLOCK</literal>) when compiling
|
|
<filename>drivers/char/keyboard.c</filename>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="7.21">
|
|
<title id="set-terminal-colors">
|
|
How To Set (Or Reset) Initial Terminal Colors.</title>
|
|
<para>
|
|
The following shell script should work for VGA consoles:
|
|
</para>
|
|
<para>
|
|
<programlisting>
|
|
for n in 1 2 4 5 6 7 8; do
|
|
setterm -fore yellow -bold on -back blue -store > /dev/tty$n
|
|
done
|
|
</programlisting>
|
|
</para>
|
|
<para>
|
|
Substitute your favorite colors, and use
|
|
<filename>/dev/ttyS$n</filename> for serial terminals.
|
|
</para>
|
|
<para>
|
|
To make sure they are reset when people log out (if they've been
|
|
changed):
|
|
</para>
|
|
<para>
|
|
Replace the references to <literal>getty</literal>
|
|
(or <literal>mingetty</literal> or <literal>uugetty</literal> or
|
|
whatever) in
|
|
<filename>/etc/inittab</filename> with references to
|
|
<literal>/sbin/mygetty</literal>.
|
|
</para>
|
|
<para>
|
|
<programlisting>
|
|
#!/bin/sh
|
|
setterm -fore yellow -bold on -back blue -store > $1
|
|
exec /sbin/mingetty $@
|
|
</programlisting>
|
|
</para>
|
|
<para>
|
|
[Jim Dennis]
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="7.22">
|
|
<title id="more-than-128mb-of-swap">
|
|
How To Have More Than 128Mb of Swap.</title>
|
|
<para>
|
|
Use several swap partitions or swap files. Linux kernels before
|
|
version 2.2 supported up to 16 swap areas, each of up to 128Mb.
|
|
Recent versions do not have this limitation.
|
|
</para>
|
|
<para>
|
|
Very old kernels only supported swap partition sizes up to 16Mb.
|
|
</para>
|
|
<para>
|
|
Linux on machines with 8KB paging, like Alpha and Sparc64, support a
|
|
swap partition up to 512MB. The 128MB limitation comes from
|
|
<literal>PAGE_SIZE*BITSPERBYTE</literal>
|
|
on machines with 4KB paging, but is 512KB on
|
|
machines with 8KB paging. The limit is due to the use of a single page
|
|
allocation map.
|
|
</para>
|
|
<para>
|
|
The file <filename>mm/swapfile.c</filename> has all of the gory details.
|
|
</para>
|
|
<para>
|
|
[Peter Moulder, Gordon Weast]
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2>
|
|
<title id="math-lib-errors">
|
|
How To Prevent Errors when Linking Programs with Math Functions.</title>
|
|
<para>
|
|
Older run-time libraries included the math library in the C run-time
|
|
library, so it was not necessary to specify the math library separately.
|
|
If the compiler generates a message like this when linking a program that
|
|
uses math functions:
|
|
</para>
|
|
<para>
|
|
<screen>
|
|
/tmp/ccDUQM4J.o: In function `main':
|
|
/tmp/ccDUQM4J.o(.text+0x19): undefined reference to `sqrt'
|
|
collect2: ld returned 1 exit status
|
|
</screen>
|
|
</para>
|
|
<para>
|
|
You need use the <literal>-lm</literal> option with GCC to link with
|
|
the math libraries:
|
|
</para>
|
|
<para>
|
|
<screen>
|
|
# gcc -o program program.c -lm
|
|
</screen>
|
|
</para>
|
|
<para>
|
|
Make sure also to use the statement
|
|
<literal>#include <math.h></literal> in the source file.
|
|
</para>
|
|
<para>
|
|
[Florian Schmidt]
|
|
</para>
|
|
</sect2>
|
|
|
|
</sect1>
|
|
|
|
<sect1 label="8">
|
|
<title>Miscellaneous Information and Questions Answered</title>
|
|
|
|
<sect2 label="8.1">
|
|
<title id="program-xyz-under-linux">
|
|
How To Program <emphasis>XYZ</emphasis> Under Linux.</title>
|
|
<para>
|
|
Read the manuals, or a good book on Unix and the manual pages
|
|
(type <literal>man man</literal>).
|
|
There is a lot of GNU Info documentation, which is often more
|
|
useful as a tutorial. Run Emacs and type
|
|
<keycombo><keycap>F1</keycap><keycap>i</keycap></keycombo>,
|
|
or type <command>info info</command> if
|
|
you don't have or don't like Emacs. Note that the Emacs libc node may
|
|
not exactly describe the latest Linux libc, or GNU glibc2. But the GNU
|
|
project and LDP are always looking for volunteers to upgrade their
|
|
library documentation.
|
|
</para>
|
|
<para>
|
|
Anyway, between the existing Texinfo documentation, and the manual
|
|
pages in sections 2 and 3, should provide enough information to get
|
|
started.
|
|
</para>
|
|
<para>
|
|
As with all free software, the best tutorial is the source code
|
|
itself.
|
|
</para>
|
|
<para>
|
|
The latest release of the Linux manual pages, a collection of useful
|
|
GNU Info documentation, and various other information related to
|
|
programming Linux, can be found on
|
|
<ulink url="metalab.unc.edu/pub/Linux/docs/man-pages/">
|
|
<literal>metalab.unc.edu/pub/Linux/docs/man-pages/</literal></ulink>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="8.2">
|
|
<title id="about-elf-glibc">What's All This about ELF? glibc?</title>
|
|
<para>
|
|
See the <citetitle>ELF HOWTO</citetitle>
|
|
by Daniel Barlow. Note that this is not the file
|
|
<filename>move-to-elf</filename>,
|
|
which is a blow-by-blow account of how to upgrade to ELF
|
|
manually.
|
|
</para>
|
|
<para>
|
|
Linux has two different formats for executables, object files, and
|
|
object code libraries, known as, ``ELF.'' (The old format is called
|
|
``a.out.'') They have advantages, including better support for shared
|
|
libraries and dynamic linking.
|
|
</para>
|
|
<para>
|
|
Both a.out and ELF binaries can coexist on a system. However, they use
|
|
different shared C libraries, both of which have to be installed.
|
|
</para>
|
|
<para>
|
|
If you want to find out whether your system can run ELF binaries, look
|
|
in <filename>/lib</filename> for a file named,
|
|
``<filename>libc.so.5</filename>.'' If it's there, you probably have
|
|
ELF libraries. If you want to know whether your installation actually
|
|
is ELF you can pick a representative program, like
|
|
<command>ls</command>, and run file on it:
|
|
</para>
|
|
<para>
|
|
<screen>
|
|
-chiark:~> file /bin/ls
|
|
/bin/ls: Linux/i386 impure executable (OMAGIC) - stripped
|
|
|
|
valour:~> file /bin/ls
|
|
/bin/ls: ELF 32-bit LSB executable, Intel 80386, version 1, stripped
|
|
</screen>
|
|
</para>
|
|
<para>
|
|
There is a patch to get 1.2.x to compile using the ELF compilers, and
|
|
produce ELF core dumps, at
|
|
<ulink url="ftp://tsx-11.mit.edu/pub/packages/GCC/">
|
|
<literal>ftp://tsx-11.mit.edu/pub/packages/GCC/</literal></ulink>. You
|
|
do not need the patch merely to run ELF binaries. 1.3.x and later do
|
|
not need the patch at all.
|
|
</para>
|
|
<para>
|
|
The GNU glibc2 libraries are essentially more recent versions of
|
|
ELF libraries that follow most of the same processes for dynamic
|
|
linking and loading. Upgrade information is contained in
|
|
(``<xref linkend="upgrade-libraries-withough-trashing"
|
|
endterm="upgrade-libraries-withough-trashing">'')
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="8.3">
|
|
<title id="determine-packages-installed">
|
|
How To Determine What Packages Are Installed on a System.</title>
|
|
<para>
|
|
For distributions that use RPM format packages, use the command:
|
|
</para>
|
|
<para>
|
|
<screen>
|
|
$ rpm -qa
|
|
</screen>
|
|
</para>
|
|
<para>
|
|
You need to be logged in as root. You can save the output to a text
|
|
file for future reference, a command like:
|
|
</para>
|
|
<para>
|
|
<screen>
|
|
$ rpm -qa >installed-packages
|
|
</screen>
|
|
</para>
|
|
<para>
|
|
For Debian systems, the equivalent command is:
|
|
</para>
|
|
<para>
|
|
<screen>
|
|
$ dpkg -l
|
|
</screen>
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="8.4">
|
|
<title id="What-is-a-gz-file-tgz">
|
|
What Is a <literal>.gz</literal> File? And a <literal>.tgz</literal>?
|
|
And <literal>.bz2</literal>? And... ?</title>
|
|
<para>
|
|
<literal>.gz</literal> (and <literal>.z</literal>) files
|
|
are compressed using GNU <command>gzip</command>. You need to use
|
|
<command>gunzip</command> (which is a symlink to the
|
|
<command>gzip</command> command that comes with most
|
|
Linux installations) to unpack the file.
|
|
</para>
|
|
<para>
|
|
<literal>.taz</literal>, <literal>.tar.Z</literal>, and
|
|
<literal>.tz</literal> are <emphasis>tar</emphasis> files (made with
|
|
<command>tar</command>) and compressed using
|
|
<command>compress</command>. The standard *nix
|
|
<command>compress</command> is proprietary software, but free
|
|
equivalents like ncompress exist.
|
|
</para>
|
|
<para>
|
|
<literal>.tgz</literal> (or <literal>.tpz</literal>) is a
|
|
tar file compressed with <command>gzip</command>.
|
|
</para>
|
|
<para>
|
|
<literal>.bz2</literal> is a file compressed by the more
|
|
recently introduced (and efficient) <command>bzip2</command>.
|
|
</para>
|
|
<para>
|
|
<literal>.lsm</literal> is a
|
|
<citetitle>Linux Software Map</citetitle> entry,
|
|
in the form of a short text file.
|
|
Details about the LSM project and the LSM itself are available in the
|
|
subdirectory on
|
|
<ulink url="ftp://metalab.unc.edu/pub/Linux/docs/">
|
|
<literal>ftp://metalab.unc.edu/pub/Linux/docs/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
<literal>.deb</literal> is a Debian Binary Package—the binary
|
|
package format used by
|
|
the Debian GNU/Linux distribution. It is manipulated using
|
|
<command>dpkg</command> and
|
|
<command>dpkg-deb</command> (available on
|
|
Debian systems and from
|
|
<ulink url="ftp://ftp.debian.org/">
|
|
<literal>ftp://ftp.debian.org//</literal></ulink>).
|
|
</para>
|
|
<para>
|
|
<literal>.rpm</literal> is a
|
|
Red Hat RPM package, which is used in the Red Hat
|
|
and similar distributions.
|
|
</para>
|
|
<para>
|
|
<literal>.sit</literal> is a compressed Macintosh archive made with
|
|
StuffIt, a commercial program. Aladdin Systems Inc., the
|
|
manufacturer of StuffIt, has a free expander utility that will
|
|
uncompress these archives. You can download it at
|
|
<ulink url="http://www.aladdinsys.com/expander/">
|
|
<literal>http://www.aladdinsys.com/expander/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
The <command>file</command> command can often tell you what a file is.
|
|
</para>
|
|
<para>
|
|
If you find that <command>gzip</command> complains when you try to
|
|
uncompress a file, you probably downloaded it in ASCII mode by
|
|
mistake. You must download most things in binary mode:
|
|
``<literal>get</literal>,'' to download the file.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="8.5">
|
|
<title id="vfs">
|
|
What Does VFS Stand For?</title>
|
|
<para>
|
|
<emphasis>Virtual File System</emphasis>.
|
|
It's the abstraction layer between the user and
|
|
real file systems like <citetitle>ext2</citetitle>,
|
|
<citetitle>Minix</citetitle> and <citetitle>MS-DOS</citetitle>.
|
|
Among other things, its
|
|
job is to flush the read buffer when it detects a disk change on the
|
|
floppy disk drive.
|
|
</para>
|
|
<para>
|
|
<screen>
|
|
VFS: Disk change detected on device 2/0
|
|
</screen>
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="8.6">
|
|
<title id="bogomip">What is a BogoMip?</title>
|
|
<para>
|
|
``BogoMips'' is a combination of <emphasis>Bogus</emphasis> and
|
|
<emphasis>Mips</emphasis>.
|
|
MIPS stands for
|
|
(depending on who you ask)
|
|
<emphasis>Millions of Instructions per Second</emphasis>, or
|
|
<emphasis>Meaningless Indication of Processor Speed</emphasis>.
|
|
</para>
|
|
<para>
|
|
The number printed at boot time is the result of a kernel timing
|
|
calibration, used for very short delay loops by some device drivers.
|
|
</para>
|
|
<para>
|
|
According to the <citetitle>BogoMips mini-HOWTO</citetitle>,
|
|
the rating for your machine will be:
|
|
</para>
|
|
<!--
|
|
<para>
|
|
<table><title id="bogo-table">Common BogoMips Ratings</title>
|
|
<tgroup cols=3 align=left>
|
|
<colspec colname=c1>
|
|
<colspec colname=c2>
|
|
<colspec colname=c3>
|
|
<spanspec spanname="c1c2" namest=c1 nameend=c2>
|
|
<spanspec spanname="c2c3" namest=c2 nameend=c3>
|
|
<thead>
|
|
<row>
|
|
<entry>Processor</entry>
|
|
<entry>BogoMips</entry>
|
|
<entry>Comparison</entry>
|
|
</row>
|
|
</thead>
|
|
<tbody>
|
|
<row>
|
|
<entry>Intel 8088</entry>
|
|
<entry>clock * 0.004</entry>
|
|
<entry>0.02</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Intel/AMD 386SX</entry>
|
|
<entry>clock * 0.14</entry>
|
|
<entry>0.8</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Intel/AMD 386DX</entry>
|
|
<entry>clock * 0.18</entry>
|
|
<entry>1 (definition)</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Motorola 68030</entry>
|
|
<entry>clock * 0.25</entry>
|
|
<entry>1.4</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Cyrix/IBM 486</entry>
|
|
<entry>clock * 0.34</entry>
|
|
<entry>1.8</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Intel Pentium</entry>
|
|
<entry>clock * 0.40</entry>
|
|
<entry>2.2</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Intel 486</entry>
|
|
<entry>clock * 0.50</entry>
|
|
<entry>2.8</entry>
|
|
</row>
|
|
<row>
|
|
<entry>AMD 5x86</entry>
|
|
<entry>clock * 0.50</entry>
|
|
<entry>2.8</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Mips R4000/R4400</entry>
|
|
<entry>clock * 0.50</entry>
|
|
<entry>2.8</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Nexgen Nx586</entry>
|
|
<entry>clock * 0.75</entry>
|
|
<entry>4.2</entry>
|
|
</row>
|
|
<row>
|
|
<entry>PowerPC 601</entry>
|
|
<entry>clock * 0.84</entry>
|
|
<entry>4.7</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Alpha 21064/21064A</entry>
|
|
<entry>clock * 0.99</entry>
|
|
<entry>5.5</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Alpha 21066/21066A</entry>
|
|
<entry>clock * 0.99</entry>
|
|
<entry>5.5</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Alpha 21164/21164A</entry>
|
|
<entry>clock * 0.99</entry>
|
|
<entry>5.5</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Intel Pentium Pro</entry>
|
|
<entry>clock * 0.99</entry>
|
|
<entry>5.5</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Cyrix 5x86/6x86</entry>
|
|
<entry>clock * 1.00</entry>
|
|
<entry>5.6</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Intel Pentium II/III</entry>
|
|
<entry>clock * 1.00</entry>
|
|
<entry>5.6</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Intel Celeron</entry>
|
|
<entry>clock * 1.00</entry>
|
|
<entry>5.6</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Mips R4600</entry>
|
|
<entry>clock * 1.00</entry>
|
|
<entry>5.6</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Alpha 21264</entry>
|
|
<entry>clock * 1.99</entry>
|
|
<entry>11.1</entry>
|
|
</row>
|
|
<row>
|
|
<entry>AMD K5/K6/K6-2/K6-III</entry>
|
|
<entry>clock * 2.00</entry>
|
|
<entry>11.1</entry>
|
|
</row>
|
|
<row>
|
|
<entry>UltraSparc II</entry>
|
|
<entry>clock * 2.00</entry>
|
|
<entry>11.1</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Pentium MMX</entry>
|
|
<entry>clock * 2.00</entry>
|
|
<entry>11.1</entry>
|
|
</row>
|
|
<row>
|
|
<entry>PowerPC 604/604e/750</entry>
|
|
<entry>clock * 2.00</entry>
|
|
<entry>11.1</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Motorola 68060</entry>
|
|
<entry>clock * 2.01</entry>
|
|
<entry>11.2</entry>
|
|
</row>
|
|
<row>
|
|
<entry>Motorola 68040</entry>
|
|
<entry spanname="c2c3">Not enough data (yet).</entry>
|
|
</row>
|
|
<row>
|
|
<entry>AMD Athlon</entry>
|
|
<entry spanname="c2c3">Not enough data (yet).</entry>
|
|
</row>
|
|
<row>
|
|
<entry>IBM S390</entry>
|
|
<entry spanname="c2c3">Not enough data (yet).</entry>
|
|
</row>
|
|
</tbody>
|
|
</tgroup>
|
|
</table>
|
|
</para>
|
|
-->
|
|
<para>
|
|
<screen>
|
|
Common BogoMips Ratings
|
|
|
|
Processor BogoMips Comparison
|
|
--------- -------- ----------
|
|
Intel 8088 clock * 0.004 0.02
|
|
Intel/AMD 386SX clock * 0.14 0.8
|
|
Intel/AMD 386DX clock * 0.18 1 (definition)
|
|
Motorola 68030 clock * 0.25 1.4
|
|
Cyrix/IBM 486 clock * 0.34 1.8
|
|
Intel Pentium clock * 0.40 2.2
|
|
Intel 486 clock * 0.50 2.8
|
|
AMD 5x86 clock * 0.50 2.8
|
|
Mips R4000/R4400 clock * 0.50 2.8
|
|
Nexgen Nx586 clock * 0.75 4.2
|
|
PowerPC 601 clock * 0.84 4.7
|
|
Alpha 21064/21064A clock * 0.99 5.5
|
|
Alpha 21066/21066A clock * 0.99 5.5
|
|
Alpha 21164/21164A clock * 0.99 5.5
|
|
Intel Pentium Pro clock * 0.99 5.5
|
|
Cyrix 5x86/6x86 clock * 1.00 5.6
|
|
Intel Pentium II/III clock * 1.00 5.6
|
|
Intel Celeron clock * 1.00 5.6
|
|
Mips R4600 clock * 1.00 5.6
|
|
Alpha 21264 clock * 1.99 11.1
|
|
AMD K5/K6/K6-2/K6-III clock * 2.00 11.1
|
|
UltraSparc II clock * 2.00 11.1
|
|
Pentium MMX clock * 2.00 11.1
|
|
PowerPC 604/604e/750 clock * 2.00 11.1
|
|
Motorola 68060 clock * 2.01 11.2
|
|
Motorola 68040 Not enough data (yet).
|
|
AMD Athlon Not enough data (yet).
|
|
IBM S390 Not enough data (yet).
|
|
</screen>
|
|
</para>
|
|
<para>
|
|
If the number is wildly lower, you may have the Turbo button or CPU
|
|
speed set incorrectly, or have some kind of caching problem (as
|
|
described in
|
|
(``<xref linkend="add-memory-system-slows"
|
|
endterm="add-memory-system-slows">'')
|
|
</para>
|
|
<para>
|
|
For values people have seen with other, rarer, chips, or to calculate
|
|
your own BogoMips rating, please refer to the
|
|
<citetitle>BogoMips Mini-HOWTO</citetitle>, on
|
|
<ulink url="ftp://metalab.unc.edu/">
|
|
<literal>ftp://metalab.unc.edu/</literal></ulink>.
|
|
(``<xref linkend="howtos-and-other-documentation"
|
|
endterm="howtos-and-other-documentation">'')
|
|
</para>
|
|
<para>
|
|
[Wim van Dorst]
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="8.7">
|
|
<title id="online-free-periodicals">
|
|
What Online/Free Periodicals Exist for Linux?</title>
|
|
<para>
|
|
There are a number of recent additions to the list of periodicals
|
|
devoted to Linux and free software:
|
|
</para>
|
|
<para>
|
|
<itemizedlist>
|
|
<listitem><para>
|
|
<citetitle>geek news</citetitle>.
|
|
<ulink url="http://geeknews.cjb.net/">
|
|
<literal>http://geeknews.cjb.net/</literal></ulink>. Headlines for
|
|
articles about Linux, like the
|
|
<citetitle>comp.os.linux.announce</citetitle> and Techweb postings,
|
|
and general interest, like Associated Press stories.
|
|
</para></listitem> <listitem><para> <citetitle>Linux
|
|
Gazette</citetitle>.
|
|
<ulink url="http://www.linuxgazette.com/">
|
|
<literal>http://www.linuxgazette.com/</literal></ulink>. This is the
|
|
longest-running of the on-line periodicals, and the only one that
|
|
publishes source code. </para></listitem> <listitem><para>
|
|
<citetitle>Linux Today</citetitle>.
|
|
<ulink url="http://www.linuxtoday.com">
|
|
<literal>http://www.linuxtoday.com</literal></ulink>. News
|
|
and opinion related to the Linux community, updated daily.
|
|
</para></listitem> <listitem><para> <citetitle>Linux Weekly
|
|
News</citetitle>.
|
|
<ulink url="http://lwn.net">
|
|
<literal>http://lwn.net</literal></ulink>.
|
|
News about the Linux community,
|
|
updated weekly. </para></listitem> <listitem><para>
|
|
<citetitle>Slashdot</citetitle>.
|
|
<ulink url="http://www.slashdot.org">
|
|
<literal>http://www.slashdot.org</literal></ulink>. News about the
|
|
free software community and culture. </para></listitem>
|
|
<listitem><para> <citetitle>Freshmeat</citetitle>.
|
|
<ulink url="http://www.freshmeat.net/">
|
|
<literal>http://www.freshmeat.net/</literal></ulink>.
|
|
Notices of new and updated software for
|
|
Linux and other free OS's. </para></listitem>
|
|
</itemizedlist>
|
|
</para>
|
|
<para>
|
|
Please send additions to this list to the FAQ maintainer.
|
|
</para>
|
|
<para>
|
|
[Jim Dennis, Robert Kiesling]
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="8.8">
|
|
<title id="how-many-people">
|
|
How Many People Use Linux?</title>
|
|
<para>
|
|
Linux is freely available, and no one is required to register with any
|
|
central authority, so it is difficult to know. Several businesses
|
|
survive solely on selling and supporting Linux. Linux news groups are
|
|
some of the most heavily read on Usenet. Accurate numbers are hard to
|
|
come by, but the number is almost certainly in the millions.
|
|
</para>
|
|
<para>
|
|
However, people can register as Linux users at the Linux Counter
|
|
project, which has been in existence since 1993. In August, 1998, the
|
|
project counted more than 70,000 users.
|
|
</para>
|
|
<para>
|
|
Visit the Web site at
|
|
<ulink url="http://counter.li.org/">
|
|
<literal>http://counter.li.org/</literal></ulink> and fill in the
|
|
registration form. If you don't want to use the Web, send E-mail to
|
|
<ulink url="mailto:counter@counter.li.org">
|
|
<literal>counter@counter.li.org</literal></ulink> with the
|
|
subject line, ``<literal>I use Linux at home</literal>,'' or
|
|
``<literal>I use Linux at work.</literal>''
|
|
</para>
|
|
<para>
|
|
The current count is posted monthly to
|
|
<citetitle>comp.os.linux.misc</citetitle>, and is always available
|
|
from the Web site.
|
|
</para>
|
|
<para>
|
|
[Harald Tveit Alvestrand]
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="8.9">
|
|
<title id="how-many-redux">
|
|
How Many People Use Linux? (Redux.)</title>
|
|
<para>
|
|
In 1999, International Data Corporation released its first commercial
|
|
forecast of Linux sales. The report quantifies Linux vendor sales in
|
|
1996, 1997, and 1998, and forecasts through the year 2003.
|
|
</para>
|
|
<para>
|
|
To obtain the report, contact IDC at
|
|
<ulink url="mailto:ctoffel@idc.com">
|
|
<literal>ctoffel@idc.com</literal></ulink>. Their Web site is
|
|
<ulink url="http://www.itresearch.com/">
|
|
<literal>http://www.itresearch.com/</literal></ulink>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="8.10">
|
|
<title id="what-is-best">
|
|
What Is the Best (Distribution|SCSI Card|Editor|CD-ROM Drive|....) </title>
|
|
<para>
|
|
The ``best'' of anything depends on your particular needs.
|
|
Discussions like these frequently occur on Usenet. Most often they're
|
|
flame bait. Answering is generally a waste of time. Free software
|
|
licensing is unrestrictive enough, that, with a little experience, you
|
|
can perform your own testing on your own hosts.
|
|
</para>
|
|
<para>
|
|
A better way to phrase a specific inquiry might be: ``Where can I
|
|
find....''
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="8.11">
|
|
<title id="pronounce-linux">How Does One Pronounce Linux?</title>
|
|
<para>
|
|
This question produces an outrageous amount of heated debate.
|
|
</para>
|
|
<para>
|
|
If you want to hear Linus himself say how he pronounces it, download
|
|
<filename>english.au</filename> or <filename>swedish.au</filename>
|
|
from
|
|
<ulink url="ftp://ftp.funet.fi/pub/Linux/PEOPLE/Linus/SillySounds/">
|
|
<literal>ftp.funet.fi/pub/Linux/PEOPLE/Linus/SillySounds/</literal></ulink>.
|
|
If you have a sound card or the PC-speaker audio driver you can hear
|
|
them by typing
|
|
</para>
|
|
<para><screen>
|
|
$ cat english.au >/dev/audio
|
|
</screen></para>
|
|
<para>
|
|
The difference isn't in the pronunciation of Linux but in the language
|
|
Linus uses to say, ``hello.''
|
|
</para>
|
|
<para>
|
|
For the benefit of those who don't have the equipment or inclination:
|
|
Linus pronounces Linux approximately as Leenus, where the ``ee'' is
|
|
pronounced as in ``feet,'' but rather shorter, and the ``u'' is like a
|
|
much shorter version of the French ``eu'' sound in ``peur''
|
|
(pronouncing it as the ``u'' in ``put'' is probably passable).
|
|
</para>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
<sect1 label="9">
|
|
<title>Frequently Encountered Error Messages</title>
|
|
<sect2 label="9.1">
|
|
<title id="modprobe-cant-locate-module">
|
|
<command>Modprobe</command> Can't Locate Module,
|
|
<emphasis>XXX</emphasis>, and Similar Messages.</title>
|
|
<para>
|
|
These types of messages mostly occur at boot time or shutdown. If
|
|
modprobe, insmod, or rmmod complain about not being able to find a
|
|
module, add the following to the <filename>/etc/modules.conf</filename> or
|
|
<filename>/etc/modutils/aliases</filename>
|
|
file, whichever is present on your system.
|
|
</para>
|
|
<para><screen>
|
|
$ alias <module-name> off
|
|
</screen></para>
|
|
<para>
|
|
And use the name of the module that appears in the error message.
|
|
</para>
|
|
<para>
|
|
[J.H.M. Dassen]
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="9.2">
|
|
<title id="unknown-terminal-type">
|
|
Unknown Terminal Type ``<literal>linux</literal>'' and Similar.</title>
|
|
<para>
|
|
In early kernels the default console terminal type has changed from
|
|
``<literal>console</literal>'' to ``<literal>linux</literal>.'' You
|
|
must edit <filename>/etc/termcap</filename> to change the line
|
|
reading:
|
|
</para>
|
|
<para><screen>
|
|
console|con80x25:\
|
|
</screen></para>
|
|
<para>
|
|
to
|
|
</para>
|
|
<para><screen>
|
|
linux|console|con80x25:\
|
|
</screen></para>
|
|
<para>
|
|
(there may be an additional ``<literal>dumb</literal>''
|
|
in there—if so it should be removed.)
|
|
</para>
|
|
<para>
|
|
To get the editor to work you may need type:
|
|
</para>
|
|
<para><screen>
|
|
$ TERM=console
|
|
</screen></para>
|
|
<para>
|
|
(for <command>bash</command> and <command>ksh</command>), or
|
|
</para>
|
|
<para><screen>
|
|
$ setenv TERM console
|
|
</screen></para>
|
|
<para>
|
|
for <command>csh</command> or <command>tcsh</command>.
|
|
</para>
|
|
<para>
|
|
Some programs use <filename>/usr/lib/terminfo</filename>
|
|
instead of <filename>/etc/termcap</filename>. For these
|
|
programs you should upgrade your terminfo package,
|
|
which is part of ncurses.
|
|
</para>
|
|
<para>
|
|
The same is true for X terminal displays. If your distribution
|
|
sets the <literal>TERM</literal> to something strange like
|
|
<literal>xterm-24-color</literal>, you can simply reset it
|
|
to a generic value from the command line:
|
|
</para>
|
|
<para>
|
|
<screen>
|
|
$ TERM="xterm"; export TERM
|
|
</screen>
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="9.3">
|
|
<title id="inet-warning-old-style">
|
|
<literal>INET: Warning: old style ioctl... called!</literal></title>
|
|
<para>
|
|
You are trying to use the old network configuration utilities. The new
|
|
ones can be found on
|
|
<ulink url="ftp.linux.org.uk/pub/linux/Networking/PROGRAMS/NetTools/">
|
|
<literal>ftp.linux.org.uk/pub/linux/Networking/PROGRAMS/NetTools/</literal></ulink> (source only, I'm afraid).
|
|
</para>
|
|
<para>
|
|
Note that they cannot be used just like the old-style programs. See
|
|
the <citetitle>NET-2 HOWTO</citetitle> for instructions on how to set
|
|
up the old-style networking programs correctly. Even better, see the
|
|
<citetitle>NET-3 HOWTO</citetitle> and upgrade your networking
|
|
software.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="9.4">
|
|
<title id="ld-unrecognized">
|
|
<literal>ld: unrecognized option '-m486'</literal></title>
|
|
<para>
|
|
You have an old version of <command>ld</command>.
|
|
Install a newer binutils package that
|
|
contains an updated <command>ld</command>. Look on tsx-11.mit.edu in
|
|
<filename>/pub/linux/packages/GCC/</filename> for
|
|
<filename>binutils-2.6.0.2.bin.tar.gz</filename>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="9.5">
|
|
<title id="gcc-says">
|
|
GCC Says, ``<literal>Internal compiler error</literal>.''</title>
|
|
<para>
|
|
If the fault is repeatable (i.e., it always happens at the same place
|
|
in the same file—even after rebooting and trying again, using a
|
|
stable kernel) you have discovered a bug in GCC. See the GCC Info
|
|
documentation (type
|
|
<keycombo><keycap>F1</keycap><keycap>i</keycap></keycombo> in Emacs,
|
|
and select GCC from the menu) for details on how to report the
|
|
error. Make sure you have the latest version, though.
|
|
</para>
|
|
<para>
|
|
Note that this is probably not a Linux-specific problem. Unless you
|
|
are compiling a program many other Linux users also compile, you
|
|
should not post your bug report to any of the comp.os.linux groups.
|
|
</para>
|
|
<para>
|
|
If the problem is not repeatable, you may be experiencing memory
|
|
corruption. Refer to the answer:
|
|
(``<xref linkend="make-says" endterm="make-says">'')
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="9.6">
|
|
<title id="make-says">
|
|
Make Says, ``<literal>Error 139.</literal>''</title>
|
|
<para>
|
|
Your compiler (GCC) dumped core. You probably have a corrupted, buggy,
|
|
or old version of GCC—get the latest release or EGCS. Alternatively,
|
|
you may be running out of swap space. Refer to:
|
|
(``<xref linkend="machine-runs-very-slowly-when"
|
|
endterm="machine-runs-very-slowly-when">'')
|
|
</para>
|
|
<para>
|
|
If this doesn't fix the problem, you are probably having problems with
|
|
memory or disk corruption. Check that the clock rate, wait states, and
|
|
refresh timing for your SIMMS and cache are correct (hardware manuals
|
|
are sometimes wrong, too). If so, you may have some marginal SIMMS, or
|
|
a faulty motherboard or hard disk or controller.
|
|
</para>
|
|
<para>
|
|
Linux is a very good memory tester—much better than MS-DOS based
|
|
memory test programs.
|
|
</para>
|
|
<para>
|
|
Reportedly, some clone x87 math coprocessors can cause problems. Try
|
|
compiling a kernel with math emulation
|
|
(``<xref linkend="upgrade-recompile-kernel"
|
|
endterm="upgrade-recompile-kernel">'')
|
|
<literal>no387</literal>
|
|
kernel command line flag on the LILO prompt to force the kernel to use
|
|
math emulation, or it may be able to work and still use the '387, with
|
|
the math emulation compiled in but mainly unused.
|
|
</para>
|
|
<para>
|
|
More information about this problem is available on the Web at
|
|
<ulink url="http://www.bitwizard.nl/sig11/">
|
|
<literal>http://www.bitwizard.nl/sig11/</literal></ulink>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="9.7">
|
|
<title id="shell-init-permission">
|
|
Shell-Init: Permission Denied when I Log In.</title>
|
|
<para>
|
|
Your root directory and all the directories up to your home directory
|
|
must be readable and executable by everybody. See the manual page for
|
|
<command>chmod</command> or a book on Unix for how to fix the problem.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="9.8">
|
|
<title id="no-utmp-entry">
|
|
No Utmp Entry. You Must Exec ... when Logging In.</title>
|
|
<para>
|
|
Your <filename>/var/run/utmp</filename> is screwed up. You should have
|
|
</para>
|
|
<para><screen>
|
|
/var/run/utmp
|
|
</screen></para>
|
|
<para>
|
|
in your <filename>/etc/rc.local</filename> or
|
|
<filename>/etc/rc.d/*</filename>. See,
|
|
(``<xref linkend="screwed-up-system-and-cant-log-in"
|
|
endterm="screwed-up-system-and-cant-log-in">'') Note that the
|
|
<filename>utmp</filename> may also
|
|
be found in <filename>/var/adm/</filename> or
|
|
<filename>/etc/</filename> on some older systems.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="9.9">
|
|
<title id="warning--bdflush">Warning--bdflush Not Running.</title>
|
|
<para>
|
|
Modern kernels use a better strategy for writing cached disk blocks.
|
|
In addition to the kernel changes, this involves replacing the old
|
|
|
|
<command>update</command> program which used to write everything every
|
|
30 seconds with a more subtle daemon (actually a pair), known as
|
|
<command>bdflush</command>. Get
|
|
<filename>bdflush-</filename><emphasis>n.n</emphasis><filename>.tar.gz</filename>
|
|
from the same place as the kernel source code (``<xref
|
|
linkend="upgrade-recompile-kernel"
|
|
endterm="upgrade-recompile-kernel">'') and compile and install
|
|
it. <command>bdflush</command> should be started before the usual
|
|
boot-time file system checks. It will work fine with older kernels as
|
|
well, so there's no need to keep the old <command>update</command>
|
|
around.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="9.10">
|
|
<title id="warning-obsolete-routing">
|
|
<literal>Warning: obsolete routing request made</literal>.</title>
|
|
<para>
|
|
This is nothing to worry about. The message means that your version
|
|
<command>route</command> is a little out of date, compared to the
|
|
kernel. You can make the message go away by getting a new version of
|
|
<command>route</command> from the same place as the kernel source
|
|
code. (``<xref linkend="upgrade-recompile-kernel"
|
|
endterm="upgrade-recompile-kernel">'')
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="9.11">
|
|
<title id="ext2-fs-warning-mounting">
|
|
<literal>EXT2-fs: warning: mounting unchecked file system</literal>.</title>
|
|
<para>
|
|
You need to run <command>e2fsck</command> (or <literal>fsck -t
|
|
ext2</literal> if you have the <command>fsck</command> front end
|
|
program) with the <command>-a</command> option to get it to clear the
|
|
``<literal>dirty</literal>'' flag, and then cleanly unmount the
|
|
partition during each shutdown.
|
|
</para>
|
|
<para>
|
|
The easiest way to do this is to get the latest
|
|
<command>fsck</command>, <command>umount</command>, and
|
|
<command>shutdown</command> commands, available in Rik Faith's
|
|
<filename>util-linux</filename> package (``<xref
|
|
linkend="get-linux-material-by-ftp"
|
|
endterm="get-linux-material-by-ftp">'') You have to make sure that
|
|
your <filename>/etc/rc*/</filename> scripts use them correctly.
|
|
</para>
|
|
<para>
|
|
NB: Don't try to check a file system that's mounted read/write. This
|
|
includes the root partition if you don't see
|
|
</para>
|
|
<para><screen>
|
|
VFS: mounted root ... read-only
|
|
</screen></para>
|
|
<para>
|
|
at boot time. You must arrange to mount the root file system read/only
|
|
to start with, check it if necessary, and then remount it read/write.
|
|
Almost all distributions do this. If your's doesn't, read the
|
|
documentation that comes with <filename>util-linux</filename> to find
|
|
out how to do this.
|
|
</para>
|
|
<para>
|
|
Note that you need to specify the <command>-n</command> option to
|
|
<command>mount</command> so it won't try to update
|
|
<filename>/etc/mtab</filename>, since the root file system is still
|
|
read-only, and this will otherwise cause it to fail.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="9.12">
|
|
<title id="ext2-fs-maximal">
|
|
<literal>EXT2-fs warning: maximal count reached</literal>.</title>
|
|
<para>
|
|
This message is issued by the kernel when it mounts a file system
|
|
that's marked as clean, but whose "number of mounts since check"
|
|
counter has reached the predefined value. The solution is to get the
|
|
latest version of the ext2fs utilities
|
|
(<filename>e2fsprogs-0.5b.tar.gz</filename> at the time of writing)
|
|
from the usual sites. (``<xref linkend="get-linux-material-by-ftp"
|
|
endterm="get-linux-material-by-ftp">'')
|
|
</para>
|
|
<para>
|
|
The maximal number of mounts value can be examined and changed using
|
|
the <command>tune2fs</command> program from this package.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="9.13">
|
|
<title id="ext2-fs-warning">
|
|
<literal>EXT2-fs warning: checktime reached</literal>.</title>
|
|
<para>
|
|
Kernels from 1.0 onwards support checking a file system based on the
|
|
elapsed time since the last check as well as by the number of mounts.
|
|
Get the latest version of the ext2fs utilities.
|
|
(``<xref linkend="ext2-fs-maximal" endterm="ext2-fs-maximal">'')
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="9.14">
|
|
<title id="df-says-cannot">
|
|
<command>df</command> Says,
|
|
``<literal>Cannot read table of mounted file systems</literal>.''</title>
|
|
<para>
|
|
There is probably something wrong with your
|
|
<filename>/etc/mtab</filename> or <filename>/etc/fstab</filename>
|
|
files. If you have a reasonably new version of mount,
|
|
<filename>/etc/mtab</filename> should
|
|
be emptied or deleted at boot time (in
|
|
<filename>/etc/rc.local</filename> or <filename>/etc/rc.d/*</filename>),
|
|
using something like
|
|
</para>
|
|
<para><screen>
|
|
$ rm -f /etc/mtab*
|
|
</screen></para>
|
|
<para>
|
|
Some old Linux distributions have an entry for the root partition in
|
|
<filename>/etc/mtab</filename>
|
|
made in <filename>/etc/rc*</filename> by using <command>rdev</command>.
|
|
That is incorrect—the newer versions
|
|
of <command>mount</command> do this automatically.
|
|
</para>
|
|
<para>
|
|
Some old distributions also have a line in
|
|
<filename>/etc/fstab</filename> that looks like:
|
|
</para>
|
|
<para><screen>
|
|
/dev/sdb1 /root ext2 defaults
|
|
</screen></para>
|
|
<para>
|
|
The entry for <filename>/root</filename> should read simply
|
|
<filename>/</filename>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="9.15">
|
|
<title id="fdisk-says-partition">
|
|
<command>fdisk</command> Says,
|
|
``<literal>Partition X has different physical/logical...</literal>''</title>
|
|
<para>
|
|
If the partition number (X, above) is 1, this is the same problem as
|
|
in <literal>fdisk: Partition 1 does not start on cylinder boundary</literal>.
|
|
|
|
If the partition begins or ends on a cylinder numbered greater than
|
|
1024, this is because the standard DOS disk geometry information
|
|
format in the partition table can't cope with cylinder numbers with
|
|
more than 10 bits. You should see
|
|
(``<xref linkend="linux-to-work-with-my-disk"
|
|
endterm="linux-to-work-with-my-disk">'')
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="9.16">
|
|
<title id="fdisk-partition-does-not">
|
|
<literal>fdisk: Partition 1 does not start on cylinder boundary</literal>.
|
|
</title>
|
|
<para>
|
|
The version of <command>fdisk</command> that comes with many Linux
|
|
systems creates partitions that fail its own validity
|
|
checking. Unfortunately, if you've already installed your system,
|
|
there's not much you can do about this, apart from copying the data
|
|
off the partition, deleting and remaking it, and copying the data
|
|
back.
|
|
</para>
|
|
<para>
|
|
You can avoid the problem by getting the latest version of
|
|
<command>fdisk</command>, from Rik Faith's util-linux package
|
|
(available on all the usual FTP sites). Alternatively, if you are
|
|
creating a new partition 1 that starts in the first cylinder, you can
|
|
do the following to get a partition that <command>fdisk</command>
|
|
likes.
|
|
</para>
|
|
<itemizedlist>
|
|
<listitem><para>
|
|
Create partition 1 in the normal way. A `<literal>p</literal>'
|
|
listing will produce the mismatch complaint.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Type <keycap>u</keycap> to set sector mode and do
|
|
<keycap>p</keycap> again. Copy down the number
|
|
from the <literal>End</literal> column.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Delete partition 1.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
While still in sector mode, re-create partition 1. Set the first
|
|
sector to match the number of sectors per track. This is the
|
|
sector number in the first line of the <keycap>p</keycap>
|
|
output. Set the last sector to the value you wrote down in the step above.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Type <keycap>u</keycap> to reset cylinder mode and continue with other
|
|
partitions.
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
<para>
|
|
Ignore the message about unallocated sectors. They refer to the
|
|
sectors on the first track apart from the Master Boot Record, and they
|
|
are not used if you start the first partition in track 2.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="9.17">
|
|
<title id="fdisk-odd-number-sectors">
|
|
<command>fdisk</command> Says Partition <emphasis>n</emphasis> Has
|
|
an Odd Number of Sectors.</title>
|
|
<para>
|
|
The PC disk partitioning scheme works in 512-byte sectors, but Linux
|
|
uses 1K blocks. If you have a partition with an odd number of sectors,
|
|
the last sector is wasted. Ignore the message.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="9.18">
|
|
<title id="mtools-cannot-initialize">
|
|
Mtools Utilities Say They Cannot Initialize Drive <emphasis>X</emphasis>.</title>
|
|
<para>
|
|
This means that mtools is having trouble accessing the drive. This can
|
|
be due to several things.
|
|
</para>
|
|
<para>
|
|
Often this is due to the permissions on floppy drive devices
|
|
(<filename>/dev/fd0*</filename> and <filename>/dev/fd1*</filename>)
|
|
being incorrect. The user running mtools
|
|
must have the appropriate access. See the manual page for
|
|
<command>chmod</command> for
|
|
details.
|
|
</para>
|
|
<para>
|
|
Most versions of mtools distributed with Linux systems (not the
|
|
standard GNU version) use the contents of a file
|
|
<filename>/etc/mtools</filename> to
|
|
determine which devices and densities to use, in place of having this
|
|
information compiled into the binary. Mistakes in this file often
|
|
cause problems. There is often no documentation about this.
|
|
</para>
|
|
<para>
|
|
For the easiest way to access your MS-DOS files (especially those on a
|
|
hard disk partition) see How do I access files on my DOS
|
|
partition or floppy? Note—you should never use mtools to access files
|
|
on an msdosfs mounted partition or disk!
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="9.19">
|
|
<title id="memory-tight">
|
|
At the Start of Booting: <literal>Memory tight</literal></title>
|
|
<para>
|
|
This means that you have an extra-large kernel, which means that Linux
|
|
has to do some special memory-management magic to be able to boot
|
|
itself from the BIOS. It isn't related to the amount of physical
|
|
memory in your machine. Ignore the message, or compile a kernel
|
|
containing only the drivers and features you need.
|
|
(``<xref linkend="upgrade-recompile-kernel"
|
|
endterm="upgrade-recompile-kernel">'')
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="9.20">
|
|
<title id="my-syslog-says-end-request">
|
|
The System Log Says, ``<literal>end_request: I/O error</literal>, ....''</title>
|
|
<para>
|
|
This error message, and messages like it, almost always indicate a
|
|
hardware error with a hard drive.
|
|
</para>
|
|
<para>
|
|
This commonly indicates a hard drive defect. The only way to avoid
|
|
further data loss is to completely shut own the system. You must also
|
|
make sure that whatever data is on the drive is backed up, and restore
|
|
it to a non-defective hard drive.
|
|
</para>
|
|
<para>
|
|
This error message may also indicate a bad connection to the drive,
|
|
especially with home brew systems. If you install an IDE drive,
|
|
<emphasis>always</emphasis>
|
|
use new ribbon cables. It's probably is a good idea with SCSI drives, too.
|
|
</para>
|
|
<para>
|
|
In one instance, this error also seemed to coincide with a bad ground
|
|
between the system board and the chassis. Be sure that all electrical
|
|
connections are clean and tight before placing the blame on the hard
|
|
drive itself.
|
|
</para>
|
|
<para>
|
|
[Peter Moulder, Theodore Ts'o]
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="9.21">
|
|
<title id="you-don-t-exist">
|
|
``<literal>You don't exist. Go away.</literal>''</title>
|
|
<para>
|
|
This is not a viral infection. It comes from programs like
|
|
<command>write</command>, <command>talk</command>, and
|
|
<command>wall</command>, if your invoking UID doesn't correspond to a valid
|
|
user (probably due to <filename>/etc/passwd</filename> being corrupted),
|
|
or if the session
|
|
(pseudoterminal, specifically) you're using isn't properly registered
|
|
in the <filename>utmp</filename> file (probably because you invoked
|
|
it in a funny way).
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="9.22">
|
|
<title id="chattr">
|
|
``<literal>Operation not permitted</literal>.''</title>
|
|
<para>
|
|
One or more of the file's or directory's attribute bits are set
|
|
incorrectly. If the ``<literal>I</literal>'' bit is set, for
|
|
example, you won't be able to change file permissions with
|
|
<command>chmod</command>.
|
|
</para>
|
|
<para>
|
|
The solution is to use <command>lsattr</command> to display file and
|
|
directory attributes, and <command>chattr</command> to set and unset
|
|
them. The programs' documentation is contained in their manual pages.
|
|
</para>
|
|
<para>
|
|
[Paul Campbell]
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="9.23">
|
|
<title><emphasis>programname: </emphasis>
|
|
<literal>error in loading shared libraries: lib</literal>
|
|
<emphasis>xxx.</emphasis><literal>.so.</literal>
|
|
<emphasis>x</emphasis><literal>: cannot open shared object file:
|
|
No such file or directory.</literal>
|
|
</title>
|
|
<para>
|
|
A message like this, when the program that you're trying to run uses
|
|
shared libraries, usually means one of two things: the program was
|
|
either compiled on a machine that had a different set of libraries
|
|
or library paths than yours; or you've upgraded your libraries
|
|
but not the program.
|
|
</para>
|
|
<para>
|
|
Executable programs that are linked with dynamic libraries, expect the
|
|
full pathname of each of the library files it requires. So do the
|
|
shared libraries, if they rely on other libraries. This is so
|
|
the shared object dependencies remain as unambiguous as possible, and
|
|
also as a security measure.
|
|
</para>
|
|
<para>
|
|
Short of recompiling the executable file for the libraries on the
|
|
system—probably the most desirable alternative in the long
|
|
run—you can try to determine which libraries the executable file needs
|
|
with the command: ``<literal>ldd
|
|
</literal><emphasis>programname</emphasis>.'' The output will be a
|
|
list of the shared libraries on the system that the program needs to
|
|
run, as well as the missing libraries. You can then add the library
|
|
packages, or if the libraries already exist in a different directory,
|
|
you can create a symbolic link so the program can find it. For
|
|
example, if the program requires /usr/lib/libncurses.so.2, and your
|
|
machine has /lib/libncurses.so.2, you can create a link where the
|
|
program expects to find the library; e.g.:
|
|
</para>
|
|
<para>
|
|
<screen>
|
|
# cd /usr/lib && ln -s /lib/libncurses.so.2 .
|
|
</screen>
|
|
</para>
|
|
<para>
|
|
You should note, however, that creating library links like these
|
|
should be considered a security risk, and the additional links you
|
|
create will not be compatible with future upgrades. It's simply
|
|
a quick fix for backward compatibility.
|
|
</para>
|
|
<para>
|
|
Also, it may take some guesswork to determine in exactly which of the
|
|
system library directories the program expects to find a shared
|
|
library file, because <literal>ldd</literal> will not list the paths
|
|
of libraries it can't find. A program most likely will tell the
|
|
run-time linker, <literal>/lib/ld.so</literal>, to look for shared
|
|
libraries in <filename>/lib</filename>, <filename>/usr/lib</filename>,
|
|
<filename>/usr/local/lib</filename>, or
|
|
<filename>/usr/X11R6/lib</filename>, if it's an X client. But that
|
|
doesn't mean that libraries can't be installed elsewhere. It helps to
|
|
have some idea of the original library configuration before
|
|
proceeding.
|
|
</para>
|
|
<para>
|
|
Also be sure to run <literal>ldconfig</literal> after creating the
|
|
symbolic link, so that <literal>ld.so</literal> has an updated view
|
|
of the system's libraries. You should also make certain that all of
|
|
the library directories are listed in
|
|
<filename>/etc/ld.so.conf</filename>, and perhaps in the
|
|
<literal>LD_LIBRARY_PATH</literal> environment variable.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="9.24">
|
|
<title>
|
|
``<literal>
|
|
init: Id "x" respawning too fast: disabled for 5 minutes
|
|
</literal>.''
|
|
</title>
|
|
<para>
|
|
In most distributions this means that the system is booting by default
|
|
into runlevel 5, which is supposed to respawn (re-start again
|
|
after it's been exited) a graphical login via
|
|
<application>xdm</application>,
|
|
<application>kdm</application>,
|
|
<application>gdm</application>, or whatever,
|
|
and the system can't locate the program.
|
|
</para>
|
|
<para>
|
|
However, ``<literal>Id</literal>'' can also indicate the absence
|
|
or misconfiguration of another program, like
|
|
<application>mingetty</application>, if <application>init</application>
|
|
tries to respawn itself more than 10 times in 2 minutes.
|
|
</para>
|
|
<para>
|
|
Id ``x'' is the number in the leftmost column of the
|
|
<filename>/etc/inittab</filename> file:
|
|
</para>
|
|
<para><screen>
|
|
# Run gettys in standard runlevels
|
|
1:2345:respawn:/sbin/mingetty tty1
|
|
2:2345:respawn:/sbin/mingetty tty2
|
|
3:2345:respawn:/sbin/mingetty tty3
|
|
4:2345:respawn:/sbin/mingetty tty4
|
|
5:2345:respawn:/sbin/mingetty tty5
|
|
6:2345:respawn:/sbin/mingetty tty6
|
|
</screen></para>
|
|
<para>
|
|
Commenting the offending line out and then fixing the errant program and
|
|
testing on the command line will allow you to see any error messages
|
|
that go to standard error output (console) if the errors are not
|
|
going to the system log file. Uncomment the line and restart
|
|
<application>init</application> with
|
|
``<literal>kill -SIGHUP 1</literal>'' or
|
|
``<application>telinit q</application>'' to cause
|
|
<application>init</application> to reinitialize and reread the
|
|
<filename>/etc/inittab</filename> file.
|
|
</para>
|
|
<para>
|
|
Some systems, however, rewrite <filename>/etc/inittab</filename> when
|
|
booting. In that case, refer to the <literal>init</literal> man
|
|
page, and/or the settings in <filename>/etc/sysconfig/init</filename>.
|
|
</para>
|
|
<para>
|
|
Refer to the <application>init</application> and
|
|
<filename>/etc/inittab</filename> man pages for detailed
|
|
information.
|
|
</para>
|
|
<para>
|
|
[Carl King]
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="9.25">
|
|
<title id="ftp-421-error">
|
|
FTP server says: ``421 service not available, remote server has closed connection.''
|
|
</title>
|
|
<para>
|
|
If an FTP server won't allow logins, it is probably configured
|
|
correctly, but the problem is probably with authorizing users at login.
|
|
FTP servers in current distriubtions often authorize users with the
|
|
Pluggable Authentication Modules library, in which case there should
|
|
be an authorization file <filename>/etc/pam.d/ftp</filename>. A
|
|
generic authorization file looks like this. (The line break on the
|
|
first ``auth'' line is for readability. The entry is actually a single,
|
|
long line).
|
|
</para>
|
|
<para><screen>
|
|
#%PAM-1.0
|
|
auth required /lib/security/pam_listfile.so item=user \
|
|
sense=deny file=/etc/ftpusers onerr=succeed
|
|
auth required /lib/security/pam_pwdb.so shadow nullok
|
|
auth required /lib/security/pam_shells.so
|
|
account required /lib/security/pam_pwdb.so
|
|
session required /lib/security/pam_pwdb.so
|
|
</screen></para>
|
|
<para>
|
|
Also, make sure the <filename>/etc/ftpusers</filename> file, or whatever
|
|
users file is named in the first ``auth'' line, is configured correctly.
|
|
</para>
|
|
<para>
|
|
Btw, the sample <filename>ftp</filename> file above is actually
|
|
the<filename>ftpd/ftp.pam.sample</filename> file from the
|
|
<filename>ftpd-BSD-0.3.1.tar.gz</filename> package. Many thanks
|
|
to David A. Madore for this much needed port.
|
|
</para>
|
|
</sect2>
|
|
|
|
</sect1>
|
|
|
|
|
|
<sect1 label="10">
|
|
<title>The X Window System</title>
|
|
<sect2 label="10.1">
|
|
<title id="linux-support-x">Does Linux Support X?</title>
|
|
<para>
|
|
Yes. Linux uses XFree86 (the current version is 4.0, which is based
|
|
on X11R6). You need to have a video card which is supported by
|
|
XFree86. See the <citetitle>XFree86 HOWTO</citetitle> for more details.
|
|
|
|
Most Linux distributions nowadays come with an X installation.
|
|
However, you can install or upgrade your own, from
|
|
<ulink url="ftp://metalab.unc.edu/pub/Linux/X11/Xfree86-*">
|
|
<literal>"ftp://metalab.unc.edu/pub/Linux/X11/Xfree86-*"</literal></ulink>
|
|
and its mirror sites, or from
|
|
<ulink url="http://www.xfree86.org/">
|
|
<literal>http://www.xfree86.org/</literal></ulink>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="10.2">
|
|
<title id="get-x-window-system-work">
|
|
How To Get the X Window System to Work.</title>
|
|
<para>
|
|
The answers to this question can, and do, fill entire books. If the
|
|
installation program wasn't able to configure the X server correctly,
|
|
Linux will most likely try to start the X display, fail, and drop back
|
|
into text-only terminal mode.
|
|
</para>
|
|
<para>
|
|
First and foremost, make certain that you have provided, as closely as
|
|
possible, the correct information to the installation program of your
|
|
video hardware: the video card and monitor. Some installation programs
|
|
can correctly guess a ``least common denominator'' screen configuration,
|
|
like a 640-by-480 VESA-standard display, but there are many possible
|
|
video hardware configurations that may not be able to display this
|
|
standard.
|
|
</para>
|
|
<para>
|
|
The X Window System configuration file is called (usually)
|
|
<filename>/etc/XF86Config</filename>,
|
|
<filename>/etc/X11/XF86Config</filename>, or
|
|
<filename>/usr/X11R6/lib/X11/XF86Config</filename>.
|
|
</para>
|
|
<para>
|
|
If you need to manually configure the X server, there are several
|
|
possible methods:
|
|
</para>
|
|
<itemizedlist>
|
|
<listitem><para>
|
|
Try to use the <command>XF86Setup</command> program, which
|
|
can help identify the
|
|
correct X server and monitor timings for the video hardware.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Make sure that the X server has the correct
|
|
options. If you log in as the superuser, you should be able to use
|
|
<literal>X --probeonly</literal> to get a listing of the video card
|
|
chipset, memory, and any special graphics features. Also, refer to the
|
|
manual page for the X server. (E.g.; <literal>man X</literal>), and
|
|
try running the X server and redirecting the standard error output to
|
|
a file so you can determine, after you can view text on the screen
|
|
again, what error messages the server is generating; e.g., <literal>X
|
|
2>x.error</literal>.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
With that information, you should be able to safely refer to one
|
|
of the references provided by the Linux Documentation Project.
|
|
("Where can I get the HOWTO's and other documentation? ")
|
|
There are several HOWTO's on the subject, including a HOWTO to
|
|
calculate video timings manually if necessary. Also, the
|
|
<citetitle>Installation and Getting Started</citetitle> guide
|
|
has a chapter with a step-by-step guide to writing a
|
|
<filename>XF86Config</filename> file.
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
<para>
|
|
Also, make sure that the problem really is an incorrect
|
|
<filename>XF86Config</filename>
|
|
file, not something else like the window manager failing to start. If
|
|
the X server is working correctly, you should be able to move the
|
|
mouse cursor on the screen, and pressing
|
|
<keycombo><keycap>Ctrl</keycap><keycap>Alt</keycap><keycap>Backspace</keycap></keycombo> will shut
|
|
down the X server and return to the shell prompt in one of the virtual
|
|
terminals.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="10.3">
|
|
<title id="ready-made-xf86config">
|
|
Where To Find a Ready-Made <filename>XF86Config</filename> file.</title>
|
|
<para>
|
|
If you can't seem to get X working using the guidelines above, refer
|
|
to the <citetitle>XFree86 HOWTO</citetitle>, recent versions of
|
|
<citetitle>Installation and
|
|
Getting Started</citetitle>, and the instructions for the
|
|
<filename>XF86Setup</filename> program.
|
|
|
|
The contents of the <filename>XF86Config</filename> file
|
|
depend on the your exact
|
|
combination of video card and monitor. It can either be configured by
|
|
hand, or using the <command>XF86Setup</command> utility.
|
|
Read the instructions that came
|
|
with XFree86, in <filename>/usr/X11R6/lib/X11/etc</filename>.
|
|
The file you probably need to
|
|
look at most is <filename>README.Config</filename>.
|
|
|
|
You should not use the sample <filename>XF86Config.eg</filename>
|
|
file which is included
|
|
with newer versions of XFree86 verbatim, because the wrong video clock
|
|
settings can damage your monitor.
|
|
|
|
Please don't post to <citetitle>comp.os.linux.x</citetitle>
|
|
asking for an <filename>XF86Config</filename>, and
|
|
please don't answer such requests.
|
|
|
|
If you have a laptop, look at the Linux Laptop Web page (``<xref
|
|
linkend="my-notebook-runs-linux" endterm="my-notebook-runs-linux">'')
|
|
Many of the installation notes also have the
|
|
<filename>XF86Config</filename> file for the display. If you have a
|
|
desktop machine, there are a few sample
|
|
<filename>XF86Config</filename> files at
|
|
<ulink url="ftp://metalab.unc.edu/">
|
|
<literal>ftp://metalab.unc.edu/</literal></ulink>. Refer
|
|
also to the <citetitle>XFree86 FAQ</citetitle>
|
|
<ulink url="http://www.xfree.org/FAQ/">
|
|
<literal>http://www.xfree.org/FAQ/</literal></ulink>
|
|
and the monitor timings list
|
|
<ulink url="http://www.xfree.org/#resources/">
|
|
<literal>http://www.xfree.org/#resources/</literal></ulink>, and in
|
|
the <filename>/usr/X11R6/lib/X11/</filename> directory of your X
|
|
distribution.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="10.4">
|
|
<title id="what-desktop-environments">
|
|
What Desktop Environments Run on Linux?</title>
|
|
<para>
|
|
Linux with XFree86 supports the KDE, GNOME, and commercial CDE desktop
|
|
environments, and extended window managers like WindowMaker. Each uses
|
|
a different set of libraries and provides varying degrees of MS
|
|
Windows-like look and feel.
|
|
</para>
|
|
<para>
|
|
Information on KDE is available from
|
|
<ulink url="http://www.kde.org/">
|
|
<literal>http://www.kde.org/</literal></ulink>. The KDE
|
|
environment uses the Qt graphics libraries, available from
|
|
<ulink url="http://www.qt.org/">
|
|
<literal>http://www.qt.org/</literal></ulink>. The desktop uses its
|
|
own window manager, kwm, and provides a MS Windows-like look and feel.
|
|
</para>
|
|
<para>
|
|
The GNOME home page is
|
|
<ulink url="http://www.gnome.org/">
|
|
<literal>http://www.gnome.org/</literal></ulink>. The environment
|
|
uses the free GTK libraries, available from
|
|
<ulink url="http://www.gtk.org/">
|
|
<literal>http://www.gtk.org/</literal></ulink>,
|
|
and window managers like Enlightenment,
|
|
<ulink url="http://www.enlightenment.org/">
|
|
<literal>http://www.enlightenment.org/</literal></ulink>,
|
|
SawFish, <ulink url="http://www.sawfish.org/">
|
|
<literal>http://www.sawfish.org/</literal></ulink>. There's
|
|
also a Web page for GNOME installation and upgrade that functions much
|
|
like Debian's <command>apt-get</command> utility with a friendly GUI
|
|
front end. It's at:
|
|
<ulink url="http://www.helixcode.com/desktop/">
|
|
<literal>http://www.helixcode/com/desktop/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
The commercial CDE environment uses the Motif libraries and a
|
|
variation of the Motif <command>mwm</command> window manager,
|
|
<command>dtwm</command>, and provides a suite of desktop and
|
|
session-management utilities. Several vendors have made the source
|
|
code of Motif available and provided binary packages for Linux
|
|
distributions. As a starting point, download and installation
|
|
information is available at <ulink
|
|
url="http://www.opengroup.org/openmotif/">
|
|
<literal>http://www.opengroup.org/openmotif/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
A free version of Motif, called LessTiF, is available from
|
|
<ulink url="http://www.lesstif.org/">
|
|
<literal>http://www.lesstif.org/</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
WindowMaker,
|
|
<ulink url="http://www.windowmaker.org/">
|
|
<literal>http://www.windowmaker.org/</literal></ulink>
|
|
is a window manager that
|
|
has many desktop environment-like features. It provides support for
|
|
GNUstep,
|
|
<ulink url="http://www.gnustep.org/">
|
|
<literal>http://www.gnustep.org/</literal></ulink>, a clone of the
|
|
commercial NeXTStep environment.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="10.5">
|
|
<title id="xterm-logins-show-strangely">
|
|
<command>xterm</command> Logins Show Up Strangely in
|
|
<command>who</command>, <command>finger</command>.</title>
|
|
<para>
|
|
The <command>xterm</command> that comes with XFree86 2.1 and
|
|
earlier doesn't correctly
|
|
understand the format that Linux uses for the
|
|
<filename>/var/adm/utmp</filename> file,
|
|
where the system records who is logged in. It therefore doesn't set
|
|
all the information correctly.
|
|
|
|
The <application>xterms</application> in XFree86 3.1 and later versions
|
|
fix this problem.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="10.6">
|
|
<title id="detach-xterm">
|
|
How to Start a X Client on Another Display.
|
|
</title>
|
|
<para>
|
|
To start a X client on another system that has a running X
|
|
server, use the following commands:
|
|
</para>
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>
|
|
Use <application>xhost</application> on the server system
|
|
to allow the client system use the display. If the server's
|
|
IP address is 192.168.20.1, enter the command:
|
|
<para>
|
|
<screen>
|
|
$ xhost + 192.168.20.1
|
|
</screen>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
On the client system, open a telnet connection to the server system.
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
In the telnet session, start a <application>xterm</application> in
|
|
the background with the <literal>-display</literal> and
|
|
<literal>-e</literal> options. For example, if the IP address of
|
|
the machine running the server is 192.168.20.1 and the client
|
|
program name is named ``clientapp,'' use the following command:
|
|
</para>
|
|
<para>
|
|
<screen>
|
|
$ xterm -display 192.168.20.1 -e clientapp &
|
|
</screen>
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
<para>
|
|
[Pierre Dal Farra]
|
|
</sect2>
|
|
|
|
</sect1>
|
|
|
|
<sect1 label="11">
|
|
<title>How to Get Further Assistance</title>
|
|
<sect2 label="11.1">
|
|
<title id="still-havent-answered">
|
|
If this Document Still Hasn't Answered Your Question....</title>
|
|
<para>
|
|
Please read all of this answer before posting. I know it's a bit long,
|
|
but you may be about to make a fool of yourself in front of 50,000
|
|
people and waste hundreds of hours of their time. Don't you think it's
|
|
worth spending some of your time to read and follow these
|
|
instructions?
|
|
</para>
|
|
<para>
|
|
If you think an answer is incomplete or inaccurate, please e-mail
|
|
Robert Kiesling at
|
|
<ulink url="mailto:rkiesling@mainmatter.com">
|
|
<literal>rkiesling@mainmatter.com</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
Read the appropriate Linux Documentation Project books. Refer to:
|
|
(``<xref linkend="howtos-and-other-documentation"
|
|
endterm="howtos-and-other-documentation">'')
|
|
</para>
|
|
<para>
|
|
If you're a Unix or Linux newbie, read the FAQ for
|
|
<citetitle>comp.unix.questions</citetitle>,
|
|
<citetitle>news.announces.newusers</citetitle>, and those for any of
|
|
the other <citetitle>comp.unix.*</citetitle> groups
|
|
that may be relevant.
|
|
</para>
|
|
<para>
|
|
Linux has so much in common with commercial unices, that almost
|
|
everything you read there will apply to Linux. The FAQ's, like all
|
|
FAQ's, be found on
|
|
<ulink url="ftp://rtfm.mit.edu/pub/usenet/">
|
|
<literal>ftp://rtfm.mit.edu/pub/usenet/</literal></ulink>
|
|
(the
|
|
<ulink url="mailto:mail-server@rtfm.mit.edu">
|
|
<literal>mail-server@rtfm.mit.edu</literal></ulink> can send
|
|
you these files, if you don't have FTP access). There are mirrors of
|
|
<literal>rtfm</literal>'s FAQ archives on various sites. Check the
|
|
Introduction to *.answers posting, or look in
|
|
<filename>news-answers/introduction</filename> in the directory above.
|
|
</para>
|
|
<para>
|
|
Check the relevant HOWTO for the subject in question, if there is one,
|
|
or an appropriate old style sub-FAQ document. Check the FTP sites.
|
|
</para>
|
|
<para>
|
|
Try experimenting—that's the best way to get to know Unix and Linux.
|
|
</para>
|
|
<para>
|
|
Read the documentation. Check the manual pages (type
|
|
<literal>man man</literal> if
|
|
you don't know about manual pages. Also try
|
|
<literal>man -k subject</literal> and <literal>apropos subject</literal>. They
|
|
often list useful and relevant, but not very obvious, manual pages.
|
|
</para>
|
|
<para>
|
|
Check the Info documentation (type
|
|
<keycombo><keycap>F1</keycap><keycap>i</keycap></keycombo>,
|
|
i.e. the <keycap>F1</keycap> function key followed by ``i''
|
|
in Emacs). This isn't just for Emacs. For example, the GCC
|
|
documentation lives here as well.
|
|
</para>
|
|
<para>
|
|
There will also often be a <filename>README</filename>
|
|
file with a package that gives
|
|
installation and/or usage instructions.
|
|
</para>
|
|
<para>
|
|
Make sure you don't have a corrupted or out-of-date copy of the
|
|
program in question. If possible, download it again and re-install
|
|
it—you probably made a mistake the first time.
|
|
</para>
|
|
<para>
|
|
Read <citetitle>comp.os.linux.announce</citetitle>. It often
|
|
contains very important information for all Linux users.
|
|
|
|
General X Window System questions belong in
|
|
<citetitle>comp.windows.x.i386unix</citetitle>,
|
|
not in <citetitle>comp.os.linux.x</citetitle>.
|
|
But read the group first (including the FAQ),
|
|
before you post.
|
|
|
|
Only if you have done all of these things and are still stuck, should
|
|
you post to the appropriate <citetitle>comp.os.linux.*</citetitle>
|
|
newsgroup. Make sure you
|
|
read the next question first. "( What to put in a request for
|
|
help. )"
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="11.2">
|
|
<title id="what-in-request-help.">
|
|
What to Put in a Request for Help.</title>
|
|
<para>
|
|
Please read the following advice carefully about how to write your
|
|
posting or E-mail. Making a complete posting will greatly increase the
|
|
chances that an expert or fellow user reading it will have enough
|
|
information and motivation to reply.
|
|
</para>
|
|
<para>
|
|
This advice applies both to postings asking for advice and to personal
|
|
E-mail sent to experts and fellow users.
|
|
</para>
|
|
<para>
|
|
Make sure you give full details of the problem, including:
|
|
</para>
|
|
<itemizedlist>
|
|
<listitem><para>
|
|
What program, exactly, you are having problems with. Include the
|
|
version number if known and say where you got it. Many standard
|
|
commands tell you their version number if you give them a
|
|
<literal>--version</literal> option.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Which Linux release you're using (Red Hat, Slackware, Debian, or
|
|
whatever) and what version of that release.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
The exact and complete text of any error messages printed.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Exactly what behavior you expected, and exactly what behavior you
|
|
observed. A transcript of an example session is a good way to show
|
|
this.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
The contents of any configuration files used by the program in
|
|
question and any related programs.
|
|
</para></listitem>
|
|
<listitem><para>
|
|
What version of the kernel and shared libraries you have
|
|
installed. The kernel version can be found by typing
|
|
``<literal>uname -a</literal>,'' and
|
|
the shared library version by typing
|
|
``<literal>ls -l /lib/libc*</literal>.''
|
|
</para></listitem>
|
|
<listitem><para>
|
|
Details of what hardware you're running on, if it seems
|
|
appropriate.
|
|
</para></listitem>
|
|
</itemizedlist>
|
|
<para>
|
|
You are in little danger of making your posting too long unless you
|
|
include large chunks of source code or uuencoded files, so err on the
|
|
side of giving too much information.
|
|
</para>
|
|
<para>
|
|
Use a clear, detailed Subject line. Don't put things like ``doesn't
|
|
work,'' ``Linux,'' ``help,'' or ``question'' in it—we already know that.
|
|
Save the space for the name of the program, a fragment of an error
|
|
message, or summary of the unusual behavior.
|
|
</para>
|
|
<para>
|
|
Put a summary paragraph at the top of your posting.
|
|
</para>
|
|
<para>
|
|
At the bottom of your posting, ask for responses by email and say
|
|
you'll post a summary. Back this up by using
|
|
``<literal>Followup-To: poster</literal>.''
|
|
Then, actually post the summary in a few days or a week or so. Don't
|
|
just concatenate the replies you got—summarize. Putting the word
|
|
``SUMMARY'' in your summary's Subject line is also a good idea. Consider
|
|
submitting the summary to <citetitle>comp.os.linux.announce</citetitle>.
|
|
</para>
|
|
<para>
|
|
Make sure your posting doesn't have an inappropriate References:
|
|
header line. This marks your article as part of the thread of the
|
|
article referred to, which will often cause it to be junked by
|
|
readers, along with the rest of a boring thread.
|
|
</para>
|
|
<para>
|
|
You might like to say in your posting that you've read this FAQ and
|
|
the appropriate HOWTO's—this may make people less likely to skip your
|
|
posting.
|
|
</para>
|
|
<para>
|
|
Remember that you should not post E-mail sent to you personally without
|
|
the sender's permission.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="11.3">
|
|
<title id="mail-someone-about-problem.">
|
|
How To Email Someone about Your Problem.</title>
|
|
<para>
|
|
Try to find the author or developer of whatever program or component
|
|
is causing you difficulty. If you have a contact point for your Linux
|
|
distribution, you should use it.
|
|
</para>
|
|
<para>
|
|
Please put everything in your E-mail message that you would put in a
|
|
posting asking for help.
|
|
</para>
|
|
<para>
|
|
Finally, remember that, despite the fact that most of the Linux
|
|
community are very helpful and responsive to E-mailed questions,
|
|
you're likely asking for help from unpaid volunteers, so you have no
|
|
right to expect an answer.
|
|
</para>
|
|
</sect2>
|
|
</sect1>
|
|
|
|
<sect1 label="12">
|
|
<title>Acknowledgments and Administrivia</title>
|
|
<sect2 label="12.1">
|
|
<title id="feedback-is-invited">Where To Send Comments.</title>
|
|
<para>
|
|
Please send comments to the maintainer:
|
|
<literal>rkiesling@mainmatter.com</literal>.
|
|
</para>
|
|
<para>
|
|
Contributions to the FAQ may be in any format.
|
|
Comments and corrections are gratefully received. Again, that email
|
|
address is: <literal>rkiesling@mainmatter.com</literal>.
|
|
</para>
|
|
<para>
|
|
If you wish to refer to a question in the FAQ, it's better to
|
|
do so by the question heading instead of number. The question
|
|
numbers are generated automagically, and I don't see them in the
|
|
source file.
|
|
</para>
|
|
<para>
|
|
I prefer comments in English to patch files—context diff is not my
|
|
first language.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="12.2">
|
|
<title id="formats-which-faq">
|
|
Formats in Which This FAQ Is Available.</title>
|
|
<para>
|
|
This document is available as an ASCII text file, an HTML World Wide
|
|
Web page, Postscript, PDF, and as a USENET news posting.
|
|
</para>
|
|
<para>
|
|
Section and item numbers are generated with Perl.
|
|
HTML is generated from SGML source using the Jade DSSSL interpreter by
|
|
James Clark. Text versions are generated using
|
|
<application>lynx</application> and edited with <command>sed</command>,
|
|
which are part of most Linux distributions.
|
|
</para>
|
|
<para>
|
|
The Usenet version is posted regularly to
|
|
<citetitle>news.answers</citetitle>, <citetitle>comp.answers</citetitle>,
|
|
and <citetitle>comp.os.linux.misc</citetitle>. It is archived at
|
|
<ulink url="ftp://rtfm.mit.edu/pub/usenet-by-hierarchy/comp/os/linux/misc/">
|
|
<literal>ftp://rtfm.mit.edu/pub/usenet-by-hierarchy/comp/os/linux/misc/
|
|
</literal></ulink>.
|
|
</para>
|
|
<para>
|
|
For Postscript and PDF versions, please contact the FAQ maintainer.
|
|
</para>
|
|
<para>
|
|
If you would like to receive the archived version of the FAQ by
|
|
E-mail, send the following in the body of an E-mail message to
|
|
<ulink url="mailto:mail-server@rtfm.mit.edu">
|
|
<literal>mail-server@rtfm.mit.edu</literal></ulink>:
|
|
</para>
|
|
<para><screen>
|
|
send faqs/linux/faq
|
|
</screen></para>
|
|
<para>
|
|
Text, HTML, and SGML versions are available from the
|
|
Linux archives at metalab.unc.edu, and from
|
|
<ulink url="http://www.linuxdoc.org/">
|
|
<literal>http://www.linuxdoc.org/</literal></ulink>,
|
|
but they may be out of date, owing
|
|
to lack of time on the LDP maintainers' parts.
|
|
</para>
|
|
<para>
|
|
The latest text and HTML versions are available at
|
|
<ulink url="http://www.mainmatter.com/">
|
|
<literal>http://www.mainmatter.com</literal></ulink>
|
|
and directly from the FAQ maintainer,
|
|
<ulink url="mailto:rkiesling@mainmatter.com">
|
|
<literal>rkiesling@mainmatter.com</literal></ulink>.
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="12.3">
|
|
<title id="authorship-and-acknowledgments">
|
|
Authorship and Acknowledgments.</title>
|
|
<para>
|
|
This FAQ is compiled and maintained by Robert Kiesling,
|
|
<ulink url="mailto:rkiesling@mainmatter.com">
|
|
<literal>rkiesling@mainmatter.com</literal></ulink>,
|
|
with assistance and comments from Linux activists all over the world.
|
|
</para>
|
|
<para>
|
|
Freddy Contreras, <literal>the_blur_oc@hotmail.com</literal>,
|
|
designed and GPL'd the Linux Frequently Asked Questions logos
|
|
that appear on <literal>www.mainmatter.com</literal>.
|
|
</para>
|
|
<para>
|
|
Special thanks are due to Matt Welsh, who moderated
|
|
<citetitle>comp.os.linux.announce</citetitle> and
|
|
<citetitle>comp.os.linux.answers</citetitle>, coordinated the
|
|
HOWTO's and wrote substantial portions of many of them, Greg Hankins
|
|
the former Linux Documentation Project HOWTO maintainer, Lars
|
|
Wirzenius and Mikko Rauhala, the former and current moderators of
|
|
<citetitle>comp.os.linux.announce</citetitle>,
|
|
Marc-Michel Corsini, who wrote the original
|
|
Linux FAQ, and Ian Jackson, the previous FAQ maintainer. Thanks also
|
|
to Roman Maurer for his many updates and additions, especially with
|
|
European Web sites, translations, and general miscellany.
|
|
</para>
|
|
<para>
|
|
Last but not least, thanks to Linus Torvalds and the other
|
|
contributors to Linux for giving us something to talk about!
|
|
</para>
|
|
</sect2>
|
|
|
|
<sect2 label="12.4">
|
|
<title id="disclaimer">Disclaimer and Copyright.</title>
|
|
<para>
|
|
Linux Frequently Asked Questions with Answers may be reproduced and
|
|
distributed in its entirety (including this authorship, copyright, and
|
|
permission notice), provided that no charge is made for the document
|
|
itself, without the author's consent. This includes ``fair use''
|
|
excerpts like reviews and advertising, and derivative works like
|
|
translations.
|
|
</para>
|
|
<para>
|
|
Note that this restriction is not intended to prohibit charging for
|
|
the service of printing or copying the document.
|
|
</para>
|
|
<para>
|
|
These conditions are in addition to the regular LDP distribution
|
|
license, at <ulink url="http://www.linuxdoc.org/manifesto.html/">
|
|
<literal>http://www.linuxdoc.org/manifesto.html/</literal></ulink>
|
|
</para>
|
|
<para>
|
|
Exceptions to these rules may be granted. I would be happy to answer
|
|
any questions regarding this copyright. E-mail me at
|
|
<ulink url="mailto:rkiesling@mainmatter.com">
|
|
<literal>rkiesling@mainmatter.com</literal></ulink>.
|
|
As the license, referred to above, says, these
|
|
restrictions are here to protect the contributors, not to restrict you
|
|
as educators and learners.
|
|
</para>
|
|
</sect2>
|
|
</sect1>
|
|
</article>
|
|
|