home *** CD-ROM | disk | FTP | other *** search
- <!DOCTYPE LINUXDOC SYSTEM>
- <article>
-
- <title>Linux Frequently Asked Questions with Answers
- <author>Robert Kiesling, kiesling@ix.netcom.com
- <date>October 4, 1998
- <abstract>
- This is the list of Frequently Asked Questions for Linux, the free
- Unix for just about every computer hardware platform on the planet.
- Originally written for 386/486/586 Intel/ISA bus machines, versions
- exist for Alpha, MIPS, ARM, 680x0, and PPC processors, and many
- others. (See the question, ``<ref id="What is Linux?">'' below.) This
- document should be read in conjunction with the Linux Documentation
- Project's HOWTO series. (``<ref id="Where can I get Linux material by
- FTP?">'' and, ``<ref id="Where can I get the HOWTO's and other
- documentation?">'') The <tt>INFO-SHEET</tt> and <tt>META-FAQ</tt>,
- which are found in the same place, also list sources of Linux
- information. Please look at these documents, and, ``<ref id="You
- still haven't answered my question!">'' before posting to a Usenet
- news group. You can also get Postscript, HTML, SGML, and plain ASCII
- versions of this document. (``<ref id="Formats in which this FAQ is
- available.">'')
- </abstract>
- <toc>
-
- <sect>Introduction and General Information <label id="Introduction and General Information">
- <P>
- <sect1>What is Linux? <label id="What is Linux?">
- <P>
- Linux is the free Unix written from scratch by Linus Torvalds with
- assistance from a loosely-knit team of hackers from across the
- Internet. Linux aims towards POSIX compliance, and has all of the
- features you would expect of a modern, fully fledged Unix: true
- multitasking, virtual memory, shared libraries, demand loading,
- shared, copy-on-write executables, proper memory management, and
- TCP/IP networking.
-
- Linux runs mainly on 386/486/586-based PC's, using the hardware
- facilities of the 80386 processor family (TSS segments, et al.) to
- implement these features. Ports to other architectures are
- underway. (See, ``<ref id="What ports to other processors are
- there?">'')
-
- See the Linux <tt>INFO-SHEET</tt> for more details. (``<ref id="Where can
- I get the HOWTO's and other documentation?">'')
-
- The Linux kernel is distributed under the GNU General Public
- License. (``<ref id="Is Linux public domain? Copyrighted?">'')
-
- -------------------------------------------------------------------------------
- <sect1>Where do I start? <label id="Where do I start?">
- <P>
- There are a handful of major Linux distributions. For information
- about them, and how they are installed, see Matthew Welsh's
- <em>Installation and Getting Started</em>, or IGS for short. It's
- located at the Linux Documentation Project Home Page, <htmlurl
- url="http://sunsite.unc.edu/LDP" name="http://sunsite.unc.edu/LDP">.
-
- There is also an Installation HOWTO on the LDP Home Page.
-
- Most of the distributions are available via anonymous FTP from various
- Linux archive sites. (``<ref id="Where can I get Linux material by
- FTP?">'') There are also a large number of other releases which are
- distributed less globally that suit special local and national needs.
-
- -------------------------------------------------------------------------------
-
- <sect1>What software does Linux support? <label id="What software does Linux support?">
- <P>
- Linux supports GCC, 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.
-
- There is a DOS emulator, called DOSEMU. The latest stable release is
- 0.98.1. The FTP archives are at <htmlurl
- url="ftp://ftp.dosemu.org/dosemu" name="ftp://ftp.dosemu.org/dosemu">.
- The Web site is htmlurl url="http://www.dosemu.org"
- name="http://www.dosemu.org">.
-
- The emulator can run DOS itself and some (but not all) DOS
- applications. Be sure to look at the <tt>README</tt> file to
- determine which version you should get. Also, see the
- <tt>DOSEMU-HOWTO</tt> (slightly dated at this point--it doesn't cover
- the most recent version of the program), at <htmlurl
- url="ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO"
- name="sunsite.unc.edu/pub/Linux/docs/HOWTO">.
-
- Work has been progressing on an emulator for Microsoft Windows binaries.
- (``<ref id="Can I run Microsoft Windows programs under Linux?">'')
-
- 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
- <htmlurl
- url="ftp://tsx-11.mit.edu/pub/linux/BETA/ibcs2/README" name="tsx-11.mit.edu/pub/linux/BETA/ibcs2/README">.
-
- For more information see the <tt>INFO-SHEET</tt>, which is one of the
- HOWTO's (``<ref id="Where can I get the HOWTO's and other
- documentation?">'' and, ``<ref id="How do I port XXX to
- Linux?">'')
-
- Some companies have commercial software available, including Motif. They
- announce their availability in comp.os.linux.announce--try searching
- the archives. (``<ref id="Are the newsgroups archived anywhere?">'')
-
- -------------------------------------------------------------------------------
-
- <sect1>Does Linux run on my computer? What hardware is supported? <label
- id="Does Linux run on my computer? What hardware is supported?">
- <P>
- Giving Linux a try requires a machine with an Intel '386, '486, or
- '586 processor with at least 2Mb of RAM and a single floppy drive. To
- do anything useful, more RAM and disk space is needed. (``<ref
- id="How much memory does Linux need?">'')
-
- VESA Local Bus and PCI are supported.
-
- 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, <htmlurl
- url="http://glycerine.itsmm.uni.edu/mca"
- name="http://glycerine.itsmm.uni.edu/mca">.
-
- Linux runs on '386 family based laptops, with X on most of them. There
- is a Web page at <htmlurl
- url="http://www.cs.utexas.edu/users/kharker/linux-laptop/"
- name="http://www.cs.utexas.edu/users/kharker/linux-laptop/">.
-
- For details of exactly which PC's, video cards, disk controllers, etc.
- work see the <tt>INFO-SHEET</tt> and the <tt>Hardware-HOWTO</tt>.
- (See ``<ref id="Where can I get the HOWTO's and other
- documentation?">'')
-
- 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. See <htmlurl
- url="http://www.linux.org.uk/Linux8086.html"
- name="http://www.linux.org.uk/Linux8086.html"> for more information.
- Linux will never run fully on an 8086 or '286, because it requires
- task-switching and memory management facilities not found on these
- processors.
-
- Linux supports multiprocessing with Intel MP architecture. See the
- file <tt>Documentation/smp.tex</tt> in the Linux kernel source code
- distribution.
-
- See the next question for a (probably incomplete) list of hardware
- platforms Linux has been ported to.
-
- -------------------------------------------------------------------------------
-
- <sect1>What ports to other processors are there? <label id="What ports to other processors are there?">
- <P>
- There is a reasonably complete list of Linux ports at
- <htmlurl url="http://www.ctv.es/USERS/xose/linux/linux_ports.html"
- name="http://www.ctv.es/USERS/xose/linux/linux_ports.html">, and at
- <htmlurl url="http://www.linuxhq.com/dist-index.html"
- name="http://www.linuxhq.com/dist-index.html">.
-
- 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 <htmlurl
- url="http://www.clark.net/pub/lawrencc/linux/faq/faq.html"
- name="www.clark.net/pub/lawrencc/linux/faq/faq.html">. The URL of the
- Linux/m68k home page is <htmlurl url="http://www.linux-m68k.org"
- name="www.linux-m68k">.
-
- There is a linux-680x0 mailing list. (``<ref id="What mailing
- lists are there?">'')
-
- There is (or was) a FTP site for the Linux-m68k project on <htmlurl
- url="ftp://ftp.phil.uni-sb.de/pub/atari/linux-68k"
- name="ftp.phil.uni-sb.de/pub/atari/linux-68k">, but this address may
- no longer be current.
-
- Debian GNU/Linux is being ported to Alpha, Sparc, PowerPC, and ARM
- platforms. There are mailing lists for all of them. See
- <htmlurl url="http://www.debian.org/MailingLists/subscribe"
- name="http://www.debian.org/MailingLists/subscribe">.
-
- One of the Linux-PPC project pages has moved recently. Its location
- is <htmlurl url="http://www.linuxppc.org"
- name="http://www.linuxppc.org">, and the archive site is <htmlurl
- url="ftp://ftp.linuxppc.org/linuxppc"
- name="ftp.linuxppc.org/linuxppc">.
-
- There is a Linux-PPC support page at <htmlurl
- url="http://www.cs.nmt.edu/~linuxppc/"
- name="www.cs.nmt.edu/˜linuxppc/">. There you will find the kernel that
- is distributed with Linux.
-
- Apple now supports MkLinux development on Power Macs, based on OSF and
- the Mach microkernel. See <htmlurl url="http://www.mklinux.apple.com"
- name="http://www.mklinux.apple.com">.
-
- A port to the 64-bit DEC Alpha/AXP is at <htmlurl
- url="http://www.azstarnet.com/~axplinux/"
- name="http://www.azstarnet.com/˜axplinux/">. There is a mailing list
- at vger.rutgers.edu. (``<ref id="What mailing lists are
- there?">'')
-
-
- Ralf Baechle is working on a port to the MIPS, initially for the R4600
- on Deskstation Tyne machines. The Linux-MIPS FTP sites are <htmlurl
- url="ftp://ftp.fnet.fr/linux-mips" name="ftp.fnet.fr/linux-mips"> and
- <htmlurl url="ftp://ftp.linux.sgi.com/pub/mips-linux"
- name="ftp://ftp.linux.sgi.com/pub/mips-linux">. Interested people may
- mail their questions and offers of assistance to <htmlurl
- url="mailto:linux@waldorf-gmbh.de" name="linux@waldorf-gmbh.de">.
-
- There is also a MIPS channel on the Linux Activists mail server and a
- linux-mips mailing list. (``<ref id="What mailing lists are
- there?">'')
-
- 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.
-
- For more, up-to-date information, read the newsgroup
- <tt>comp.sys.acorn.misc</tt>. There is a FAQ at <htmlurl
- url="http://www.arm.uk.linux.org"
- name="http://www.arm.uk.linux.org">
-
- The Linux SPARC project is a hotbed of activity. There is a FAQ
- available from Jim Mintha's Linux for SPARC Processors page, <htmlurl
- url="http://www.geog.ubc.ca/sparclinux.html"
- name="http://www.geog.ubc.ca/sparclinux.html">. The SPARC/Linux
- archives are at <htmlurl url="ftp://vger.rutgers.edu/pub/linux/Sparc"
- name="vger.rutgers.edu/pub/linux/Sparc">.
-
- There is also a port (``Hardhat'') to SGI/Indy machines. The URL is
- <htmlurl url="http://www.linux.sgi.com"
- name="http://www.linux.sgi.com">.
-
- -------------------------------------------------------------------------------
-
- <sect1>How much hard disk space does Linux need? <label id="How much hard disk space does Linux need?">
- <P>
- About 10Mb for a very minimal installation, suitable for trying Linux, and not
- much else.
-
- You can fit an installation that includes X into 80Mb. Installing
- Debian GNU/Linux takes 500Mb--1GB, including kernel source code, some
- space for user files, and spool areas.
-
- -------------------------------------------------------------------------------
-
- <sect1>How much memory does Linux need? <label id="How much memory
- does Linux need?">
- <P>
- 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 X Windows Apps will run slowly
- because they need to swap out to disk.
-
- Some recent applications, like Netscape, require 64MB of physical
- memory.
-
- -------------------------------------------------------------------------------
-
- <sect1>How much memory can Linux use? <label id="How much memory can
- Linux use?">
- <P>
- A number of people have asked how to address more than 64 MB of
- memory, which is the default upper limit. Place the following in your
- lilo.conf file:
- <verb>
- append="mem=XXM"
- </verb>
- Where "XX" is the amount of memory, specified as
- megabytes; for example, '128M'. For further details, see the lilo
- manual page.
-
- -------------------------------------------------------------------------------
-
- <sect1>Is Linux public domain? Copyrighted? <label id="Is Linux public domain? Copyrighted?">
- <P>
- The Linux kernel copyright belongs to Linus Torvalds. He has placed
- it 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.
-
- This is not the same as Public Domain. See the Copyright FAQ, <htmlurl
- url="rtfm.mit.edu/pub/usenet/news.answers/law/copyright"
- name="rtfm.mit.edu/pub/usenet/news.answers/law/copyright">, for
- details.
-
- Full details are in the file <tt>COPYING</tt> in the Linux kernel
- sources (probably in <tt>/usr/src/linux</tt> on your system).
-
- 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.
-
- Note that discussion about the merits or otherwise of the GPL should
- be posted to the news group <tt>gnu.misc.discuss</tt>, and not to the
- <tt>comp.os.linux</tt> hierarchy.
-
- ===============================================================================
-
- <sect>Network sources and resources. <label id="Network sources and resources.">
- <P>
- -------------------------------------------------------------------------------
-
- <sect1>Where can I get the HOWTO's and other documentation? <label id="Where can I get the HOWTO's and other documentation?">
- <P>
- Look in the following places, and the sites that mirror them.
- <itemize>
- <item><htmlurl url="ftp://ftp.funet.fi/pub/OS/Linux/doc/HOWTO"
- name="ftp.funet.fi : /pub/OS/Linux/doc/HOWTO">
- <item><htmlurl url="ftp://tsx-11.mit.edu/pub/linux/docs/HOWTO"
- name="tsx-11.mit.edu : /pub/linux/docs/HOWTO">
- <item><htmlurl url="ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO"
- name="sunsite.unc.edu : /pub/Linux/docs/HOWTO">
- </itemize>
- For a complete list of Linux FTP sites, see, ``<ref id="Where can I get Linux
- material by FTP?">''
-
- If you don't have access to FTP, try the FTP-by-mail servers at
- <htmlurl url="mailto:ftpmail@decwrl.dec.com"
- name="ftpmail@decwrl.dec.com">, <htmlurl
- url="mailto:ftpmail@doc.ic.ac.uk" name="ftpmail@doc.ic.ac.uk">, or
- <htmlurl url="mailto:ftp-mailer@informatik.tu-meunchen.de"
- name="ftp-mailer@informatik.tu-muenchen.de">.
-
- A complete list of HOWTO's and Mini-HOWTO's is available in the file
- <tt>HOWTO-INDEX</tt> in the <tt>docs/HOWTO</tt> directory at the FTP
- sites, and on the Web at <htmlurl
- url="http://sunsite.unc.edu/LDP/HOWTO/HOWTO-INDEX.html"
- name="http://sunsite.unc.edu/LDP/HOWTO/HOWTO-INDEX.html">, but
- here is a (possibly incomplete) list:
- <verb>
- AX25-HOWTO Access-HOWTO
- Assembly-HOWTO Benchmarking-HOWTO
- BootPrompt-HOWTO Bootdisk-HOWTO
- CD-Writing-HOWTO CDROM-HOWTO
- Chinese-HOWTO Commercial-HOWTO
- Consultants-HOWTO Cyrillic-HOWTO
- DNS-HOWTO DOS-to-Linux-HOWTO
- DOSEMU-HOWTO Danish-HOWTO
- Distribution-HOWTO ELF-HOWTO
- Emacspeak-HOWTO Ethernet-HOWTO
- Finnish-HOWTO Firewall-HOWTO
- Ftape-HOWTO GCC-HOWTO
- German-HOWTO HAM-HOWTO
- HOWTO-INDEX Hardware-HOWTO
- Hebrew-HOWTO IPX-HOWTO
- ISP-Hookup-HOWTO Installation-HOWTO
- Intranet-Server-HOWTO Italian-HOWTO
- Java-CGI-HOWTO Kernel-HOWTO
- Keyboard-and-Console-HOWTO MGR-HOWTO
- MILO-HOWTO Mail-HOWTO
- NET-3-HOWTO NFS-HOWTO
- NIS-HOWTO News-HOWTO
- Optical-Disk-HOWTO PCI-HOWTO
- PCMCIA-HOWTO PPP-HOWTO
- Pilot-HOWTO Polish-HOWTO
- Printing-HOWTO Printing-Usage-HOWTO
- RPM-HOWTO Reading-List-HOWTO
- SCSI-HOWTO SCSI-Programming-HOWTO
- SMB-HOWTO Serial-HOWTO
- Serial-Programming-HOWTO Shadow-Password-HOWTO
- Slovenian-HOWTO Sound-HOWTO
- Sound-Playing-HOWTO Spanish-HOWTO
- TeTeX-HOWTO Thai-HOWTO
- Tips-HOWTO UMSDOS-HOWTO
- UPS-HOWTO UUCP-HOWTO
- User-Group-HOWTO VAR-HOWTO
- VMS-to-Linux-HOWTO XFree86-HOWTO
- XFree86-Video-Timings-HOWTO
- 3-Button-Mouse
- </verb>
- The following Mini-HOWTO's are available from <htmlurl
- url="http://sunsite.unc.edu/pub/Linux/HOWTO/mini"
- name="http://sunsite.unc.edu/pub/Linux/HOWTO/mini">:
- <verb>
- ADSM-Backup AI-Alife
- Advocacy Backup-With-MSDOS
- Battery-Powered Boca
- BogoMips Bridge
- Bridge+Firewall Clock
- Colour-ls Comeau-C++
- DHCPd Dial-On-Demand
- Diald Dip+SLiRP+CSLIP
- Diskless Dynamic-IP-Hacks
- Ext2fs-Undeletion GTEK-BBS-550
- HTML-Validation IO-Port-Programming
- IP-Alias IP-Masquerade
- IP-Subnetworking JE
- Jaz-Drive Kerneld
- Key-Setup LBX
- Large-Disk Linux+DOS+Win95
- Linux+DOS+Win95+OS2 Linux+NT-Loader
- Linux+OS2+DOS Linux+Win95
- Loadlin+Win95 Locales
- MIDI+SB Mail-Queue
- Mail2News Man-Page
- Multiple-Disks-Layout Multiple-Ethernet
- NFS-Root NFS-Root-Client
- Netscape+Proxy Offline-Mailing
- Online-Support PLIP
- PPP-over-minicom Pager
- Partition Print2Win
- Process-Accounting Proxy-ARP
- Public-Web-Browser Qmail+MH
- Quota RCS
- Remote-Boot Remote-X-Apps
- SLIP+proxyARP SLIP-PPP-Emulator
- Sendmail+UUCP Software-Building
- Software-RAID Soundblaster-16
- Soundblaster-AWE64 StarOffice
- Swap-Space Term-Firewall
- Tiny-News Token-Ring
- Upgrade VPN
- Virtual-wu-ftpd Visual-Bell
- Win95+Win+Linux Windows-Modem-Sharing
- WordPerfect X-Big-Cursor
- XFree86-XInside Xterm-Title
- Xterminal ZIP-Drive
- ZIP-Install
- </verb>
-
- In addition, translations of the HOWTO's are available from <htmlurl
- url="ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/translations"
- name="sunsite.unc.edu/pub/Linux/docs/HOWTO/translations"> and mirrors
- worldwide. Translations in the following languages are available:
-
- <verb>
- Chinese (zh) Croatian(hr)
- French (fr) German (de)
- Hellenic (el) Indonesian (id)
- Italian (it) Japanese (jp)
- Korean (ko) Polish (pl)
- Spanish (es) Slovenian (sl)
- Swedish (sv) Turkish (tr)
- </verb>
-
- The HOWTO's are also on the Web, at the Linux Documentation Project's
- Home Page, <htmlurl url="http://sunsite.unc.edu/LDP"
- name="http://sunsite.unc.edu/LDP">.
-
- More of these documents are always in preparation. Please get in
- touch with Timothy Bynum, <htmlurl url="mailto:tjbynum@sunsite.unc.edu"
- name="tjbynum@sunsite.unc.edu">, the HOWTO coordinator, if you are
- interested in writing one. The file <htmlurl
- url="ftp://sunsite.unc.edu/pub/Linux/HOWTO/HOWTO-INDEX"
- name="sunsite.unc.edu/pub/Linux/HOWTO/HOWTO-INDEX"> contains
- guidelines for writing a HOWTO. He has a Web page that lists current
- HOWTO updates and additions at <htmlurl
- url="wallybox.cei.net/~tjbynum/HOWTO/projects"
- name="wallybox.cei.net/~tjbynum/HOWTO/projects">.
-
- The Guide Series produced by the Linux Documentation Project is
- available from <htmlurl url="http://sunsite.unc.edu/LDP"
- name="http://sunsite.unc.edu/LDP">. Please read them if you are new
- to Unix and Linux. Here is a list of those available so far:
-
- <itemize>
- <item><htmlurl url="http://sunsite.unc.edu/LDP/LDP-Manifesto"
- name="The Linux Documentation Project Manifesto">, by Matt Welsh.
- <item><htmlurl url="http://sunsite.unc.edu/LDP/gs/gs.html"
- name="Installation and Getting Started Guide">, by Matt Welsh.
- <item><htmlurl
- url="ftp://sunsite.unc.edu/pub/Linux/docs/linux-doc-project/linux-kernel"
- name="The Linux Kernel">, by David Rusling. <item><htmlurl
- url="http://sunsite.unc.edu/LDP/nag/nag.html" name="The Network
- Administrator's Guide">, by Olaf Kirch.
- <item><htmlurl url="http://linuxwww.db.erau.edu/LPG/" name="The Linux
- Programmer's Guide">, by Sven Goldt, Sven van der Meer, Scott Burkett,
- and Matt Welsh.
- <item><htmlurl url="http://sunsite.unc.edu/LDP/LDP/sag-0.5" name="The
- Linux System Administrator's Guide, Version 0.5">, by Lars Wirzenius.
- </itemize>
-
- In addition, there is a FAQ for Linux kernel developers at <htmlurl
- url="http://www.tux.org/lkml/" name="http://www.tux.org/html/">.
-
- -------------------------------------------------------------------------------
-
- <sect1>Where should I look on the World Wide Web for Linux stuff? <label id="Where should I look on the World Wide Web for Linux stuff?">
- <P>
-
- Two Web pages in particular provide good starting point for general
- Linux information: Linux International's Home Page, at <htmlurl
- url="http://www.li.org" name="http://www.li.org">, and the Linux
- Online's Linux Home Page at <htmlurl url="http://www.linux.org"
- name="http://www.linux.org/">.
-
- Both of these pages provide links to other sites, information about
- general information, distributions, new software, documentation, and
- news.
-
- Greg Hankins, <htmlurl url="mailto:gregh@cc.gatech.edu"
- name="gregh@cc.gatech.edu">, maintains the Linux Documentation Project
- Home Page, at <htmlurl url="http://sunsite.unc.edu/LDP"
- name="http://sunsite.unc.edu/LDP">. This page refers to all of the
- HOWTO's and FAQ's, both those which are available in HTML (WWW)
- format, and those which aren't.
-
-
-
- -------------------------------------------------------------------------------
-
- <sect1>What newsgroups are there for Linux? <label id="What newsgroups are there for Linux?">
- <P>
- <tt>Comp.os.linux.announce</tt> 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 ONLY newsgroup that may carry
- commercial postings. Submissions for that group should be e-mailed to
- <htmlurl url="mailto:linux-announce@news.ornl.gov"
- name="linux-announce@news.ornl.gov">.
-
- <tt>comp.os.linux.announce</tt>, however, is not archived on DejaNews
- or Alta Vista. The only archive for the news group seems to be
- <htmlurl url="http://www.iki.fi/mjr/linux/cola.html"
- name="www.iki.fi/mjr/linux/cola.html">.
-
- [Axel Boldt]
-
- Also worth reading are the following other groups in the
- <tt>comp.os.linux.*</tt> hierarchy--you may find many common
- problems too recent for the documentation but are answered in the
- newsgroups.
- <verb>
- comp.os.linux.setup
- comp.os.linux.hardware
- comp.os.linux.networking
- comp.os.linux.x
- comp.os.linux.development.apps
- comp.os.linux.development.system
- comp.os.linux.advocacy
- comp.os.linux.misc
- </verb>
-
- Remember that Linux is POSIX compatible, and most all of the
- material in <tt>comp.unix.*</tt> and <tt>comp.windows.x.*</tt> 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.
-
- Please read ``<ref id="You still haven't answered my question!">''
- before posting. Cross posting between different
- <tt>comp.os.linux.*</tt> groups is rarely a good idea.
-
- There may well be Linux groups local to your institution or area--check
- there first.
-
- See also ``<ref id="I don't have Usenet access. Where do I get
- information?">''
-
- Other regional and local newsgroups also exist--you may find the
- traffic more manageable there. The French Linux newsgroup is
- <tt>fr.comp.os.linux</tt>. The German one is
- <tt>de.comp.os.linux</tt>. In Australia, try
- <tt>aus.computers.linux</tt>. In Croatia there is
- <tt>hr.comp.linux</tt>. In Italy, there is <tt>it.comp.linux</tt>.
-
- -------------------------------------------------------------------------------
- <sect1>Where can I find out about Linux and the Millennium (Y2K) bug? <label
- id="Where can I find out about Linux and the Millennium (Y2K) bug?">
- <P>
- The Debian/GNU Linux people have a statement on their Web site at
- <htmlurl url="http://www.debian.org" name="http://www.debian.org">
-
- Essentially, Linux uses libraries that store dates as 32-bit integers,
- which count the seconds since 1970. This counter will not overflow
- until the year 2038, by which time the library programmers will
- (hopefully) have upgraded the system software to store dates as 64-bit
- integers.
-
- This, of course, does not mean that applications are not susceptible
- to the millennium bug, if they do not use the standard library
- routines.
-
- The Free Software Foundation has a Web page about Y2K issues in GNU software
- at <htmlurl url="http://www.fsf.org/software/year2000.html"
- name="http://www.fsf.org/software/year2000.html">
-
- There is also a Usenet newsgroup, comp.software.year-2000, for general
- discussion of Y2K issues.
-
- -------------------------------------------------------------------------------
-
- <sect1>Where can I get Linux material by FTP? <label id="Where can I get Linux material by FTP?">
- <P>
- There are three main archive sites for Linux:
- <itemize>
- <item><htmlurl url="ftp://ftp.funet.fi/pub/OS/Linux"
- name="ftp.funet.fi (Finland) : /pub/OS/Linux">
- <item><htmlurl url="ftp://sunsite.unc.edu/pub/Linux"
- name="sunsite.unc.edu (US) : /pub/Linux"> <item><htmlurl
- url="ftp://tsx-11.mit.edu/pub/linux" name="tsx-11.mit.edu (US) :
- /pub/linux">
- </itemize>
- The best place to get the Linux kernel is <htmlurl
- url="ftp://ftp.cs.helsinki.fi/pub/Linux_Kernel"
- name="ftp.cs.helsinki.fi/pub/Linux_Kernel">. Linus Torvalds uploads
- the most recent kernel versions to this site.
-
- Of the U.S. distributions, Debian GNU/Linux is available at <htmlurl
- url="ftp://ftp.debian.org/pub/debian"
- name="ftp.debian.org/pub/debian">. Red Hat Linux's home site is
- <htmlurl url="ftp://ftp.redhat.com" name="ftp.redhat.com">, and
- Linux Slackware's is <htmlurl url="ftp.cdrom.com" name="ftp.cdrom.com">.
-
- 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.
- <itemize>
- <item><htmlurl url="ftp://ftp.sun.ac.za/pub/linux/sunsite/"
- name="ftp.sun.ac.za/pub/linux/sunsite/"> (South Africa)
- <item><htmlurl url="ftp://ftp.is.co.za/linux/sunsite/"
- name="ftp.is.co.za/linux/sunsite/"> (South Africa)
- <item><htmlurl url="ftp://ftp.cs.cuhk.hk/pub/Linux/"
- name="ftp.cs.cuhk.hk/pub/Linux/"> (Hong Kong)
- <item><htmlurl url="ftp://sunsite.ust.hk/pub/Linux/"
- name="ftp.cs.cuhk.hk/pub/Linux/"> (Hong Kong)
- <item><htmlurl url="ftp://ftp.spin.ad.jp/pub/linux/sunsite.unc.edu/"
- name="ftp.spin.ad.jp/pub/linux/sunsite.unc.edu/"> (Japan)
- <item><htmlurl url="ftp://ftp.nuri.net/pub/Linux/"
- name="ftp.nuri.net/pub/Linux/"> (Korea)
- <item><htmlurl url="ftp://ftp.jaring.my/pub/Linux/"
- name="ftp.jaring.my/pub/Linux/"> (Malaysia)
- <item><htmlurl url="ftp://ftp.nus.sg/pub/unix/Linux/"
- name="ftp.nus.sg/pub/unix/Linux/"> (Singapore)
- <item><htmlurl url="ftp://ftp.nectec.or.th/pub/mirrors/linux/"
- name="ftp.nectec.or.th/pub/mirrors/linux/"> (Thailand)
- <item><htmlurl url="ftp://mirror.aarnet.edu.au/pub/linux/"
- name="mirror.aarnet.edu.au/pub/linux/"> (Australia)
- <item><htmlurl url="ftp://sunsite.anu.edu.au/pub/linux/"
- name="sunsite.anu.edu.au/pub/linux/"> (Australia)
- <item><htmlurl url="ftp://ftp.monash.edu.au/pub/linux/"
- name="ftp.monash.edu.au/pub/linux/"> (Australia)
- <item><htmlurl url="ftp://ftp.univie.ac.at/systems/linux/sunsite/"
- name="ftp.univie.ac.at/systems/linux/sunsite/"> (Austria)
- <item><htmlurl url="ftp://ftp.fi.muni.cz/pub/UNIX/linux/"
- name="ftp.fi.muni.cz/pub/UNIX/linux/"> (Czech Republic)
- <item><htmlurl url="ftp://sunsite.fri.uni-lj.si/pub/linux/"
- name="ftp://sunsite.fri.uni-lj.si/pub/linux/"> (Slovenia)
- <item><htmlurl url="ftp://ftp.funet.fi/pub/Linux/sunsite/"
- name="ftp.funet.fi/pub/Linux/sunsite/"> (Finland)
- <item><htmlurl url="ftp://ftp.univ-angers.fr/pub/Linux/"
- name="ftp.univ-angers.fr/pub/Linux/"> (France)
- <item><htmlurl url="ftp://ftp.iut-bm.univ-fcomte.fr"
- name="ftp.iut-bm.univ-fcomte.fr"> (France)
- <item><htmlurl url="ftp://ftp.ibp.fr/pub/linux/sunsite/"
- name="ftp.ibp.fr/pub/linux/sunsite/"> (France)
- <item><htmlurl url="ftp://ftp.loria.fr/pub/linux/sunsite/"
- name="ftp.loria.fr/pub/linux/sunsite/"> (France)
- <item><htmlurl url="ftp://ftp.dfv.rwth-aachen.de/pub/linux/sunsite/"
- name="ftp.dfv.rwth-aachen.de/pub/linux/sunsite/"> (Germany)
- <item><htmlurl
- url="ftp://ftp.germany.eu.net/pub/os/Linux/Mirror.SunSITE/"
- name="ftp.germany.eu.net/pub/os/Linux/Mirror.SunSITE/"> (Germany)
- <item><htmlurl url="ftp://ftp.tu-dresden.de/pub/Linux/sunsite/"
- name="ftp.tu-dresden.de/pub/Linux/sunsite/"> (Germany)
- <item><htmlurl
- url="ftp://ftp.uni-erlangen.de/pub/Linux/MIRROR.sunsite/"
- name="ftp.uni-erlangen.de/pub/Linux/MIRROR.sunsite/"> (Germany)
- <item><htmlurl url="ftp://ftp.gwdg.de/pub/linux/mirrors/sunsite/"
- name="ftp.gwdg.de/pub/linux/mirrors/sunsite/"> (Germany)
- <item><htmlurl
- url="ftp://ftp.rz.uni-karlsruhe.de/pub/linux/mirror.sunsite/"
- name="ftp.rz.uni-karlsruhe.de/pub/linux/mirror.sunsite/"> (Germany)
- <item><htmlurl
- url="ftp://ftp.ba-mannheim.de/pub/linux/mirror.sunsite/"
- name="ftp.ba-mannheim.de/pub/linux/mirror.sunsite/"> (Germany)
- <item><htmlurl
- url="ftp://ftp.uni-paderborn.de/pub/Mirrors/sunsite.unc.edu/"
- name="ftp.uni-paderborn.de/pub/Mirrors/sunsite.unc.edu/"> (Germany)
- <item><htmlurl url="ftp://ftp.uni-rostock.de/Linux/sunsite/"
- name="ftp.uni-rostock.de/Linux/sunsite/"> (Germany)
- <item><htmlurl
- url="ftp://ftp.rus.uni-stuttgart.de/pub/unix/systems/linux/MIRROR.sunsite/"
- name="tp.rus.uni-stuttgart.de/pub/unix/systems/linux/MIRROR.sunsite/">
- (Germany)
- <item><htmlurl
- url="ftp://ftp.uni-tuebingen.de/pub/linux/Mirror.sunsite/"
- name="ftp.uni-tuebingen.de/pub/linux/Mirror.sunsite/"> (Germany)
- <item><htmlurl
- url="ftp://ftp.rz.uni-ulm.de/pub/mirrors/linux/sunsite/"
- name="ftp.rz.uni-ulm.de/pub/mirrors/linux/sunsite/"> (Germany)
- <item><htmlurl url="ftp://ftp.kfki.hu/pub/linux/"
- name="ftp.kfki.hu/pub/linux/"> (Hungary)
- <item><htmlurl url="ftp://linux.italnet.it/pub/Linux/"
- name="linux.italnet.it/pub/Linux/"> (Italy)
- <item><htmlurl url="ftp://ftp.unina.it/pub/linux/sunsite/"
- name="ftp.unina.it/pub/linux/sunsite/"> (Italy)
- <item><htmlurl url="ftp://giotto.unipd.it/pub/unix/Linux/"
- name="giotto.unipd.it/pub/unix/Linux/"> (Italy)
- <item><htmlurl url="ftp://cnuce-arch.cnr.it/pub/Linux/"
- name="cnuce-arch.cnr.it/pub/Linux/"> (Italy)
- <item><htmlurl url="ftp://ftp.flashnet.it/mirror2/sunsite.unc.edu/"
- name="ftp.flashnet.it/mirror2/sunsite.unc.edu/"> (Italy)
- <item><htmlurl
- url="ftp://ftp.nijenrode.nl/pub/linux/sunsite.unc-mirror/"
- name="ftp.nijenrode.nl/pub/linux/sunsite.unc-mirror/"> (Netherlands)
- <item><htmlurl url="ftp://ftp.LeidenUniv.nl/pub/linux/sunsite/"
- name="ftp.LeidenUniv.nl/pub/linux/sunsite/"> (Netherlands)
- <item><htmlurl url="ftp://ftp.nvg.unit.no/pub/linux/sunsite/"
- name="ftp.nvg.unit.no/pub/linux/sunsite/"> (Norway)
- <item><htmlurl
- url="ftp://sunsite.icm.edu.pl/pub/Linux/sunsite.unc.edu/"
- name="ftp://sunsite.icm.edu.pl/pub/Linux/sunsite.unc.edu/"> (Poland)
- <item><htmlurl url="ftp://ftp.rediris.es/software/os/linux/sunsite/"
- name="ftp.rediris.es/software/os/linux/sunsite/"> (Spain)
- <item><htmlurl url="ftp://sunsite.rediris.es/software/linux/"
- name="sunsite.rediris.es/software/linux/"> (Spain)
- <item><htmlurl url="ftp://ftp.cs.us.es/pub/Linux/sunsite-mirror/"
- name="ftp.cs.us.es/pub/Linux/sunsite-mirror/"> (Spain)
- <item><htmlurl url="ftp://ftp.etse.urv.es/pub/mirror/linux/"
- name="ftp.etse.urv.es/pub/mirror/linux/"> (Spain)
- <item><htmlurl url="ftp://ftp.etsimo.uniovi.es/pub/linux/"
- name="ftp.etsimo.uniovi.es/pub/linux/"> (Spain)
- <item><htmlurl url="ftp://ftp.luna.gui.es/pub/linux.new/"
- name="ftp.luna.gui.es/pub/linux.new/"> (Spain)
- <item><htmlurl url="ftp://ftp.switch.ch/mirror/linux/"
- name="ftp.switch.ch/mirror/linux/"> (Switzerland)
- <item><htmlurl url="ftp://ftp.metu.edu.tr/pub/linux/sunsite/"
- name="ftp.metu.edu.tr/pub/linux/sunsite/"> (Turkey)
- <item><htmlurl url="ftp://unix.hensa.ac.uk/mirrors/sunsite/pub/Linux/"
- name="unix.hensa.ac.uk/mirrors/sunsite/pub/Linux/"> (UK)
- <item><htmlurl
- url="ftp://ftp.maths.warwick.ac.uk/mirrors/linux/sunsite.unc-mirror/"
- name="ftp.maths.warwick.ac.uk/mirrors/linux/sunsite.unc-mirror/"> (UK)
- <item><htmlurl
- url="ftp://ftp.idiscover.co.uk/pub/Linux/sunsite.unc-mirror/"
- name="ftp.idiscover.co.uk/pub/Linux/sunsite.unc-mirror/"> (UK)
- <item><htmlurl
- url="ftp://sunsite.doc.ic.ac.uk/packages/linux/sunsite.unc-mirror/"
- name="sunsite.doc.ic.ac.uk/packages/linux/sunsite.unc-mirror/"> (UK)
- <item><htmlurl url="ftp://ftp.dungeon.com/pub/linux/sunsite-mirror/"
- name="ftp.dungeon.com/pub/linux/sunsite-mirror/"> (UK)
- <item><htmlurl url="ftp://ftp.io.org/pub/mirrors/linux/sunsite/"
- name="ftp.io.org/pub/mirrors/linux/sunsite/"> (Canada)
- <item><htmlurl url="ftp://ftp.cc.gatech.edu/pub/linux/"
- name="ftp.cc.gatech.edu/pub/linux/"> (US)
- <item><htmlurl url="ftp://ftp.cdrom.com/pub/linux/sunsite/"
- name="ftp.cdrom.com/pub/linux/sunsite/"> (US)
- <item><htmlurl url="ftp://ftp.siriuscc.com/pub/Linux/Sunsite/"
- name="ftp.siriuscc.com/pub/Linux/Sunsite/"> (US)
- <item><htmlurl url="ftp://ftp.engr.uark.edu/pub/linux/sunsite/"
- name="ftp.engr.uark.edu/pub/linux/sunsite/"> (US)
- <item><htmlurl
- url="ftp://ftp.infomagic.com/pub/mirrors/linux/sunsite/"
- name="ftp.infomagic.com/pub/mirrors/linux/sunsite/"> (US)
- <item><htmlurl
- url="ftp://linux.if.usp.br/pub/mirror/sunsite.unc.edu/pub/Linux/"
- name="linux.if.usp.br/pub/mirror/sunsite.unc.edu/pub/Linux/"> (Brazil)
- <item><htmlurl url="ftp://farofa.ime.usp.br/pub/linux/"
- name="farofa.ime.usp.br/pub/linux/"> (Brazil)
- </itemize>
-
- Not all of these mirror all of the other ``source'' sites, and some have
- material not available on the ``source'' sites.
-
- -------------------------------------------------------------------------------
-
- <sect1>I don't have FTP access. Where do I get Linux? <label id="I don't have FTP access. Where do I get Linux?">
- <P>
- 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.
-
- If you have a reasonably good email connection, you could try the
- FTP-by-mail servers at <htmlurl
- url="mailto:ftpmail@ftp.sunet.se"
- name="ftpmail@ftp.sunet.se">, <htmlurl
- url="mailto:ftpmail@garbo.uwasa.fi" name="ftpmail@garbo.uwasa.fi">, or
- <htmlurl url="mailto:ftpmail@ftp.uni-stuttgart.de"
- name="ftpmail@ftp.uni-stuttgart.de">.
-
- Linux is also available via traditional mail on CD-ROM. The file
- <htmlurl
- url="ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/Installation-HOWTO"
- name="sunsite.unc.edu/pub/Linux/docs/HOWTO/Installation-HOWTO">, and
- the file
- <htmlurl
- url="ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/Distribution-HOWTO"
- name="sunsite.unc.edu/pub/Linux/docs/HOWTO/Distribution-HOWTO">
- contain information on these distributions.
-
- -------------------------------------------------------------------------------
-
- <sect1>I don't have Usenet access. Where do I get information? <label id="I don't have Usenet access. Where do I get information?">
- <P>
- A digest of comp.os.linux.announce is available by mailing the word
- ``subscribe'' (without the quotes) as the body of a message to
- <htmlurl url="mailto:linux-announce-REQUEST@news-digests.mit.edu"
- name="linux-announce-REQUEST@news-digests.mit.edu">. Subscribing to
- this list is a good idea, as it carries important information and
- documentation about Linux.
-
- Please remember to use the <tt>*-request</tt> addresses for your
- subscribe and unsubscribe messages; mail to the other address is
- posted to the news group.
-
- -------------------------------------------------------------------------------
-
- <sect1>What mailing lists are there? <label id="What mailing lists are there?">
- <P>
- The Linux developers now mainly use the Majordomo server at <htmlurl
- url="mailto:majordomo@vger.rutgers.edu"
- name="majordomo@vger.rutgers.edu">. 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.
-
- Most of the lists are used by Linux developers to talk about technical
- issues and future developments. These are not intended for new users'
- questions.
-
- There is a <tt>linux-newbie</tt> list where, ``no question is too
- stupid.'' Unfortunately, it seems that few experienced users read
- that list, and it has very low volume.
-
- -------------------------------------------------------------------------------
-
- <sect1>Are the newsgroups archived anywhere? <label id="Are the newsgroups archived anywhere?">
- <P>
-
- The Usenet Linux news groups are archived at <htmlurl
- url="http://www.dejanews.com" name="http://www.dejanews.com">,
- <htmlurl url="http://www.reference.com"
- name="http://www.reference.com">, and <htmlurl
- url="http://altavista.digital.com/"
- name="http://altavista.digital.com">
-
-
- <htmlurl
- url="ftp://sunsite.unc.edu//pub/Linux/docs/linux-announce.archive"
- name="Sunsite.unc.edu/pub/Linux/docs/linux-announce.archive">
- contains archives of <tt>comp.os.linux.announce</tt>. These are
- mirrored from <htmlurl url="ftp://src.doc.ic.ac.uk/usenet"
- name="src.doc.ic.ac.uk/usenet">, which also archives
- <tt>comp.os.linux</tt>, <tt>comp.os.linux.development.apps</tt>, and
- <tt>comp.os.linux.development.system</tt>.
-
- There is an `easy to access' archive of
- <tt>comp.os.linux.announce</tt> on the World Wide Web at <htmlurl
- url="http://www.leo.org/archiv/linux/archiv/ann_index.html"
- name="http://www.leo.org/archiv/linux/archiv/ann_index.html"> which
- supports searching and browsing.
-
- ===============================================================================
-
- <sect>Compatibility with other operating systems. <label id="Compatibility with other operating systems.">
- <P>
- -------------------------------------------------------------------------------
-
- <sect1>Can Linux share my disk with DOS? OS/2? 386BSD? Win95? <label id="Can Linux share my disk with DOS? OS/2? 386BSD? Win95?">
- <P>
- Yes. Linux uses the standard MS-DOS partitioning scheme, so it can
- share your disk with other operating systems. Note, however, that
- many other operating systems may not be exactly compatible. DOS's
- <tt>FDISK.EXE</tt> and <tt>FORMAT.EXE</TT>, 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.
-
- 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:
- <verb>
- $ dd if=/dev/zero of=/dev/hdXY bs=512 count=1
- </verb>
- where <tt>hdXY</tt> is the relevant partition; e.g., <tt>/dev/hda1</tt> for
- the first partition of the first (IDE) disk.
-
- 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.
-
- For information about FAT32 partition support, see <htmlurl
- url="http://bmrc.berkeley.edu/people/chaffee/fat32.html"
- name="http://bmrc.berkeley.edu/people/chaffee/fat32.html">.
-
- See, ``<ref id="What software does Linux support?">'' for details and
- status of the emulators for DOS, MS Windows, and System V programs.
-
- See also, ``<ref id="Can Linux access Amiga file systems?">'',
- ``<ref id="Can Linux access Macintosh file systems?">'',
- ``<ref id="Can Linux access BSD, SysV, etc., UFS?">'', and
- ``<ref id="Can Linux access SMB file systems?">''
-
- There are said to be NTFS drivers under development, which
- should support compression as a standard feature.
-
-
- -------------------------------------------------------------------------------
-
- <sect1>How do I access files on my DOS partition or floppy? <label id="How do I access files on my DOS partition or floppy?">
- <P>
- Use the DOS file system, type, for example:
- <verb>
- $ mkdir /dos
- $ mount -t msdos -o conv=text,umask=022,uid=100,gid=100 /dev/hda3 /dos
- </verb>
- If it's a floppy, don't forget to umount it before ejecting it!
-
- You can use the <tt>conv=text/binary/auto</tt>, <tt>umask=nnn</tt>,
- <tt>uid=nnn</tt>, and <tt>gid=nnn</tt> 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 <tt>/etc/fstab</tt>, you can
- record the options (comma-separated) there, instead of defaults.
-
- Alternatively, you can use mtools, available in both binary and source
- form on the FTP sites. (``<ref id="Where can I get Linux material by
- FTP?">'')
-
- 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.
-
- -------------------------------------------------------------------------------
- <sect1>Does Linux support compressed ext2 file systems? <label id="Does
- Linux support compressed ext2 file systems?">
- <P>
- As of recently, it does. Information about them is located at
- <htmlurl url="http://www.netspace.net.au/~reiter/e2compr/" name="http://www.netspace.net.au/˜reiter/e2compr/">.
-
- 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
- <htmlurl url="http:// debs.fuller.edu/e2compr/"
- name="http://debs.fuller.edu/e2compr/">.
-
- [Roderich Schupp]
-
- Zlibc is a program that allows existing applications to read
- compressed (GNU gzip'ed) files as if they were not compressed. Look
- on sunsite.unc.edu in /pub/Linux/libs/. The author is
- Alain Knuff.
-
- 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
- sunsite.unc.edu in the directory /pub/Linux/patches/diskdrives/. This
- driver compresses inodes and directory information as well as files,
- so any corruption of the file system is likely to be serious.
-
- There is also a package called tcx (Transparently Compressed
- Executables), which allows you to keep infrequently compressed
- executables compressed and only uncompress them temporarily when in
- use. It is located on sunsite.unc.edu in the directory
- /pub/Linux/utils/compress/.
-
- -------------------------------------------------------------------------------
- <sect1>Can I use my Stacked/DBLSPC/etc. DOS drive? <label id="Can I use my Stacked/DBLSPC/etc. DOS drive?">
- <P>
-
- Until recently, not very easily. You can access DOS 6.X volumes
- from the DOS emulator (``<ref id="What software does Linux
- support?">''), but it's harder than accessing a normal DOS volume via
- the DOS kernel option, a module, or mtools.
-
- There is a recently added package, dmsdos, which 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 available in the
- archives on <htmlurl
- url="ftp://sunsite.unc.edu/pub/Linux/system/Filesystem/dosfs"
- name="ftp://sunsite.unc.edu/pub/Linux/system/Filesystem/dosfs">.
-
- There is a module available for the Linux kernel which can do
- read-only access of compressed volume. Look at <htmlurl
- url="ftp://sunsite.unc.edu/pub/Linux/system/filesystems/dosfs"
- name="sunsite.unc.edu/pub/Linux/system/filesystems/dosfs/">.
-
- -------------------------------------------------------------------------------
-
- <sect1>Can I access OS/2 HPFS partitions from Linux? <label id="Can I access OS/2 HPFS partitions from Linux?">
- <P>
- 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 <tt>Documentation/filesystems/hpfs.txt</tt>
- file in the kernel source distribution. (``<ref id ="How do I
- upgrade/recompile my kernel?">'') Then you can mount HPFS partition,
- using, for example:
- <verb>
- $ mkdir /hpfs
- $ mount -t hpfs /dev/hda5 /hpfs
- </verb>
- -------------------------------------------------------------------------------
-
- <sect1>Can Linux access Amiga file systems? <label id="Can Linux access Amiga file systems?">
- <P>
-
- 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 <tt>Documentation/filesystems/affs.txt</tt> in the Linux
- kernel source distribution has more information.
-
- See ``<ref id ="How do I upgrade/recompile my kernel?">''.
-
- 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.
-
- -------------------------------------------------------------------------------
-
- <sect1>Can Linux access BSD, SysV, etc. UFS? <label id="Can Linux access BSD, SysV, etc., UFS?">
- <P>
-
- 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.
-
- See, ``<ref id ="How do I upgrade/recompile my kernel?">''
-
- -------------------------------------------------------------------------------
-
- <sect1>Can Linux access SMB file systems? <label id="Can Linux access SMB file systems?">
- <P>
-
- 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 ``<ref id ="How do I
- upgrade/recompile my kernel?">'' in this FAQ.
-
- 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 README file at <htmlurl
- url="ftp://sunsite.unc.edu/pub/Linux/system/network/samba/"
- name="sunsite.unc.edu/pub/Linux/system/network/samba/">.
-
- There is a SMB Web site at <htmlurl
- url="http://samba.anu.edu.au/samba/" name="samba.anu.edu.au/samba/">.
-
- -------------------------------------------------------------------------------
-
- <sect1>Can Linux access Macintosh file systems? <label id="Can Linux access Macintosh file systems?">
- <P>
-
- There is a set of user-level programs that read and write the
- Macintosh Hierarchical File System (HFS). It is available at
- <htmlurl url="ftp://sunsite.unc.edu/pub/Linux/utils/disk-management"
- name="sunsite.unc.edu/pub/Linux/utils/disk-management">.
-
- -------------------------------------------------------------------------------
-
- <sect1>Can I run Microsoft Windows programs under Linux? <label id="Can I run Microsoft Windows programs under Linux?">
- <P>
-
- 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 <tt>comp.emulators.ms-windows.wine</tt>
- newsgroup.
-
- There is also a FAQ, compiled by P. David Gardner, at <htmlurl
- url="ftp://sunsite.unc.edu/pub/Linux/docs/faqs/Wine-FAQ/"
- name="sunsite.unc.edu/pub/Linux/docs/faqs/Wine-FAQ/">.
-
- 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.
-
- Also, LOADLIN (a DOS program to load a Linux, or other OS, kernel is
- one way to make Linux co-exist with DOS. LOADLIN 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).
-
- 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
- C:\LINUX directory (or whatever), put LOADLIN in it with a copy of
- your kernel, and use that.
-
- LOADLIN 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).
-
- Earlier versions of LOADLIN sometimes required a package called
- REALBIOS.COM, which required a boot procedure on an (almost) blank
- floppy to map the REALBIOS 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).
-
- [Jim Dennis]
-
- -------------------------------------------------------------------------------
-
- <sect1>How can I boot Linux from OS/2's Boot Manager? <label id="How can I boot Linux from OS/2's Boot Manager?">
- <P>
-
- <enum>
- <item>Create a partition using OS/2's <tt>FDISK.EXE</tt> (Not Linux's
- <tt>fdisk</tt>).
-
- <item> 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.)
-
- <item>Add the partition to the Boot Manager.
-
- <item>Boot Linux, and create a file system on the partition using <tt>mkfs
- -t ext2</tt> or <tt>mke2fs</tt>. At this point you may, if you like,
- use Linux's <tt>fdisk</tt> 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.
-
- <item>Install Linux on the partition.
-
- <item>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
- <verb>
- boot = /dev/hda2
- </verb>
- (where <tt>/dev/hda2</tt> is the <em>partition</em> you want to boot
- from) in your <tt>/etc/lilo/config</tt> or <tt>/etc/lilo.config</tt>
- file.
-
- <item>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.
- </enum>
-
- There is a set of HOWTO's on the subject of multi-boot systems on the
- LDP Home Page, <htmlurl url="http://sunsite.unc.edu/LDP/"
- name="http://sunsite.unc.edu/LDP/">.
-
- -------------------------------------------------------------------------------
-
- <sect1>How can I share a swap partition between Linux and MS Windows? <label id="How can I share a swap partition between Linux and MS Windows?">
- <P>
- See the Mini-HOWTO on the subject. The Mini-HOWTO is currently
- unmaintained but is available at <htmlurl
- url="ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/mini/unmaintained"
- name="ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/mini/unmaintained">.
-
- ===============================================================================
-
- <sect>Linux's handling of file systems, disks, and drives <label id="Linux's handling of file systems, disks, and drives">
- <P>
- -------------------------------------------------------------------------------
-
- <sect1>How can I get Linux to work with my disk? <label id="How can I get Linux to work with my disk?">
- <P>
- If your disk is an IDE or EIDE drive, you should read the file
- <tt>/usr/src/linux/drivers/block/README.ide</tt> (part of the Linux
- kernel source code). This README contains many helpful hints about
- IDE drives. Many modern IDE controllers do translation between
- `physical' cylinders/heads/sectors, and `logical' ones.
-
- SCSI disks are accessed by linear block numbers. The BIOS invents some
- `logical' cylinder/head/sector fiction to support DOS.
-
- An IBM PC-compatible BIOS 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.
-
- You can still use such partitions for Linux or other operating systems
- that access the controller directly.
-
- 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.
-
- 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.
-
- [Jim Dennis]
-
- -------------------------------------------------------------------------------
-
- <sect1>How can I undelete files? <label id="How can I undelete files?">
- <P>
- In general, this is very hard to do on Unices because of their
- multitasking nature. Undelete functionality for the ext2fs file
- system is being worked on, but don't hold your breath.
-
- 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.
-
- 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.
-
- -------------------------------------------------------------------------------
-
- <sect1>Is there a defragmenter for ext2fs etc.? <label id="Is there a defragmenter for ext2fs etc.?">
- <P>
- Yes. There is <tt>defrag</tt>, a Linux file system defragmenter for
- ext2, Minix, and old-style ext file systems. It is available at
- <htmlurl
- url="ftp://sunsite.unc.edu/pub/Linux/system/filesystems/defrag-0.70.tar.gz"
- name="sunsite.unc.edu/pub/Linux/system/filesystems/defrag-0.70.tar.gz">.
-
- Users of the ext2 file system can probably do without <tt>defrag</tt>,
- because ext2 contains extra code to keep fragmentation reduced even in
- very full file systems.
-
- -------------------------------------------------------------------------------
-
- <sect1>How do I format and create a file system on a floppy? <label id="How do I format and create a file system on a floppy?">
- <P>
- To format a 3.5-inch, high density floppy:
- <verb>
- $ fdformat /dev/fd0H1440
- $ mkfs -t ext2 -m 0 /dev/fd0H1440 1440
- </verb>
- For a 5.25 inch floppy, use <tt>fd0h1200</tt> and <tt>1200</tt> as
- appropriate. For the `B' drive use <tt>fd1</tt> instead of
- <tt>fd0</tt>.
-
- The <tt>-m 0</tt> option tells <tt>mkfs.ext2</tt> not to reserve any
- space on the disk for the superuser--usually the last 10% is
- reserved for root.
-
- 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 <tt>cp</tt> and <tt>mv</tt> files, etc.
-
- Device naming conventions generally are the same as for other Unices.
- They can be found in Matt Welsh's <em>Installation and Getting
- Started</em> Guide. (See ``<ref id="Where can I get the HOWTO's and other
- documentation?">'') A more detailed and technical description is
- <em>Linux Allocated Devices</em> by H. Peter Anvin, <htmlurl
- url="mailto:hpa@zytor.com" name="hpa@zytor.com">, which is
- included in LaTeX and ASCII form in the kernel source distribution
- (probably in <tt>/usr/src/kernel/Documentation</tt>), as
- <tt>devices.tex</tt> and <tt>devices.txt</tt>.
-
- -------------------------------------------------------------------------------
-
- <sect1>I get nasty messages about inodes, blocks, and the like. <label id="I get nasty messages about inodes, blocks, and the like.">
- <P>
- 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.
-
- If you're lucky, the program fsck (or e2fsck or xfsck as appropriate
- if you don't have the automatic fsck 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 mke2fs, mkxfs, etc.), and
- restore from a backup.
-
- NB: don't try to check a file system that's mounted read/write--this
- includes the root partition, if you don't see
- <verb>
- VFS: mounted root ... read-only
- </verb>
- at boot time.
-
- -------------------------------------------------------------------------------
-
- <sect1>My swap area isn't working. <label id="My swap area isn't working.">
- <P>
- When you boot (or enable swapping manually) you should see
- <verb>
- Adding Swap: NNNNk swap-space
- </verb>
- If you don't see any messages at all you are probably missing
- <verb>
- swapon -av
- </verb>
- (the command to enable swapping) in your <tt>/etc/rc.local</tt> or
- <tt>/etc/rc.d/*</tt> (the system startup scripts), or have forgotten to
- make the right entry in <tt>/etc/fstab</tt>:
-
- <verb>
- /dev/hda2 none swap sw
- </verb>
- for example.
-
- If you see
- <verb>
- Unable to find swap-space signature
- </verb>
- you have forgotten to run <tt>mkswap</tt>. See the manual page for
- details; it works much like <tt>mkfs</tt>.
-
- Running, 'free' in addition to showing free memory, should display:
- <verb>
- total used free
- Swap: 10188 2960 7228
- </verb>
-
- [Andy Jefferson]
-
- Take a look also at the Installation HOWTO for detailed instructions of
- how to set up a swap area.
-
- -------------------------------------------------------------------------------
-
- <sect1>How do I remove LILO so my system boots DOS again? <label id="How do I remove LILO so my system boots DOS again?">
- <P>
- Using DOS (MS-DOS 5.0 or later, or OS/2), type <tt>FDISK /MBR</tt>
- (which is not documented). This will restore a standard MS-DOS Master
- Boot Record. If you have DR-DOS 6.0, go into FDISK in the normal way
- and then select the `Re-write Master Boot Record' option.
-
- 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 <tt>boot.0301</tt> or some such. Type
- <verb>
- dd if=boot.0301 of=/dev/hda bs=445 count=1
- </verb>
- (or <tt>/dev/sda</tt> if you're using a SCSI disk). This may also wipe out your
- partition table, so beware! If you're desperate, you could use
- <verb>
- dd if=/dev/zero of=/dev/hda bs=512 count=1
- </verb>
- 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.
-
- Note that the DOS MBR boots whichever (single!) partition is flagged
- as `active'. You may need to use <tt>fdisk</tt> to set and clear the
- active flags on partitions appropriately.
-
- -------------------------------------------------------------------------------
-
- <sect1>Why can't I use fdformat except as root? <label id="Why can't I use fdformat except as root?">
- <P>
- The system call to format a floppy can only be done as root,
- regardless of the permissions of <tt>/dev/fd0*</tt>. If you want any
- user to be able to format a floppy, try getting the <tt>fdformat2</tt>
- program. This works around the problems by being setuid to root.
-
- -------------------------------------------------------------------------------
-
- <sect1>My ext2fs partitions are checked each time I reboot. <label id="My ext2fs partitions are checked each time I reboot.">
- <P>
- See ``<ref id="EXT2-fs: warning: mounting unchecked file system."
- name="EXT2-fs: warning: mounting unchecked file system.">''.
-
- -------------------------------------------------------------------------------
-
- <sect1>My root file system is read-only! <label id="My root file system is read-only!">
- <P>
- Remount it. If <tt>/etc/fstab</tt> is correct, you can simply
- <verb>
- mount -n -o remount /
- </verb>
- If <tt>/etc/fstab</tt> is wrong, you
- must give the device name and possibly the type, too: e.g.
- <verb>
- mount -n -o remount -t ext2 /dev/hda2 /
- </verb>
- To understand how you got into
- this state, see, ``<ref id="EXT2-fs: warning: mounting unchecked
- file system." name="EXT2-fs: warning: mounting unchecked
- file system.">''
-
- -------------------------------------------------------------------------------
-
- <sect1>I have a huge /proc/kcore! Can I delete it? <label id="I have a huge /proc/kcore! Can I delete it?">
- <P>
- None of the files in /proc 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.
-
- /proc/kcore 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.
-
- -------------------------------------------------------------------------------
-
- <sect1>My AHA1542C doesn't work with Linux. <label id="My AHA1542C doesn't work with Linux.">
- <P>
- The option to allow disks with more than 1024 cylinders 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.
-
- ===============================================================================
-
- <sect>Porting, compiling and obtaining programs <label id="Porting, compiling and obtaining programs">
- <P>
- -------------------------------------------------------------------------------
-
- <sect1>How do I compile programs? <label id="How do I compile programs?">
- <P>
- 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 <htmlurl
- url="ftp://ftp.gnu.org/pub/gnu/" name="ftp://ftp.gnu.org/pub/gnu/">.
-
- 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.
-
- To build version 2.0.x kernels, you will need GCC version 2.7.2.x.
- Trying to build a Linux kernel with a different compiler, like
- GCC 2.8.x, EGCS, or PGCC, may cause problems until code dependencies
- of the 2.7.2.x compilers are fixed.
-
- Information on the EGCS compiler is at htmlurl
- url="http://egcs.cygnus.com" name="http://egcs.cygnus.com">.
-
- Note that at this time, the kernel developers are not answering bug
- requests for 2.0.x version kernels, but instead are concentrating on
- developing 2.1.x version kernels.
-
- [J.H.M. Dassen]
-
- -------------------------------------------------------------------------------
-
-
- <sect1>How do I port XXX to Linux? <label id="How do I port XXX to Linux?">
- <P>
- In general, Unix 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
- <tt>-I/usr/include/bsd</tt> and <tt>-lbsd</tt> on the appropriate
- parts of the compilation lines.
-
- -------------------------------------------------------------------------------
-
- <sect1>What is ld.so and where do I get it? <label id="What is ld.so and where do I get it?">
- <P>
- <tt>Ld.so</tt> 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, <tt>/lib/ld.so</tt>, where all binaries can look for
- it, so that it wastes less disk space, and can be upgraded more
- easily.
-
- <tt>Ld.so</tt> can be obtained from <htmlurl
- url="ftp://tsx-11.mit.edu/pub/linux/packages/GCC/"
- name="tsx-11.mit.edu/pub/linux/packages/GCC/"> and mirror sites. The
- latest version at the time of writing is <tt>ld.so.1.9.5.tar.gz</tt>.
-
- <tt>/lib/ld-linux.so.1</tt> is the same thing for ELF (``<ref
- id="What's all this about ELF?">'') and comes in the same package as
- the <tt>a.out</tt> loader.
-
- -------------------------------------------------------------------------------
- <sect1>How do I upgrade the libraries withough trashing my system? <label id="How do I upgrade the libraries withough trashing my system?">
- <P>
-
- Note: You should always have a rescue disk set ready when you perform
- this procedure, in the likely event that something goes wrong!
-
- This procedure is especially difficult if you're upgrading very old
- libraries like libc4. But you should be able to keep libc4 on the same
- system with libc5 libraries for the programs that still need them.
- The same holds true for upgrading from libc5 to the newer-yet glibc2
- libraries.
-
- 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 /lib/, in /usr/lib/, or /usr/local/lib/,
- or another directory that is listed in the /etc/ld.so.conf file.
-
- For example, when upgrading libc5 libraries, the files in /lib/ might
- look something like:
-
- <verb>
- libc.so.5
- libc.so.5.4.33
- libm.so.5
- libm.so.5.0.9
- </verb>
- These are the C libraries and the math libraries. Copy them to
- another directory that is listed in /etc/ld.so.conf, like /usr/lib/.
-
- <verb>
- cp -df /lib/libc.so.5* /usr/lib/
- cp -df /lib/libm.so.5* /usr/lib/
- ldconfig
- </verb>
- Be sure to run ldconfig to upgrade the library configuration.
-
- The files libc.so.5 and libm.so.5 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 -f flag with cp.
- The -d flag to cp will copy the symbolic link itself, and not the file
- it points to.
-
- If you need to overwrite the link to the library directly, use the -f
- flag with ln.
-
- 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 /lib/, with the following commands.
- <verb>
- 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
- </verb>
- Again, remember to run ldconfig after you copy the libraries.
-
- If you are satisfied that everything is working correctly, you can
- remove the temporary copies of the old libraries from /usr/lib/ or
- wherever you copied them.
-
- -------------------------------------------------------------------------------
-
- <sect1>Has anyone ported / compiled / written XXX for Linux? <label id="Has anyone ported / compiled / written XXX for Linux?">
- <P>
- First, look in the Linux Software Map--it's at <htmlurl
- url="ftp://sunsite.unc.edu/pub/Linux/docs/linux-software-map"
- name="sunsite.unc.edu/pub/Linux/docs/linux-software-map">, and on the
- other FTP sites. A search engine is available on the World Wide Web
- at <htmlurl url="http://www.boutell.com/lsm/"
- name="http://www.boutell.com/lsm/">.
-
- Check the FTP sites (``<ref id="Where can I get Linux material by
- FTP?">'') first--search the <tt>ls-lR</tt> or <tt>INDEX</tt> files
- for appropriate strings.
-
- Also look at the Linux Projects Map, <htmlurl
- url="ftp://ftp.ix.de/pub/ix/Linux/docs/Projects-Map.gz"
- name="ftp.ix.de/pub/ix/Linux/docs/Projects-Map.gz">.
-
- There's a search engine for Linux FTP archives at
- http://lfw.linuxhq.com/
-
- Also check out the Freshmeat Web site <htmlurl
- url="http://www.freshmeat.org" name="http://www.freshmeat.org">,
- which is really cool. (``<ref id="What online/free periodicals exist
- for Linux?">''
-
- If you don't find anything, you could download the sources to
- the program yourself and compile them. See ``<ref id="How do I port
- XXX to Linux?">'' If it's a large package that may require some
- porting, post a message to <tt>comp.os.linux.development.apps</tt>.
-
- If you compile a large-ish program, please upload it to one or more of
- the FTP sites, and post a message to <tt>comp.os.linux.announce</tt>
- (submit your posting to <htmlurl
- url="mailto:linux-announce@news.ornl.gov"
- name="linux-announce@news.ornl.gov">).
-
- If you're looking for an application program, the chances are that
- someone has already written a free version. The
- <tt>comp.sources.wanted</tt> FAQ has instructions for finding the
- source code.
-
- -------------------------------------------------------------------------------
-
- <sect1>Can I use code or a compiler compiled for a 486 on my 386? <label id="Can I use code or a compiler compiled for a 486 on my 386?">
- <P>
- Yes, unless it's the kernel.
-
- The -m486 option to GCC, 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.
-
- 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.
-
- GCC can be configured for a 386 or 486; the only difference is that
- configuring it for a 386 makes -m386 the default and configuring for a 486
- makes -m486 the default. In either case, these can be overridden on a
- per-compilation basis or by editing /usr/lib/gcc-lib/i*-linux/n.n.n/specs.
-
- There is an Alpha version of GCC which 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 tsx-11.mit.edu in
- /pub/linux/ALPHA/pentium-gcc. I'd recommend using the ordinary 486 GCC
- instead; word has it that using -m386 produces code that's better for the
- Pentium, or at least slightly smaller.
-
- -------------------------------------------------------------------------------
-
- <sect1>What does gcc -O6 do? <label id="What does gcc -O6 do?">
- <P>
- Currently, the same as -O2 (GCC 2.5) or -O3 (GCC 2.6, 2.7). Any number
- greater than that does the same thing. The Makefiles of newer
- kernels use -O2, and you should probably do the same.
-
- -------------------------------------------------------------------------------
-
- <sect1>Where are linux/*.h and asm/*.h? <label id="Where are linux/*.h and asm/*.h?">
- <P>
- The files <tt>/usr/include/linux/</tt> and
- <tt>/usr/include/asm/</tt> are often soft links to the
- directories where the kernel headers are. They are usually under
- /usr/src/kernel*/.
-
- If you don't have the kernel sources, download them--see, ``<ref
- id="How do I upgrade/recompile my kernel?">''
-
- Then, use <tt>rm</tt> to remove any garbage, and <tt>ln</tt> to create
- the links:
- <verb>
- 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
- </verb>
- <tt>/usr/src/linux/include/asm/</tt> is a symbolic link to an
- architecture-specific asm 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 linux/autoconf.h.
-
- -------------------------------------------------------------------------------
-
- <sect1>I get errors when I try to compile the kernel. <label id="I get errors when I try to compile the kernel.">
- <P>
- See the previous question regarding the header files.
-
- Remember that when you apply a patch to the kernel, you must use the
- <tt>-p0</tt> or <tt>-p1</tt> option: otherwise, the patch may be
- misapplied. See the <tt>patch</tt> manual page for details.
-
- ``<tt>ld: unrecognized option `-qmagic'</tt>'' means that
- you should get a
- newer linker, from <htmlurl
- url="ftp://tsx-11.mit.edu/pub/linux/packages/GCC/"
- name="ftp://tsx-11.mit.edu/pub/linux/packages/GCC/">, in the file
- <tt>binutils-2.8.1.0.1.bin.tar.gz</tt>.
-
- -------------------------------------------------------------------------------
-
- <sect1>How do I make a shared library? <label id="How do I make a shared library?">
- <P>
- For ELF,
- <verb>
- gcc -fPIC -c *.c
- gcc -shared -Wl,-soname,libfoo.so.1 -o libfoo.so.1.0 *.o
- </verb>
- For <tt>a.out</tt>, get tools-n.nn.tar.gz from tsx-11.mit.edu, in
- /pub/linux/packages/GCC/src/. It comes with documentation that will
- tell you what to do. Note that <tt>a.out</tt> shared libraries are a
- very tricky business. Consider upgrading your libraries to ELF
- shared libraries. See the ELF HOWTO, at <htmlurl
- url="ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/"
- name="sunsite.unc.edu/pub/Linux/docs/HOWTO/">
-
- -------------------------------------------------------------------------------
-
- <sect1>My executables are (very) large. <label id="My executables are (very) large.">
- <P>
- With an ELF compiler (``<ref id="What's all this about ELF?">''), 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 libc.so for every library like libc.so.5.2.18.
-
- With an <tt>a.out compiler</tt> the most common cause of large
- executables is the <tt>-g</tt> 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.
-
- Other things worth investigating are <tt>-O</tt> and <tt>-O2</tt>,
- which enable optimization (check the GCC documentation), and
- <tt>-s</tt> (or the strip command) which strip the symbol information
- from the resulting binary (making debugging totally impossible).
-
- You may wish to use <tt>-N</tt> on very small executables (less than
- 8K with the <tt>-N</tt>), but you shouldn't do this unless you
- understand its performance implications, and definitely never with
- daemons.
-
- -------------------------------------------------------------------------------
-
- <sect1>Does Linux support threads or lightweight processes? <label id="Does Linux support threads or lightweight processes?">
- <P>
- 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.
- <itemize>
- <item>GNU glibc2 for Linux has optional support for threads. The
- archive is available from the same place as glibc2, <htmlurl
- url="ftp://ftp.gnu.org/pub/gnu" name="ftp://ftp.gnu.org/pub/gnu">
- <item>In sipb.mit.edu:/pub/pthread or ftp.ibp.fr:/pub/unix/threads/pthreads.
- Documentation isn't in the package, but is available on the World Wide
- Web at http://www.mit.edu:8001/people/proven/home_page.html. Newer
- Linux libc's contain the pthreads source. The GNU Ada compiler on
- sunsite.unc.edu in /pub/Linux/devel/lang/ada/gnat-3.01-linux+elf.tar.gz
- contains binaries made from that source code.
- <item>In ftp.cs.washington.edu:/pub/qt-001.tar.Z is QuickThreads. More
- information can be found in the technical report, available on the same
- site as /tr/1993/05/UW-CSE-93-05-06.PS.Z.
- <item>In gummo.doc.ic.ac.uk/rex/ is lwp, a very minimal implementation.
- <item>In ftp.cs.fsu.edu:/pub/PART/, 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.
- </itemize>
- Please contact the authors of the packages in question for details.
-
- -------------------------------------------------------------------------------
-
- <sect1>Where can I get `lint' for Linux? <label id="Where can I get `lint' for Linux?">
- <P>
- Roughly equivalent functionality is built into GCC. Use the -Wall
- option to turn on most of the useful extra warnings. See the GCC
- manual for more details (type control-h followed by i in Emacs and
- select the entry for GCC).
-
- There is a freely available program called `lclint' that does much the
- same thing as traditional lint. The announcement and source code are
- available at on larch.lcs.mit.edu in /pub/Larch/lclint/; on the World Wide
- Web, look at http://larch-www.lcs.mit.edu:8001/larch/lclint.html.
-
- -------------------------------------------------------------------------------
-
- <sect1>Where can I find kermit for Linux? <label id="Where can I find kermit for Linux?">
- <P>
- Kermit is distributed under a non-GPL copyright that makes its
- terms of distribution somewhat different.
- The sources and some binaries are available on <htmlurl
- url="ftp://kermit.columbia.edu"
- name="kermit.columbia.edu">.
-
- The WWW Home Page of the Columbia University Kermit project is
- <htmlurl url="http://www.columbia.edu/kermit/"
- name="http://www.columbia.edu/kermit/">.
-
- ===============================================================================
-
- <sect>Solutions to common miscellaneous problems. <label id="Solutions to common miscellaneous problems.">
- <P>
- -------------------------------------------------------------------------------
-
- <sect1>free dumps core. <label id="free dumps core.">
- <P>
- In Linux 1.3.57 and later, the format of /proc/meminfo was changed in a way
- that the implementation of free doesn't understand.
-
- Get the latest version, from sunsite.unc.edu, in
- /pub/Linux/system/Status/ps/procps-0.99.tgz.
-
- -------------------------------------------------------------------------------
-
- <sect1>My clock is very wrong. <label id="My clock is very wrong.">
- <P>
- 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 ``date,'' is maintained by the kernel while Linux is
- running.
-
- You can display the CMOS clock time, or set either clock from the other,
- with /sbin/clock program--see ``man 8 clock.''
-
- 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
- adjtimex (corrects for drift), netdate, and getdate (get the time from
- the network), or xntp (accurate, full-featured network time daemon).
-
- -------------------------------------------------------------------------------
-
- <sect1>Setuid scripts don't seem to work. <label id="Setuid scripts don't seem to work.">
- <P>
- That's right. This feature has been disabled in the Linux kernel on
- purpose, because setuid scripts are almost always a security hole.
- Sudo and SuidPerl can provide more security that setuid scripts or
- binaries, especially if execute permissions are limited to a certain
- user ID or group ID.
-
- If you want to know why setuid scripts are a security hole, read the
- FAQ for comp.unix.questions.
-
- -------------------------------------------------------------------------------
-
- <sect1>Free memory as reported by free keeps shrinking. <label id="Free memory as reported by free keeps shrinking.">
- <P>
- The ``free'' figure printed by free doesn't include memory used as a disk
- buffer cache--shown in the ``buffers'' column. If you want to know how
- much memory is really free add the ``buffers'' amount to ``free''--newer
- versions of free print an extra line with this info.
-
- 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.
-
- -------------------------------------------------------------------------------
-
- <sect1>When I add more memory, the system slows to a crawl. <label id="When I add more memory, the system slows to a crawl.">
- <P>
- This is a common symptom of a failure to cache the additional memory.
- The exact problem depends on your motherboard.
-
- 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.
-
- Sometimes the RAM has to be in certain sockets to be cached.
-
- Sometimes you have to set jumpers to enable caching.
-
- 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.
-
- 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
- comp.os.linux.hardware giving <em>all</em> of the details--make, model
- number, date code, etc., so other Linux users can avoid it.
-
- -------------------------------------------------------------------------------
-
- <sect1>Some programs (e.g. xdm) won't let me log in. <label id="Some programs (e.g. xdm) won't let me log in.">
- <P>
- You are probably using non-shadow password programs and are using shadow
- passwords.
-
- 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
- tsx-11.mit.edu:/pub/linux/sources/usr.bin/shadow/.
- This is the source code. The binaries are probably in
- linux/binaries/usr.bin/.
-
- -------------------------------------------------------------------------------
-
- <sect1>Some programs let me log in with no password. <label id="Some programs let me log in with no password.">
- <P>
- You probably have the same problem as in ``<ref id="Some programs (e.g. xdm)
- won't let me log in.">'', with an added wrinkle.
-
- If you are using shadow passwords, you should put a letter `x' or an
- asterisk in the password field of /etc/passwd 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.
-
- -------------------------------------------------------------------------------
-
- <sect1>My machine runs very slowly when I run GCC / X / ... <label id="My machine runs very slowly when I run GCC / X / ...">
- <P>
- 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 ``<ref id="How do I upgrade/recompile my kernel?">''.
-
- You can tell how much memory and swap you're using with the free
- command, or by typing:
- <verb>
- cat /proc/meminfo
- </verb>
- 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 <tt>man rdev</tt>).
-
- -------------------------------------------------------------------------------
-
- <sect1>I can only log in as root. <label id="I can only log in as root.">
- <P>
- You probably have some permission problems, or you have a file
- /etc/nologin.
-
- In the latter case, put <tt>rm -f /etc/nologin</tt> in your
- <tt>/etc/rc.local</tt> or <tt>/etc/rc.d/*</tt> scripts.
-
- 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.
-
- -------------------------------------------------------------------------------
-
- <sect1>My screen is all full of weird characters instead of letters. <label id="My screen is all full of weird characters instead of letters.">
- <P>
- You probably sent some binary data to your screen by mistake. Type
- <tt>echo '\033c'</tt> to fix it. Many Linux distributions have a
- command, ``reset,'' that does this.
-
- If that doesn't help, try a direct screen escape command.
- <verb>
- echo <Ctrl-V><Ctrl-O>
- </verb>
- This resets the default font of a Linux console. Remember to hold
- down the Control key and type the letter, instead of, for example,
- `Ctrl-V'. The sequence
- <verb>
- echo <Ctrl-V><Esc>c
- </verb>
- causes a full screen reset. If there's data left on the shell command
- line after typing a binary file, press Ctrl-C a few times to restore
- the shell command line.
-
- [Bernhard Gabler]
-
- -------------------------------------------------------------------------------
-
- <sect1>I have screwed up my system and can't log in to fix it. <label id="I have screwed up my system and can't log in to fix it.">
- <P>
-
- 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.
-
- There are
- also two, do-it-yourself rescue disk creation packages in <htmlurl
- url="sunsite.unc.edu/pub/Linux/system/Recovery"
- name="sunsite.unc.edu/pub/Linux/system/Recovery">. These are better
- because they have your own kernel on them, so you don't run
- the risk of missing devices and file systems.
-
- Get to a shell prompt and mount your hard disk with something like
- <verb>
- mount -t ext2 /dev/hda1 /mnt
- </verb>
- Then your file system is available under the directory <tt>/mnt</tt>
- and you can fix the problem. Remember to unmount your hard disk
- before rebooting (<tt>cd</tt> somewhere else first, or it
- will say it's busy).
-
- -------------------------------------------------------------------------------
-
- <sect1>I've discovered a huge security hole in <tt>rm</tt>! <label id="I've discovered a huge security hole in <tt>rm</tt>!">
- <P>
- No you haven't. You are obviously new to Unix and need to read a good
- book to find out how things work. Clue: the ability to delete files
- under Unix depends on permission to write in that directory.
-
- -------------------------------------------------------------------------------
-
- <sect1><tt>lpr(1)</tt> and/or <tt>lpd(8)</tt> don't work. <label id="<tt>lpr(1)</tt> and/or <tt>lpd(8)</tt> don't working.">
- <P>
- First make sure that your <tt>/dev/lp*</tt> 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.
- <verb>
- cat the_file >/dev/lp1
- </verb>
- If lpr gives you a message like ``myname@host: host not found,'' it may
- mean that the TCP/IP loopback interface, lo, isn't working properly.
- Loopback support is compiled into most distribution kernels. Check
- that the interface is configured with the <tt>ifconfig</tt> 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 <tt>login</tt>
- prompt.
-
- Make sure that <tt>/etc/hosts.lpd</tt> contains the machine's host
- name.
-
- If your machine has a network-aware <tt>lpd</tt>, like the one that
- comes with LPRng, make sure that <tt>/etc/lpd.perms</tt> is configured
- correctly.
-
- Also look at the <tt>Printing-HOWTO</tt> ``<ref id="Where can I get
- the HOWTO's and other documentation?">''.
-
- -------------------------------------------------------------------------------
-
- <sect1>Timestamps on files on MS-DOS partitions are set incorrectly. <label id="Timestamps on files on MS-DOS partitions are set incorrectly.">
- <P>
- There is a bug in the program ``<tt>clock</tt>'' (often found in
- <tt>/sbin</tt>). It miscounts a time zone offset, confusing seconds
- with minutes or something like that. Get a recent version.
-
- -------------------------------------------------------------------------------
-
- <sect1>How do I get LILO to boot the <tt>vmlinux</tt> file? <label id="How do I get LILO to boot the <tt>vmlinux</tt> file?">
- <P>
- >From kernel versions 1.1.80 on, the compressed kernel image,
- which is what LILO needs to find, is in
- <tt>arch/i386/boot/zImage</tt>. The <tt>vmlinux</tt> file in the root
- directory is the uncompressed kernel, and you shouldn't try to boot
- it.
-
- This was changed to make it easier to build kernel versions for
- several different processors from one source tree.
-
- ===============================================================================
-
- <sect>How do I do this or find out that ... ? <label id="How do I do this or find out that ... ?">
- <P>
- -------------------------------------------------------------------------------
-
- <sect1>How can I get scrollback in text mode? <label id="How can I get scrollback in text mode?">
- <P>
- With the default US keymap, you can use Shift with the PageUp and
- PageDown keys. (The gray ones, not the ones on the numeric keypad.)
- With other keymaps, look in <tt>/usr/lib/keytables</tt>. You can
- remap the ScrollUp and ScrollDown keys to be whatever you like. For
- example, to remap them to the keys on an 84-key, AT keyboard.
-
- The "screen" program, <htmlurl
- url="http://vector.co.jp/vpack/browse/person/an010455.html"
- name="http://vector.co.jp/vpack/browse/person/an010455.html">
- provides a searchable scrollback buffer and the
- ability to take ``snapshots'' of text-mode screens.
-
- You can't increase the amount of scrollback, 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 <tt>linux/tty.h</tt>.
-
- -------------------------------------------------------------------------------
-
- <sect1>How do I switch virtual consoles? How do I enable them? <label id="How do I switch virtual consoles? How do I enable them?">
- <P>
- In text mode, press Left Alt-F1 to Alt-F12 to select the consoles
- <tt>tty1</tt> to <tt>tty12</tt>; Right Alt-F1 gives <tt>tty13</tt> and
- so on. To switch out of X Windows you must press Ctrl-Alt-F1, etc;
- Alt-F5 or whatever will switch back.
-
- If you want to use a VC for ordinary login, it must be listed in
- <tt>/etc/inittab</tt>, which controls which terminals and virtual
- consoles have login prompts. The X Window System needs at least one
- free VC in order to start.
-
- -------------------------------------------------------------------------------
-
- <sect1>How do I set the time zone? <label id="How do I set the time zone?">
- <P>
- Change directory to <tt>/usr/lib/zoneinfo/</tt>. Get the time zone
- package if you don't have this directory. The source is available as
- <htmlurl
- url="ftp://sunsite.unc.edu/pub/Linux/system/admin/time/timesrc-1.2.tar.gz"
- name="sunsite.unc.edu/pub/Linux/system/admin/time/timesrc-1.2.tar.gz">.
-
- Then make a symbolic link named <tt>localtime</tt> pointing to one of
- the files in this directory (or a subdirectory), and one called
- <tt>posixrules</tt> pointing to <tt>localtime</tt>. For example:
- <verb>
- ln -sf US/Mountain localtime
- ln -sf localtime posixrules
- </verb>
- This change will take effect immediately--try <tt>date(1)</tt>.
-
- The manual page for tzset describes setting the time zone. Some
- programs recognize the TZ environment variable, but this is not
- POSIX-correct.
-
- You should also make sure that your Linux kernel clock is set to the
- correct <tt>GMT</tt> time--type <tt>date -u</tt> and check that the
- correct UTC time is displayed. (``<ref id="My clock is very wrong.">'')
-
- -------------------------------------------------------------------------------
-
- <sect1>What version of Linux and what machine name am I using? <label id="What version of Linux and what machine name am I using?">
- <P>
- Type:
- <verb>
- uname -a
- </verb>
-
- -------------------------------------------------------------------------------
-
- <sect1>How can I enable or disable core dumps? <label id="How can I enable or disable core dumps?">
- <P>
- By using the <tt>ulimit</tt> command in <tt>bash</tt>, the
- <tt>limit</tt>
- command in <tt>tcsh</tt>, or the <tt>rlimit</tt> command in
- <tt>ksh</tt>. See the appropriate manual page for details.
-
- This setting affects all programs run from the shell (directly or
- indirectly), not the whole system.
-
- If you wish to enable or disable core dumping for all processes by
- default, you can change the default setting in
- <tt>linux/sched.h</tt>--see the definition of
- <tt>INIT_TASK</tt>, and look also in <tt>linux/resource.h</tt>.
-
- -------------------------------------------------------------------------------
-
- <sect1>How do I upgrade/recompile my kernel? <label id="How do I upgrade/recompile my kernel?">
- <P>
- See the Kernel HOWTO or the README files which come with the kernel
- release on ftp.cs.helsinki.fi, in <tt>/pub/Software/Linux/Kernel/</tt>
- and mirrors. (See ``<ref id="Where can I 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.)
-
- 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.
- <verb>
- make clean dep install modules modules_install
- </verb>
-
- Also remember to update the module dependencies.
- <verb>
- depmod -a
- </verb>
-
- Remember that to make the new kernel boot you must run LILO after copying
- the kernel into your root partition--the Makefile in recent kernels has
- a special zlilo target for this; try:
- <verb>
- make zlilo
- </verb>
- 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. (See ``<ref
- id="What mailing lists are there?">.'')
-
- -------------------------------------------------------------------------------
-
- <sect1>Can I have more than 3 serial ports by sharing interrupts? <label id="Can I have more than 3 serial ports by sharing interrupts?">
- <P>
- 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.
-
- See the Serial HOWTO for information about possible solutions and
- workarounds for this problem.
-
- -------------------------------------------------------------------------------
-
- <sect1>How do I make a bootable floppy? <label id="How do I make a bootable floppy?">
- <P>
- 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
- lilo.u.*.ps).
-
- 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.
-
- See the Bootdisk HOWTO.
-
- -------------------------------------------------------------------------------
-
- <sect1>How do I remap my keyboard to UK, French, etc.? <label id="How do I remap my keyboard to UK, French, etc.?">
- <P>
- For recent kernels, get /pub/Linux/system/Keyboards/kbd-0.90.tar.gz from
- sunsite.unc.edu. 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 Makefile, in
- /usr/src/linux.
-
- You may find more helpful information in The Linux Keyboard and
- Console HOWTO, by Andries Brouwer, at <htmlurl
- url="ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/"
- name="sunsite.unc.edu/pub/Linux/docs/HOWTO">.
-
-
- -------------------------------------------------------------------------------
-
- <sect1>How do I get NUM LOCK to default to on? <label id="How do I get NUM LOCK to default to on?">
- <P>
- Use the setleds program, for example (in /etc/rc.local or one of the
- /etc/rc.d/* files):
- <verb>
- for t in 1 2 3 4 5 6 7 8
- do
- setleds +num < /dev/tty$t > /dev/null
- done
- </verb>
- Setleds is part of the kbd package (``<ref id="How do I remap my keyboard
- to UK, French, etc.?">'').
-
- Alternatively, patch your kernel. You need to arrange for
- KBD_DEFLEDS to be defined to (1 << VC_NUMLOCK)
- when compiling drivers/char/keyboard.c.
-
- -------------------------------------------------------------------------------
-
- <sect1>How do I set (or reset) my initial terminal colors?<label id="How do I set (or reset) my initial terminal colors?">
- <p>
- The following shell script should work for VGA consoles:
- <verb>
- for n in 1 2 4 5 6 7 8; do
- setterm -fore yellow -bold on -back blue -store > /dev/tty$n
- done
- </verb>
- Substitute your favorite colors, and use /dev/ttyS$n for serial
- terminals.
-
- To make sure they are reset when people log out (if they've been
- changed):
-
- Replace the references to ``getty'' (or ``mingetty'' or ``uugetty'' or
- whatever) in <tt>/etc/inittab</tt> with references to
- ``<tt>/sbin/mygetty</tt>.''
- <verb>
- #!/bin/sh
- setterm -fore yellow -bold on -back blue -store > $1
- exec /sbin/mingetty $@
- </verb>
-
- [Jim Dennis]
- -------------------------------------------------------------------------------
-
- <sect1>How can I have more than 128Mb of swap? <label id="How can I have more than 128Mb of swap?">
- <P>
- Use several swap partitions or swap files--Linux supports up to 16 swap
- areas, each of up to 128Mb.
-
- Very old kernels only supported swap partition sizes up to 16Mb.
-
- Linux on machines with 8KB paging, like Alpha
- and Sparc64, support a swap partition up to 512KB. The
- 128KB limitation comes from PAGE_SIZE*BITSPERBYTE 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.
-
- The file <tt>mm/swapfile.c</tt> has all of the gory details.
-
-
-
- [Peter Moulder, Gordon Weast]
-
- ===============================================================================
-
- <sect>Miscellaneous information and questions answered. <label id="Miscellaneous information and questions answered.">
- <P>
- -------------------------------------------------------------------------------
-
- <sect1>How do I program XYZ under Linux? <label id="How do I program XYZ under Linux?">
- <P>
- Read the manuals, or a good book on Unix. Manual pages (type ``man
- man'') are usually a good source of reference information on exactly
- how to use a particular command or function.
-
- There is also a lot of GNU Info documentation, which is often more
- useful as a tutorial. Run Emacs and type C-h i, or type info info 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 progject and LDP are always looking for volunteers to
- upgrade their library documentation.
-
- Anyway, between the existing Texinfo documentation, and the manual
- pages in sections 2 and 3, should provide enough information to get
- started.
-
- As with all free software, the best tutorial is the source code
- itself.
-
- 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 sunsite.unc.edu in
- /pub/Linux/docs/man-pages.
-
- -------------------------------------------------------------------------------
-
- <sect1>What's all this about ELF? <label id="What's all this about ELF?">
- <P>
- See the ELF HOWTO by Daniel Barlow--note, this is not the file
- move-to-elf, which is a blow-by-blow account of how to upgrade to ELF
- manually.
-
- 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.
-
- 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.
-
- If you want to find out whether your system can run ELF binaries, look
- in <tt>/lib</tt> for a file named, ``<tt>libc.so.5</tt>.'' 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 <tt>ls</tt>, and run <tt>file</tt> on it:
- <verb>
- -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
- </verb>
- There is a patch to get 1.2.x to compile using the ELF compilers, and
- produce ELF core dumps, at tsx-11.mit.edu in /pub/packages/GCC/. You
- do not need the patch merely to run ELF binaries. 1.3.x and later do
- not need the patch at all.
-
- -------------------------------------------------------------------------------
-
- <sect1>What is a .gz file ? And a .tgz ? And ... ? <label id="What is a .gz file ? And a .tgz ? And ... ?">
- <P>
- .gz (and .z) files are compressed using GNU gzip. You need to use
- gunzip (which is a symlink to the gzip command which comes with most
- Linux installations) to unpack the file.
-
- .taz and .tz are tar files (made with Unix tar) compressed using standard
- Unix compress.
-
- .tgz (or .tpz) is a tar file compressed with gzip.
-
- .lsm is a Linux Software Map entry, in the form of a short text file.
- Details about the LSM and the LSM itself are available in the docs
- subdirectory on sunsite.unc.edu.
-
- .deb is a Debian Binary Package - the binary package format used by the
- Debian GNU/Linux distribution. It is manipulated using dpkg and dpkg-deb
- (available on Debian systems and from ftp.debian.org).
-
- .rpm is a Red Hat RPM package, which is used in the Red Hat distribution.
- They can be found on ftp.redhat.com.
-
- .bz2 is a file compressed by the more recent bzip program.
-
- The ``file'' command can often tell you what a file is.
-
- If you find that gzip complains when you try to uncompress a gzip'ed file
- you probably downloaded it in ASCII mode by mistake. You must download
- most things in binary mode--remember to type binary as a command in FTP
- before using, ``get,'' to get the file.
-
- -------------------------------------------------------------------------------
-
- <sect1>What does VFS stand for? <label id="What does VFS stand for?">
- <P>
- Virtual File System. It's the abstraction layer between the user and real
- file systems like ext2, Minix and MS-DOS. Among other things, its job is
- to flush the read buffer when it detects a disk change on the floppy disk
- drive.
- <verb>
- VFS: Disk change detected on device 2/0
- </verb>
-
- -------------------------------------------------------------------------------
-
- <sect1>What is a BogoMip? <label id="What is a BogoMip?">
- <P>
- ``BogoMips'' is a contraction of ``Bogus MIPS.'' MIPS stands for
- (depending who you listen to) Millions of Instructions per Second, or
- Meaningless Indication of Processor Speed.
-
- The number printed at boot time is the result of a kernel timing
- calibration, used for very short delay loops by some device drivers.
-
- As a very rough guide, the BogoMips rating for your machine will be
- approximately:
- <verb>
- 386SX clock * 0.14
- 386DX clock * 0.18
- 486Cyrix/IBM clock * 0.33
- 486SX/DX/DX2 clock * 0.50
- 586 clock * 0.39
- </verb>
- 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
- ``<ref id="When I add more memory, the system slows to a crawl.">.'')
-
- For values people have seen with other, rarer, chips, see the BogoMips
- Mini-HOWTO, on sunsite.unc.edu in /pub/Linux/docs/howto/mini/BogoMips/.
-
- -------------------------------------------------------------------------------
-
- <sect1>What is the Linux Journal and where can I get it? <label id="What is the Linux Journal and where can I get it?">
- <P>
- The Linux Journal is a monthly magazine (printed on paper) that is
- available on news stands and via subscription worldwide. Email
- <htmlurl url="mailto:linux@ssc.com" name="linux@ssc.com"> for details.
- Their URL is <htmlurl url="http://www.ssc.com/"
- name="http://www.ssc.com/">.
-
- -------------------------------------------------------------------------------
-
- <sect1>What online/free periodicals exist for Linux? <label id="What online/free periodicals exist for Linux?">
- <P>
- There are a number of recent additions to the list of periodicals
- devoted to Linux.
- <itemize>
- <item>Linux Gazette. <htmlurl url="http://www.linuxgazette.com"
- name="http://www.linuxgazette.com">.
- <item>Linux Weekly News. <htmlurl url="http://www.lwn.net"
- name="http://www.lwn.net">.
- <item>Slashdot. <htmlurl url="http://www.slashdot.org"
- name="http://www.slashdot.org">.
- <item>Freshmeat. <htmlurl url="http://www.freshmeat.org" name="http://www.freshmeat.org">.
- </itemize>
-
- [Jim Dennis, Robert Kiesling]
-
- -------------------------------------------------------------------------------
-
-
- <sect1>How many people use Linux? <label id="How many people use Linux?">
- <P>
- Linux is freely available, and no one is required to register their
- copy with any central authority, so it is difficult to know. Several
- businesses survive solely on selling and supporting Linux. The Linux
- newsgroups are some of the most heavily read on Usenet, so the number
- is likely in the hundreds of thousands. Accurate numbers probably
- don't exist.
-
- However, one brave soul, Harald T. Alvestrand, <htmlurl
- url="mailto:Harald.T.Alvestrand@uninett.no"
- name="Harald.T.Alvestrand@uninett.no">, has decided to try, and asks
- that if you use Linux, send a message to <htmlurl
- url="mailto:linux-counter@uninett.no" name="linux-counter@uninett.no">
- with one of the following subjects: ``I use Linux at home,'' ``I use
- Linux at work,'' or, ``I use Linux at home and at work.'' He will
- also accept `third party' registrations--ask him for details.
-
- Alternatively, you can register using the WWW forms found at
- <htmlurl url="http://domen.uninett.no/~hta/linux/counter.html"
- name="http://domen.uninett.no/˜hta/linux/counter.html">.
-
- He posts his counts to aun.uninett.no in /pub/misc/linux-counter/ or at
- the web page above.
-
- -------------------------------------------------------------------------------
-
- <sect1>How should I pronounce Linux? <label id="How should I pronounce Linux?">
- <P>
- This is a matter of religious debate, of course!
-
- If you want to hear Linus himself say how he pronounces it, download
- english.au or swedish.au from ftp.funet.fi (in
- /pub/Linux/PEOPLE/Linus/SillySounds/). If you have a sound card or the
- PC-speaker audio driver you can hear them by typing
- <verb>
- cat english.au >/dev/audio
- </verb>
- The difference isn't in the pronunciation of Linux but in the language
- Linus uses to say, ``hello.''
-
- 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).
-
- ===============================================================================
-
- <sect>Frequently encountered error messages. <label id="Frequently encountered error messages.">
- <P>
-
- -------------------------------------------------------------------------------
-
- <sect1>Modprobe can't locate module, ``XXX,'' and similar messages. <label id="Modprobe can't locate module, ``XXX,'' and similar messages.">
- <P>
-
- 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 /etc/modules.conf or
- /etc/modutils/aliases file, whichever is present on your system.
- <verb>
- alias <module-name> off
- </verb>
- And use the name of the module that appears in the error
- message.
-
- [J.H.M. Dassen]
-
- -------------------------------------------------------------------------------
-
- <sect1>Unknown terminal type linux and similar. <label id="Unknown terminal type linux and similar.">
- <P>
- In early kernels the default console terminal type has changed from
- ``console'' to ``linux.'' You must edit /etc/termcap to change the
- line reading:
- <verb>
- console|con80x25:\
- </verb>
- to
- <verb>
- linux|console|con80x25:\
- </verb>
- (there may be an additional dumb in there--if so it should be removed.)
-
- To get the editor to work you may need say
- <verb>
- TERM=console
- </verb>
- (for bash and ksh), or
- <verb>
- setenv TERM console
- </verb>
- for csh or tcsh.
-
- Some programs use /usr/lib/terminfo instead of /etc/termcap. For these
- programs you should upgrade your terminfo, which is part of ncurses.
-
- -------------------------------------------------------------------------------
-
- <sect1>lp1 on fire <label id="lp1 on fire">
- <P>
- This is a joke/traditional error message indicating that some sort of
- error is being reported by your printer, but that the error status isn't a
- valid one. It may be that you have some kind of I/O or IRQ conflict--
- check your cards' settings. Some people report that they get this message
- when their printer is switched off. Hopefully it isn't really on fire ...
-
- In newer kernels, this message reads, ``lp1 reported invalid error
- status (on fire, eh?)''
-
- -------------------------------------------------------------------------------
-
- <sect1>INET: Warning: old style ioctl... called! <label id="INET: Warning: old style ioctl... called!">
- <P>
- You are trying to use the old network configuration utilities. The
- new ones can be found on ftp.linux.org.uk in
- /pub/linux/Networking/PROGRAMS/NetTools/ (source only, I'm afraid).
-
- Note that they cannot be used just like the old-style programs. See
- the NET-2 HOWTO for instructions on how to set up the old-style
- networking programs correctly. Even better, see the NET-3 HOWTO and
- upgrade your networking software.
-
- -------------------------------------------------------------------------------
-
- <sect1>ld: unrecognized option '-m486' <label id="ld: unrecognized option '-m486'">
- <P>
- You have an old version of ld. Install a newer binutils package--this
- will contain an updated ld. Look on tsx-11.mit.edu in
- /pub/linux/packages/GCC/ for binutils-2.6.0.2.bin.tar.gz.
-
- -------------------------------------------------------------------------------
-
- <sect1>GCC says Internal compiler error. <label id="GCC says Internal compiler error.">
- <P>
- 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 Control-h i in Emacs, and select GCC from the menu) for details on
- how to report the error--make sure you have the latest version, though.
-
- 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.
-
- If the problem is not repeatable, you may be experiencing memory
- corruption--see <ref id="make says Error 139">.
-
- -------------------------------------------------------------------------------
-
- <sect1>make says Error 139 <label id="make says Error 139">
- <P>
- Your compiler driver (gcc) dumped core. You probably have a
- corrupted, buggy, or old version of GCC--get the latest release.
- Alternatively, you may be running out of swap space--see
- <ref id="My machine runs very slowly when I run GCC / X / ...">.
-
- 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.
-
- Linux, like any Unix, is a very good memory tester--much better than
- MS-DOS based memory test programs.
-
- Reportedly, some clone x87 math coprocessors can cause problems. Try
- compiling a kernel with math emulation
- (<ref id ="How do I upgrade/recompile my kernel?">.)
- You may need to use the ``no387'' 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.
-
- More information about this problem is available on the Web at
- <htmlurl url="http://www.bitwizard.nl/sig11/"
- name="http://www.bitwizard.nl/sig11/">.
-
- -------------------------------------------------------------------------------
-
- <sect1>shell-init: permission denied when I log in. <label id="shell-init: permission denied when I log in.">
- <P>
- Your root directory and all the directories up to your home directory
- must be readable and executable by everybody. See the manual page for
- chmod or a book on Unix for how to fix the problem.
-
- -------------------------------------------------------------------------------
-
- <sect1>No utmp entry. You must exec ... when I log in. <label id="No utmp entry. You must exec ... when I log in.">
- <P>
- Your /var/run/utmp is screwed up. You should have
- <verb>
- > /var/run/utmp
- </verb>
- in your <tt>/etc/rc.local</tt> or <tt>/etc/rc.d/*</tt>. See (``<ref
- id="I have screwed up my system and can't log in to fix it.">'') Note
- that the utmp may also be found in /var/adm/ or /etc/ on some
- older systems.
-
- -------------------------------------------------------------------------------
-
- <sect1>Warning--bdflush not running. <label id="Warning--bdflush not running.">
- <P>
- Modern kernels use a better strategy for writing cached disk blocks. In
- addition to the kernel changes, this involves replacing the old update
- program which used to write everything every 30 seconds with a more subtle
- daemon (actually a pair), known as bdflush.
-
- Get bdflush-n.n.tar.gz from the same place as the kernel source code
- (<ref id ="How do I upgrade/recompile my kernel?">) and compile and
- install it. Bdflush 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 update around.
-
- -------------------------------------------------------------------------------
-
- <sect1>Warning: obsolete routing request made. <label id="Warning: obsolete routing request made.">
- <P>
- This is nothing to worry about. The message means that your version
- route is a little out of date, compared to the kernel. You can make
- the message go away by getting a new version of route from the same
- place as the kernel source code. (<ref id ="How do I upgrade/recompile
- my kernel?">)
-
- -------------------------------------------------------------------------------
-
- <sect1>EXT2-fs: warning: mounting unchecked file system. <label id="EXT2-fs: warning: mounting unchecked file system.">
- <P>
- You need to run e2fsck (or fsck -t ext2 if you have the fsck front end
- program) with the -a option to get it to clear the `dirty' flag, and then
- cleanly unmount the partition during each shutdown.
-
- The easiest way to do this is to get the latest fsck, umount, and
- shutdown commands, available in Rik Faith's util-linux package
- (`<ref id="Where can I get Linux material by FTP?">'')
- You have to make sure that your /etc/rc*/ scripts use them correctly.
-
- NB: don't try to check a file system that's mounted read/write--this
- includes the root partition if you don't see
- <verb>
- VFS: mounted root ... read-only
- </verb>
- 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. Read the documentation that comes with util-linux to find
- out how to do this.
-
- Note that you need to specify the -n option to mount so it won't try
- to update /etc/mtab, since the root file system is still read-only,
- and this will otherwise cause it to fail.
-
- -------------------------------------------------------------------------------
-
- <sect1>EXT2-fs warning: maximal count reached. <label id="EXT2-fs warning: maximal count reached.">
- <P>
- 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 (e2fsprogs-0.5b.tar.gz at the time of writing)
- from the usual sites. (`<ref id="Where can I get Linux material by FTP?">'')
-
- The maximal number of mounts value can be examined and changed using
- the tune2fs program from this package.
-
- -------------------------------------------------------------------------------
-
- <sect1>EXT2-fs warning: checktime reached. <label id="EXT2-fs warning: checktime reached.">
- <P>
- 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. ``(<ref id="EXT2-fs
- warning: maximal count reached.">'')
-
- -------------------------------------------------------------------------------
-
- <sect1>df says Cannot read table of mounted file systems. <label id="df says Cannot read table of mounted file systems.">
- <P>
- There is probably something wrong with your <tt>/etc/mtab</tt> or
- <tt>/etc/fstab</tt> files.
- If you have a reasonably new version of mount, /etc/mtab should be emptied
- or deleted at boot time (in /etc/rc.local or /etc/rc.d/*), using something
- like
- <verb>
- rm -f /etc/mtab*
- </verb>
-
- Some versions of SLS have an entry for the root partition in /etc/mtab
- made in /etc/rc* by using rdev. This is incorrect--the newer versions
- of mount do this automatically.
-
- Other versions of SLS have a line in /etc/fstab that looks like:
- <verb>
- /dev/sdb1 /root ext2 defaults
- </verb>
- This is wrong. /root should read simply /.
-
- -------------------------------------------------------------------------------
-
- <sect1>fdisk says Partition X has different physical/logical ... <label id="fdisk says Partition X has different physical/logical ...">
- <P>
- If the partition number (X, above) is 1, this is the same problem as
- in ``<ref id="fdisk: Partition 1 does not start on cylinder boundary.">''
-
- 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 ``<ref id="How can I get Linux to
- work with my disk?">''
-
- -------------------------------------------------------------------------------
-
- <sect1>fdisk: Partition 1 does not start on cylinder boundary. <label id="fdisk: Partition 1 does not start on cylinder boundary.">
- <P>
- The version of fdisk 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.
-
- You can avoid the problem by getting the latest version of fdisk, 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 fdisk
- likes.
- <itemize>
- <item>Create partition 1 in the normal way. A `p' listing will produce the
- mismatch complaint.
- <item>Type `u' to set sector mode and do `p' again. Copy down the number from
- the ``End'' column.
- <item>Delete partition 1.
- <item>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 `p' output. Set the last sector to the value you
- wrote down in the step above.
- <item>Type `u' to reset cylinder mode and continue with other partitions.
- </itemize>
- 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.
-
- -------------------------------------------------------------------------------
-
- <sect1>fdisk says partition n has an odd number of sectors. <label id="fdisk says partition n has an odd number of sectors.">
- <P>
- 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.
-
- -------------------------------------------------------------------------------
-
- <sect1>mtools says cannot initialize drive XYZ <label id="mtools says cannot initialize drive XYZ">
- <P>
- This means that mtools is having trouble accessing the drive. This can be
- due to several things.
-
- Often this is due to the permissions on floppy drive devices (/dev/fd0*
- and /dev/fd1*) being incorrect--the user running mtools must have the
- appropriate access. See the manual page for chmod for details.
-
- Most versions of mtools distributed with Linux systems (not the standard
- GNU version) use the contents of a file /etc/mtools 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.
-
- For the easiest way to access your MS-DOS files (especially those on a
- hard disk partition) see <ref id="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!
-
- -------------------------------------------------------------------------------
-
- <sect1>At the start of booting: Memory tight <label id="At the start of booting: Memory tight">
- <P>
- 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.
- (``<ref id ="How do I upgrade/recompile my kernel?">)''
-
- -------------------------------------------------------------------------------
- <sect1>My syslog says `end_request: I/O error, ...'. <label id="My
- syslog says `end_request: I/O error, ...'.">
- <P>
- This error message, and messages like it, almost always indicate
- a hardware error with a hard drive.
-
- 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.
-
- This error message may also indicate a bad connection to the drive,
- especially with homebrew systems. If you install an IDE drive,
- ALWAYS use new cables. It's probably is a good idea with SCSI drives,
- too.
-
- 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.
-
- [Peter Moulder, Theodore T'so]
-
- -------------------------------------------------------------------------------
-
- <sect1>You don't exist. Go away. <label id="You don't exist. Go away.">
- <P>
- This is not a viral infection :-). It comes from programs like
- write, talk, and wall, if your invoking UID doesn't correspond to a valid
- user (probably due to /etc/passwd being corrupted), or if the session
- (pseudoterminal, specifically) you're using isn't properly registered in
- the utmp file (probably because you invoked it in a funny way).
-
- ===============================================================================
-
- <sect>The X Window System. <label id="The X Window System.">
- <P>
- -------------------------------------------------------------------------------
-
- <sect1>Does Linux support X Windows? <label id="Does Linux support X Windows?">
- <P>
- Yes. Linux uses XFree86 (the current version is 3.3.2, which is based on
- X11R6). You need to have a video card which is supported by XFree86. See
- the Linux XFree86 HOWTO for more details.
-
- Most Linux distributions nowadays come with an X installation.
-
- However, you can install or upgrade your own, from
- /pub/Linux/X11/Xfree86-* on sunsite.unc.edu and its mirror sites.
-
- -------------------------------------------------------------------------------
-
- <sect1>Where can I get an XF86Config for my system? <label id="Where can I get an XF86Config for my system?">
- <P>
- See the Linux XFree86 HOWTO, recent versions of Installation and
- Getting Started, and the instructions for the XF86Setup program.
-
- The contents of the XF86Config file depend on the your exact
- combination of video card and monitor. It can either be configured by
- hand, or using the XF86Setup utility. Read the instructions that
- came with XFree86, in /usr/X11R6/lib/X11/etc. The file you probably
- need to look at most is README.Config.
-
- You should <em>not</em> use the sample XF86Config.eg 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 comp.os.linux.x asking for an XF86Config, and please
- don't answer such requests.
-
- -------------------------------------------------------------------------------
-
- <sect1>xterm logins show up strangely in who, finger. <label id="xterm logins show up strangely in who, finger.">
- <P>
- The xterm that comes with XFree86 2.1 and earlier doesn't correctly
- understand the format that Linux uses for the /var/adm/utmp file, where
- the system records who is logged in. It therefore doesn't set all the
- information correctly.
-
- The Xterms in XFree86 3.1 and later versions fix this problem.
-
- -------------------------------------------------------------------------------
-
- <sect1>I can't get X Windows to work right. <label id="I can't get X Windows to work right.">
- <P>
- Read the XFree86 HOWTO--note the question and answer section.
-
- Try reading comp.windows.x.i386unix--specifically read the the FAQ for
- that group.
-
- Please don't post X Windows or XFree86 related questions to
- comp.os.linux.x unless they are Linux-specific.
-
- ===============================================================================
-
- <sect>Questions applicable to very out-of-date software. <label id="Questions applicable to very out-of-date software.">
- <P>
- The questions in this section are only relevant to users of software that
- is at least three months old.
-
- Please let me know if you find the answer to a problem you had here, as
- unused questions in this section will eventually disappear.
- (See ``<ref id="Feedback is invited.">'')
-
- -------------------------------------------------------------------------------
-
- <sect1>fdisk says cannot use nnn sectors of this partition. <label id="fdisk says cannot use nnn sectors of this partition.">
- <P>
- Originally Linux only supported the Minix file system, which cannot
- use more than 64Mb per partition. This limitation is not present in
- the more advanced file systems that are now available, such as ext2fs
- (the 2nd version of the Extended File System, the `standard' Linux
- file system).
-
- If you intend to use ext2fs you can ignore the message.
-
- -------------------------------------------------------------------------------
-
- <sect1>GCC sometimes uses huge amounts of virtual memory and thrashes.<label id="GCC sometimes uses huge amounts of virtual memory and thrashes.">
- <P>
- Older versions of GCC had a bug which made them use lots of memory if you
- tried to compile a program which had a large static data table in it.
-
- You can either upgrade your version of GCC, or add more swap space if
- necessary, or just wait for the program to finish compiling.
-
- ===============================================================================
-
- <sect>How to get further assistance. <label id="How to get further assistance.">
- <P>
-
- -------------------------------------------------------------------------------
-
- <sect1>You still haven't answered my question! <label id="You still haven't answered my question!">
- <P>
- 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?
-
- If you think an answer is incomplete or inaccurate, please e-mail Robert
- Kiesling at <htmlurl url="mailto:kiesling@terracom.net" name="kiesling@terracom.net">.
-
- Read the appropriate Linux Documentation Project books--see
- ``<ref id="Where can I get the HOWTO's and other documentation?">''
-
-
- If you're a Unix newbie, read the FAQ for comp.unix.questions, and those
- for any of the other comp.unix.* groups that may be relevant.
-
- Linux has so much in common with commercial Unices, that almost
- everything you read there will apply to Linux. The FAQs, like all
- FAQs, be found on rtfm.mit.edu in /pub/usenet/news.answers (the
- <htmlurl url="mailto:mail-server@rtfm.mit.edu"
- name="mail-server@rtfm.mit.edu"> can send you these files, if you
- don't have FTP access). There are mirrors of rtfm's FAQ archives on
- various sites--check the Introduction to *.answers posting, posted,
- or look in news-answers/introduction in the directory above.
-
- 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.
-
- Try experimenting--that's the best way to get to know Unix and Linux.
-
- Read the documentation. Check the manual pages (type ``man man'' if
- you don't know about manual pages. Try ``man -k subject''--it often
- lists useful and relevant manual pages.
-
- Check the Info documentation (type C-h i, i.e. Control H followed by I
- in Emacs). This isn't just for Emacs. For example, the GCC
- documentation lives here as well.
-
- There will also often be a README file with a package that gives installation
- and/or usage instructions.
-
- 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.
-
- Read comp.os.linux.announce--this often contains very important
- information for all Linux users.
-
- General X Window System questions belong in comp.windows.x.i386unix,
- not in comp.os.linux.x. 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 comp.os.linux.* newsgroup. Make sure you
- read the next question first. ``(<ref id="What to put in a request
- for help.">)''
-
- -------------------------------------------------------------------------------
-
- <sect1>What to put in a request for help. <label id="What to put in a request for help.">
- <P>
- Please read the following advice carefully about how to write your
- posting or email. 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.
-
- This advice applies both to postings asking for advice and to personal
- email sent to experts and fellow users.
-
- Make sure you give full details of the problem, including:
- <itemize>
- <item>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 <tt>--version</tt> option.
-
- <item>Which Linux release you're using (Red Hat, Slackware, Debian, or
- whatever) and what version of that release.
-
- <item>The exact and complete text of any error messages printed.
-
- <item>Exactly what behavior you expected, and exactly what behavior
- you observed. A transcript of an example session is a good way to
- show this.
-
- <item>The contents of any configuration files used by the program in question
- and any related programs.
-
- <item>What version of the kernel and shared libraries you have installed.
- The kernel version can be found by typing uname -a, and the shared
- library version by typing ls -l /lib/libc.so.4.
-
- <item>Details of what hardware you're running on, if it seems appropriate.
- </itemize>
- 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.
-
- 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.
-
- If you report an `unable to handle kernel paging request' message,
- follow the instructions in the Linux kernel sources README file for
- turning the numbers into something more meaningful. If you don't do
- this, no one who reads your post will be able to do it for you. The
- mapping from numbers to function names varies from one kernel to
- another.
-
- Put a summary paragraph at the top of your posting.
-
- At the bottom of your posting, ask for responses by email and say
- you'll post a summary. Back this up by using Followup-To: poster.
- 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 comp.os.linux.announce.
-
- 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.
-
- 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.
-
- Remember that you should not post email sent to you personally without the
- sender's permission.
-
- -------------------------------------------------------------------------------
-
- <sect1>I want to mail someone about my problem. <label id="I want to mail someone about my problem.">
- <P>
- 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.
-
- Please put everything in your e-mail message that you would put in a
- posting asking for help.
-
- Finally, remember that, despite the fact that most of the Linux community
- are very helpful and responsive to e-mailed questions, you're asking for
- help from unpaid volunteers, so you have no right to expect an answer.
-
- ===============================================================================
- <sect>Administrative information and acknowledgments. <label id="Administrative information and acknowledgments.">
- <P>
- -------------------------------------------------------------------------------
-
- <sect1>Feedback is invited. <label id="Feedback is invited.">
- <P>
- Please send me your comments on this FAQ.
-
- I accept contributions to the FAQ in any format. All contributions,
- comments, and corrections are gratefully received. Please send e-mail
- to <htmlurl url="mailto:kiesling@terracom.net"
- name="kiesling@terracom.net">.
-
- If you wish to refer to a question in the FAQ, it's better for me if
- you do so by the question heading, rather than number. The
- question numbers are generated automatically, and I don't see them in
- the source file I edit.
-
- I prefer comments in English to patch files--context diff is not my
- first language.
-
- -------------------------------------------------------------------------------
-
- <sect1>Formats in which this FAQ is available. <label id="Formats in which this FAQ is available.">
- <P>
- This document is available as an ASCII text file, an HTML World Wide
- Web page, Postscript, and as a USENET news posting.
-
- All of these formats are generated from SGML source using SGML Tools
- and the LinuxDoc DTD.
-
- The HTML version of this FAQ is available as
- <htmlurl url="http://sunsite.unc.edu/LDP/"
- name="http://sunsite.unc.edu/LDP/">
- at other sites.
-
- The Usenet version is posted regularly to news.answers, comp.answers,
- comp.os.linux.misc, and comp.os.linux.announce. It is archived at
- <htmlurl
- url="ftp://rtfm.mit.edu/pub/usenet-by-hierarchy/comp/os/linux/misc/"
- name="ftp://rtfm.mit.edu/pub/usenet-by-hierarchy/comp/os/linux/misc/">.
-
- The most recent text, HTML, SGML, and Postscript versions are
- available from the Linux archives at sunsite.unc.edu,
- and from
- <htmlurl url="http://www.terracom.net/~kiesling"
- name="http://www.terracom.net/˜kiesling">
-
- -------------------------------------------------------------------------------
-
- <sect1>Authorship and acknowledgments. <label id="Authorship and acknowledgments.">
- <P>
- This FAQ is compiled and maintained by Robert Kiesling <htmlurl
- url="mailto:kiesling@ix.netcom.com" name="kiesling@ix.netcom.com">,
- with assistance and comments from Linux activists all over the
- world.
-
- Special thanks are due to Matt Welsh, who moderated
- comp.os.linux.announce and comp.os.linux.answers, coordinated the
- HOWTO's and wrote substantial portions of many of them, Greg Hankins
- and Timothy Bynum, the former and current Linux Documentation Project
- HOWTO maintainers, Lars Wirzenius and Mikko Rauhala, the former and
- current moderators of comp.os.linux.announce, 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.
-
- Last but not least, thanks to Linus Torvalds and the other contributors to
- Linux for giving us something to talk about!
-
- -------------------------------------------------------------------------------
-
- <sect1>Disclaimer and Copyright. <label id="Disclaimer and Copyright.">
- <P>
- Note that this document is provided `as is'. The information in it is
- <em>not</em> warranted to be correct. Use it at your own risk.
-
- Linux Frequently Asked Questions with Answers is Copyright (c) 1997,
- 1998 by Robert Kiesling <htmlurl url="mailto:kiesling@terracom.net"
- name="kiesling@terracom.net">, under the copyright of the Linux
- Documentation Project. The full text of the LDP copyright is
- available via anonymous FTP from sunsite.unc.edu, in the directory
- /pub/Linux/docs/LDP, and is included below.
-
- Portions are Copyright (c) 1994, 1995, 1996 by Ian Jackson, the previous
- Linux FAQ maintainer.
-
- 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.
-
- Note that this restriction is not intended to prohibit charging for the
- service of printing or copying the document.
-
- Exceptions to these rules may be granted. I would be happy to answer
- any questions regarding this copyright. E-mail me at <htmlurl
- url="mailto:kiesling@ix.netcom.com" name="kiesling@ix.netcom.com">. As
- the license below says, these restrictions are here to protect the
- contributors, not to restrict you as educators and learners.
-
-
-
- <verb>
- LINUX DOCUMENTATION PROJECT COPYING LICENSE
-
- Last modified 6 January 1997
-
-
- The following copyright license applies to all works by the Linux
- Documentation Project.
-
- Please read the license carefully---it is somewhat like the GNU
- General Public License, but there are several conditions in it that
- differ from what you may be used to. If you have any questions, please
- email the LDP coordinator, mdw@sunsite.unc.edu.
-
- The Linux Documentation Project manuals may be reproduced and
- distributed in whole or in part, subject to the following conditions:
-
- All Linux Documentation Project manuals are copyrighted by their
- respective authors. THEY ARE NOT IN THE PUBLIC DOMAIN.
- * The copyright notice above and this permission notice must be
- preserved complete on all complete or partial copies.
- * Any translation or derivative work of Linux Installation and
- Getting Started must be approved by the author in writing before
- distribution.
- * If you distribute Linux Installation and Getting Started in part,
- instructions for obtaining the complete version of this manual
- must be included, and a means for obtaining a complete version
- provided.
- * Small portions may be reproduced as illustrations for reviews or
- quotes in other works without this permission notice if proper
- citation is given.
- * The GNU General Public License referenced below may be reproduced
- under the conditions given within it.
-
- Exceptions to these rules may be granted for academic purposes: Write
- to the author and ask. These restrictions are here to protect us as
- authors, not to restrict you as educators and learners. All source
- code in Linux Installation and Getting Started is placed under the GNU
- General Public License, available via anonymous FTP from the GNU
- archive site.
-
-
-
- PUBLISHING LDP MANUALS
-
- If you're a publishing company interested in distributing any of the
- LDP manuals, read on.
-
- By the license given in the previous section, anyone is allowed to
- publish and distribute verbatim copies of the Linux Documentation
- Project manuals. You don't need our explicit permission for this.
- However, if you would like to distribute a translation or derivative
- work based on any of the LDP manuals, you must obtain permission from
- the author, in writing, before doing so.
-
- All translations and derivative works of LDP manuals must be placed
- under the Linux Documentation License given in the previous section.
- That is, if you plan to release a translation of one of the manuals,
- it must be freely distributable by the above terms.
-
- You may, of course, sell the LDP manuals for profit. We encourage you
- to do so. Keep in mind, however, that because the LDP manuals are
- freely distributable, anyone may photocopy or distribute printed
- copies free of charge, if they wish to do so.
-
- We do not require to be paid royalties for any profit earned from
- selling LDP manuals. However, we would like to suggest that if you do
- sell LDP manuals for profit, that you either offer the author
- royalties, or donate a portion of your earnings to the author, the LDP
- as a whole, or to the Linux development community. You may also wish
- to send one or more free copies of the LDP manual that you are
- distributing to the author. Your show of support for the LDP and the
- Linux community will be very appreciated.
-
- We would like to be informed of any plans to publish or distribute LDP
- manuals, just so we know how they're becoming available. If you are
- publishing or planning to publish any LDP manuals, please send email
- to Matt Welsh (email mdw@sunsite.unc.edu).
-
- We encourage Linux software distributors to distribute the LDP manuals
- (such as the Installation and Getting Started Guide) with their
- software. The LDP manuals are intended to be used as the ``official''
- Linux documentation, and we'd like to see mail-order distributors
- bundling the LDP manuals with the software. As the LDP manuals mature,
- hopefully they will fulfill this goal more adequately.
-
-
- Matt Welsh, mdw@sunsite.unc.edu
- </verb>
-
- </article>
-