Linux Frequently Asked Questions with Answers

  This is the list of Frequently Asked Questions for Linux, the free,
  POSIX compatible operating system kernel that runs on many modern
  computer systems. Linux uses free, GNU system utilities and
  application software, although commercial programs are available also.
  Originally written for 386/486/586 Intel/ISA bus machines, Linux
  versions exist for Alpha, Sparc, MIPS, ARM, 680x0, PPC, and many other
  platforms. (``[1]What is Linux?'') This FAQ is meant to be read in
  conjunction with the Linux Documentation Project's HOWTO series.
  (``[2]Where Can I Get Linux Material by FTP?'' and, ``[3]Where Can I
  Get the HOWTO's and Other Documentation?'') The INFO-SHEET and
  META-FAQ also list sources of Linux information. Please read them,
  and, ``[4]You Still Haven't Answered My Question!'' before posting to
  a Usenet news group. You can also get Postscript, HTML, and SGML
  versions of this document. (``[5]Formats in Which This FAQ Is
  Available.'')
    _________________________________________________________________

  Table of Contents
  1. [6]Introduction and General Information

       1.1. [7]What is Linux?
       1.2. [8]Where Do I Start?
       1.3. [9]What Software Does Linux Support?
       1.4. [10]Does Linux Run on My Computer? What Hardware Is
               Supported?

       1.5. [11]What Ports to Other Processors Are There?
       1.6. [12]How Much Hard Disk Space Does Linux Need?
       1.7. [13]How Much Memory Does Linux Need?
       1.8. [14]How Much Memory Can Linux Use?
       1.9. [15]Does Linux Support the USB Bus?
       1.10. [16]Is Linux Public Domain? Copyrighted?
       1.11. [17]Is Linux *nix?

  2. [18]Topics of Current Interest.

       2.1. [19]What Resources Are There for Linux DeCSS and Other Open
               Source DVD Software?

       2.2. [20]Where Is Information About Electronic Privacy Laws that
               Affect ISP's?

       2.3. [21]Where Can I Find Out About Linux and the Millennium
               (Y2K) Bug?

       2.4. [22]How Is the DocBook Version of the FAQ Produced?

  3. [23]Network Sources and Resources

       3.1. [24]Where Can I Get the Latest Kernel Version?
       3.2. [25]Where Can I Get the HOWTO's and Other Documentation?
       3.3. [26]Where Should I Look on the World Wide Web for Linux
               Stuff?

       3.4. [27]What News Groups Are There for Linux?
       3.5. [28]What Other FAQ's Are There for Linux?
       3.6. [29]Where Can I Get Linux Material by FTP?
       3.7. [30]I Don't Have FTP Access. Where Do I Get Linux?
       3.8. [31]I Don't Have Usenet Access. Where Do I Get Information?
       3.9. [32]What Mailing Lists Are There?
       3.10. [33]Where Are Linux Legal Issues Discussed?
       3.11. [34]Are the News Groups Archived Anywhere?
       3.12. [35]Where Can I Find Out About Security Related Issues?

  4. [36]Compatibility with Other Operating Systems

       4.1. [37]Can Linux Share My Disk with DOS? OS/2? 386BSD? Win95?
       4.2. [38]How Do I Access Files on My DOS Partition Or Floppy?
       4.3. [39]Does Linux Support Compressed Ext2 file Systems?
       4.4. [40]Can I Use My Stacked/DBLSPC/Etc. DOS Drive?
       4.5. [41]Can I Access OS/2 HPFS Partitions from Linux?
       4.6. [42]Can Linux Access Amiga File Systems?
       4.7. [43]Can Linux Access BSD, SysV, Etc. UFS?
       4.8. [44]Can Linux Access SMB File Systems?
       4.9. [45]Can Linux Access Macintosh File Systems?
       4.10. [46]Can I Run Microsoft Windows Programs under Linux?
       4.11. [47]Where Can I Get Information about NFS Compatibility?
       4.12. [48]Can I Use True Type Fonts with Linux?
       4.13. [49]How Can I Boot Linux from MS-DOS?
       4.14. [50]How Can I Boot Linux from OS/2's Boot Manager?

  5. [51]File Systems, Disks, and Drives

       5.1. [52]How Can I Get Linux to Work with My Disk?
       5.2. [53]How Can I Undelete Files?
       5.3. [54]How Do I Make Backups?
       5.4. [55]How Do I Resize a Partition (Non-Destructively)?
       5.5. [56]Is There a Defragmenter for Ext2fs, Etc.?
       5.6. [57]How Do I Format and Create a File System on a Floppy?
       5.7. [58]Does Linux Support Virtualized File Systems Like RAID?
       5.8. [59]Does Linux Support File System Encryption?
       5.9. [60]I Get Nasty Messages about Inodes, Blocks, and the Like.
       5.10. [61]My Swap Area Isn't Working.
       5.11. [62]How Do I Add Temporary Swap Space?
       5.12. [63]How Do I Remove LILO So My System Boots DOS Again?
       5.13. [64]Why Can't I Use fdformat Except as Root?
       5.14. [65]My Ext2fs Partitions Are Checked Each Time I Reboot.
       5.15. [66]My Root File System Is Read-Only!
       5.16. [67]I Have a Huge /proc/kcore! Can I Delete It?
       5.17. [68]The AHA1542C Doesn't Work with Linux.
       5.18. [69]Where Do I Find the Journalling File System?

  6. [70]Porting, Compiling and Obtaining Programs

       6.1. [71]How Do I Compile Programs?
       6.2. [72]How Do I Install GNU Software?
       6.3. [73]Where Do I Get Java?
       6.4. [74]How Do I Port XXX to Linux?
       6.5. [75]What Is ld.so and Where Do I Get It?
       6.6. [76]How Do I Upgrade the Libraries without Trashing My
               System?

       6.7. [77]Has Anyone Ported/Compiled/Written XXX for Linux?
       6.8. [78]Can I Use Code or a Compiler Compiled for a 486 on My
               386?

       6.9. [79]What Does ``gcc -O6'' Do?
       6.10. [80]Where Are linux/*.h and asm/*.h?
       6.11. [81]I Get Errors when I Try to Compile the Kernel.
       6.12. [82]How Do I Make a Shared Library?
       6.13. [83]My Executables Are (Very) Large.
       6.14. [84]Does Linux Support Threads or Lightweight Processes?
       6.15. [85]Where Can I Get lint for Linux?
       6.16. [86]Where Can I find Kermit for Linux?
       6.17. [87]I Want to Use Linux with My Cable Modem.
       6.18. [88]Is There an ICQ Program That Runs under Linux?

  7. [89]Solutions to Common Miscellaneous Problems

       7.1. [90]PPP Connection Dies when Sending Large Files.
       7.2. [91]Free Dumps Core.
       7.3. [92]How Do I Keep Track of All My Bookmarks in Netscape?
       7.4. [93]The Computer Has the Wrong Time.
       7.5. [94]Setuid Scripts Don't Seem to Work.
       7.6. [95]Free Memory as Reported by free Keeps Shrinking.
       7.7. [96]When I Add More Memory, the System Slows to a Crawl.
       7.8. [97]Some Programs (E.g. xdm) Won't Let Me Log in.
       7.9. [98]Some Programs Let Me Log in with No Password.
       7.10. [99]My Machine Runs Very Slowly when I Run GCC / X / ...
       7.11. [100]I Can Only Log in as Root.
       7.12. [101]My Screen Is All Full of Weird Characters Instead of
               Letters.

       7.13. [102]I Have Screwed Up My System and Can't Log in to Fix
               It.

       7.14. [103]I Forgot the root Password.
       7.15. [104]I've Discovered a Huge Security Hole in rm!
       7.16. [105]lpr and/or lpd Don't Work.
       7.17. [106]Timestamps on Files on MS-DOS Partitions Are Set
               Incorrectly

       7.18. [107]How Do I Get LILO to Boot the Kernel Image?
       7.19. [108]I Upgraded the Kernel and Now My PCMCIA Card Doesn't
               Work.

  8. [109]How Do I Do This or Find Out That...

       8.1. [110]How Do I Know If My Notebook Runs Linux?
       8.2. [111]How Do I Install Linux Using FTP?
       8.3. [112]How Can I Get Scrollback in Text Mode?
       8.4. [113]How Do I Get E-mail to Work?
       8.5. [114]How Do I Switch Virtual Consoles? How Do I Enable Them?
       8.6. [115]How Do I Set the Time Zone?
       8.7. [116]How Do I Get Dial-up PPP to Work?
       8.8. [117]What Version of Linux and What Machine Name Am I Using?
       8.9. [118]How Can I Enable or Disable Core Dumps?
       8.10. [119]How Do I Upgrade/Recompile My Kernel?
       8.11. [120]Can I Have More than 3 Serial Ports by Sharing
               Interrupts?

       8.12. [121]How Do I Update (For Example) the System's Perl
               Documentation?

       8.13. [122]How Do I Configure Emacs to Start with My Default
               Settings?

       8.14. [123]How Do I Make a Rescue Floppy?
       8.15. [124]How Do I Remap My Keyboard to UK, French, Etc.?
       8.16. [125]How Do I Get NUM LOCK to Default to On?
       8.17. [126]How Do I Set (Or Reset) My Initial Terminal Colors?
       8.18. [127]How Can I Have More Than 128Mb of Swap?

  9. [128]Miscellaneous Information and Questions Answered

       9.1. [129]How Do I Program XYZ Under Linux?
       9.2. [130]What's All This about ELF? glibc?
       9.3. [131]How Do I Determine What Packages Are Installed on My
               System?

       9.4. [132]What Is a .gz file? And a .tgz? And .bz2? And... ?
       9.5. [133]What Does VFS Stand For?
       9.6. [134]What is a BogoMip?
       9.7. [135]What Online/Free Periodicals Exist for Linux?
       9.8. [136]How Many People Use Linux?
       9.9. [137]How Many People Use Linux? (Redux.)
       9.10. [138]How Should I Pronounce Linux?
       9.11. [139]Where Is the Linux Food Page?
       9.12. [140]Where Can I Find Out about Free Software Projects?

  10. [141]Frequently Encountered Error Messages

       10.1. [142]Modprobe Can't Locate Module, XXX, and Similar
               Messages.

       10.2. [143]Unknown Terminal Type ``linux'' and Similar.
       10.3. [144]INET: Warning: old style ioctl... called!
       10.4. [145]ld: unrecognized option '-m486'
       10.5. [146]GCC says, ``Internal compiler error.''
       10.6. [147]Make Says, ``Error 139.''
       10.7. [148]Shell-Init: Permission Denied when I Log in.
       10.8. [149]No Utmp Entry. You Must Exec ... when Logging in.
       10.9. [150]Warning--bdflush Not Running.
       10.10. [151]Warning: obsolete routing request made.
       10.11. [152]EXT2-fs: warning: mounting unchecked file system.
       10.12. [153]EXT2-fs warning: maximal count reached.
       10.13. [154]EXT2-fs warning: checktime reached.
       10.14. [155]df Says, ``Cannot read table of mounted file
               systems.''

       10.15. [156]fdisk Says, ``Partition X has different
               physical/logical...''

       10.16. [157]fdisk: Partition 1 does not start on cylinder
               boundary.

       10.17. [158]fdisk Says Partition n Has an Odd Number of Sectors.
       10.18. [159]A Mtools Utility Says It Cannot Initialize Drive XYZ.
       10.19. [160]At the Start of Booting: Memory tight
       10.20. [161]My Syslog says, ``end_request: I/O error, ....''
       10.21. [162]``You don't exist. Go away.''

  11. [163]The X Window System

       11.1. [164]Does Linux Support X?
       11.2. [165]How Do I Get the X Window System to Work?
       11.3. [166]Where Can I Get a Ready-Made XF86Config for My System?
       11.4. [167]What Desktop Environments Run on Linux?
       11.5. [168]xterm Logins Show Up Strangely in who, finger.

  12. [169]How to Get Further Assistance

       12.1. [170]You Still Haven't Answered My Question!
       12.2. [171]What to Put in a Request for Help.
       12.3. [172]I Want to Mail Someone about My Problem.

  13. [173]Acknowledgments and Administrivia

       13.1. [174]Feedback Is Invited.
       13.2. [175]Formats in Which This FAQ Is Available.
       13.3. [176]Authorship and Acknowledgments.
       13.4. [177]Disclaimer and Copyright.

1. Introduction and General Information

1.1. What is Linux?

  Linux is the kernel of operating systems that look like and perform as
  well or better than the famous operating system from AT&T Bell Labs.
  Linus Torvalds and a loosely knit team of volunteer hackers from
  across the Internet wrote (and still are writing) Linux from scratch.
  It has all of the features of a modern, fully fledged operating
  system: true multitasking, virtual memory, shared libraries, demand
  loading, shared, copy-on-write executables, proper memory management,
  and TCP/IP networking.

  Most people, however, refer to the operating system kernel, system
  software, and application software, collectively, as "Linux," and the
  convention is used in this FAQ as well.

  Linux ran originally on 386/486/586-based PC's, using the hardware
  facilities of the 80386 processor family (TSS segments, et al.) to
  implement its features. There are now many ports to other hardware
  platforms. (``[178]What Ports to Other Processors Are There?'')

  Linus Torvalds is working on a Linux distribution specifically
  designed for mobile computers and the Crusoe Smart Microprocessor
  developed by Transmeta. There is a API specification and developer's
  kit that are available from Transmeta. There is more information at
  [179]http://www.transmeta.com/. The Crusoe is a microprocessor chip
  that provides low power consumption, power management features,
  workstation performance, and in-software configuration, but it's not a
  complete system, so it's probably mostly harmless.

  See the Linux INFO-SHEET for more details. (``[180]Where Can I Get the
  HOWTO's and Other Documentation?'')

  The Linux kernel is distributed under the GNU General Public License.
  (``[181]Is Linux Public Domain? Copyrighted?'')

  There is a historical archive of all versions of the Linux kernel at
  [182]http://ps.cus.umist.ac.uk/~rhw/kernel.versions.html.
    _________________________________________________________________

1.2. Where Do I Start?

  There are a handful of major Linux distributions. For information
  about them, and how they are installed, see Matthew Welsh's
  Installation and Getting Started, or IGS for short. It's located at
  the Linux Documentation Project Home Page,
  [183]http://www.linuxdoc.org/, and on the Linux FAQ home page,
  [184]http://www.mainmatter.com/

  The information in IGS is somewhat dated now. More up-to-date
  information about first-time Linux installation is located in the
  LDP's Installation HOWTO, also located at the LDP Home Page.

  Commercial distributions have begun to appear on the shelves of many
  book and electronics stores in the last six months, at least in the
  U.S., and some hardware vendors now ship systems with Linux
  pre-installed.

  There is a very thorough installation guide on line at
  [185]http://heather.cs.ucdavis.edu/~matloff/linux.html.

  Some distributions can still be installed via anonymous FTP from
  various Linux archive sites, but in many cases, the size of the
  distribution makes this impractical. (``[186]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.
    _________________________________________________________________

1.3. What Software Does Linux Support?

  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.3. The FTP archives are at [187]ftp://ftp.dosemu.org/dosemu The
  Web site is [188]http://www.dosemu.org.

  The emulator can run DOS itself and some (but not all) DOS
  applications. Be sure to look at the README file to determine which
  version you should get. Also, see the DOSEMU-HOWTO (slightly dated at
  this point--it doesn't cover the most recent version of the program),
  at [189]ftp://metalab.unc.edu/pub/Linux/docs/HOWTO.

  Work has been progressing on an emulator for Microsoft Windows
  binaries. (``[190]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
  [191]ftp://tsx-11.mit.edu/pub/linux/BETA/ibcs2/README.

  For more information see the INFO-SHEET, which is one of the HOWTO's
  (``[192]Where Can I Get the HOWTO's and Other Documentation?'' and
  ``[193]How Do I Port XXX to Linux?'')

  Some companies have commercial software available, including Motif,
  WordPerfect, and Framemaker. They often announce their availability in
  comp.os.linux.announce-- try searching the archives. (``[194]Are the
  News Groups Archived Anywhere?'')
    _________________________________________________________________

1.4. Does Linux Run on My Computer? What Hardware Is Supported?

  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. (``[195]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,
  [196]http://www.dgmicro.com/mca. See also (``[197]Where Should I Look
  on the World Wide Web for Linux Stuff?'')

  Linux runs on most current laptops, with a decent X display. Refer to
  How do I know if my notebook runs Linux? For details of exactly which
  PC's, video cards, disk controllers, etc. work see the INFO-SHEET and
  the Hardware-HOWTO. (``[198]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
  [199]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 Documentation/smp.tex in the Linux kernel source code
  distribution.

  See the question below for a (probably incomplete) list of hardware
  platforms Linux has been ported to.
    _________________________________________________________________

1.5. What Ports to Other Processors Are There?

  There is a reasonably complete list of Linux ports at
  [200]http://www.ctv.es/USERS/xose/linux/linux_ports.html, and at
  [201]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
  [202]http://www.clark.net/pub/lawrencc/linux/faq/faq.html. The URL of
  the Linux/m68k home page is [203]http://www.linux-m68k.org.

  There is a m68k port for the Amiga by Jes Sorensen, which is located
  at [204]ftp://sunsite.auc.dk/pub/os/linux/680x0/redhat/. The
  installation FAQ for the package, by Ron Flory, is at
  [205]http://www.feist.com/~rjflory/linux/rh/.

  There is also a linux-680x0 mailing list. (``[206]What Mailing Lists
  Are There?'')

  There is (or was) a FTP site for the Linux-m68k project on
  [207]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
  [208]http://www.debian.org/MailingLists/subscribe

  One of the Linux-PPC project pages has moved recently. Its location is
  [209]http://www.debian.org/MailingLists/subscribe.
  [210]http://www.linuxppc.org, and the archive site is
  [211]ftp://ftp.linuxppc.org/linuxppc.

  There is a Linux-PPC support page at
  [212]http://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 http://www.mklinux.apple.com.

  There are two sites for the Linux iMac port:
  [213]http://w3.one.net/~johnb/imaclinux, and
  [214]http://www.imaclinux.net:8080/content/index.html.

  A port to the 64-bit DEC Alpha/AXP is at
  [215]http://www.azstarnet.com/~axplinux/. There is a mailing list at
  vger.rutgers.edu. (``[216]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
  [217]ftp://ftp.fnet.fr/linux-mips and
  [218]ftp://ftp.linux.sgi.com/pub/mips-linux. Interested people may
  mail their questions and offers of assistance to
  [219]mailto:[email protected].

  There is (or was) also a MIPS channel on the Linux Activists mail
  server and a linux-mips mailing list. (``[220]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
  comp.sys.acorn.misc. There is a FAQ at
  [221]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,
  [222]http://www.geog.ubc.ca/sparclinux.html. The SPARC/Linux archives
  are at [223]ftp://vger.rutgers.edu/pub/linux/Sparc.

  The Home Page of the UltraSPARC port ("UltraPenguin") is located at
  [224]http://sunsite.mff.cuni.cz/linux/ultrapenguin-1.0/.

  There is also a port ("Hardhat") to SGI/Indy machines. The URL is
  [225]http://www.linux.sgi.com/.
    _________________________________________________________________

1.6. How Much Hard Disk Space Does Linux Need?

  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.

  Installing a commercial distribution that has a desktop GUI
  environment, commercial word processor, and front-office productivity
  suite, will claim an additional 1 GB of disk space, approximately.
    _________________________________________________________________

1.7. How Much Memory Does Linux Need?

  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 Apps will run slowly because
  they need to swap out to disk.

  Some recent applications, like the later versions of Netscape, require
  as much as 64MB of physical memory.

  There is a distribution, "Small Linux," that will run on machines with
  2MB of RAM. Refer to Where can I get Linux material by FTP?
    _________________________________________________________________

1.8. How Much Memory Can Linux Use?

  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:

  append="mem=XXM"

  Where "XX" is the amount of memory, specified as megabytes; for
  example, '128M'. For further details, see the lilo manual page.
    _________________________________________________________________

1.9. Does Linux Support the USB Bus?

  Linux supports a few dozen USB devices at present, and work is
  underway to develop device drivers for additional hardware devices.
  There is a Web page devoted to the subject, at
  [226]http://www.linux-usb.org/. In addition, there is a LDP HOWTO. See
  also, (``[227]Where Should I Look on the World Wide Web for Linux
  Stuff?'')
    _________________________________________________________________

1.10. Is Linux Public Domain? Copyrighted?

  The Linux trademark belongs to Linus Torvalds. He has placed the Linux
  kernel under the GNU General Public License, which basically means
  that you may freely copy, change, and distribute it, but you may not
  impose any restrictions on further distribution, and you must make the
  source code available.

  This is not the same as Public Domain. See the Copyright FAQ,
  [228]ftp://rtfm.mit.edu/pub/usenet/news.answers/law/copyright, for
  details.

  Full details are in the file COPYING in the Linux kernel sources
  (probably in /usr/src/linux 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 gnu.misc.discuss, and not to the
  comp.os.linux hierarchy.

  For other legal questions, see (``[229]Where Are Linux Legal Issues
  Discussed?'')
    _________________________________________________________________

1.11. Is Linux *nix?

  Not officially, until it passes the Open Group's certification tests,
  and supports the necessary API's. Even very few of the commercial
  operating systems have passed the Open Group tests. For more
  information, see [230]http://www.unix-systems.org/what_is_unix.html.

  [Bob Friesenhahn]
    _________________________________________________________________

2. Topics of Current Interest.

2.1. What Resources Are There for Linux DeCSS and Other Open Source DVD
Software?

  The free DeCSS software that decodes DVD's was developed for MS
  Windows and Apple systems, and Linux support was in the works, until
  the granting of injunctions in the Motion Picture Association of
  America and DVD Content Control Association's lawsuits that restrain
  distribution of the software.

  The Electronic Frontier Foundation http://www.eff.org is coordinating
  legal defense for computer users that were imprisoned or otherwise
  affected by the lawsuits. The international law that is being used to
  prosecute the distributors of DeCSS is yet untested, defendants say.

  There is a DeCSS Resource Site at
  [231]http://www.pzcommunications.com/main.htm, which is maintained by
  PZ Communications, one of the defendants in the DVD CCA case.
    _________________________________________________________________

2.2. Where Is Information About Electronic Privacy Laws that Affect ISP's?

  The U.S. Federal Trade Commission has issued a report to Congress that
  recommends regulations to guarantee privacy for customers of Internet
  Service Providers. The text of the report is at
  [232]http://www.ftc.gov/acoas/papers/finalreport.htm. The FTC
  E-commerce site is at [233]http://www.ftc.gov/bcp/menu-internet.htm/

  The New York Times on the Web has a resource page of electronic
  privacy information resources at
  [234]http://www.nytimes.com/library/tech/reference/index-privacy.html
  Access is free but requires registration.

  The Electronic Privacy Information Center maintains a Web page at
  [235]http://www.epic.org/.
    _________________________________________________________________

2.3. Where Can I Find Out About Linux and the Millennium (Y2K) Bug?

  The Debian/GNU Linux people have a statement on their Web site at
  [236]http://www.debian.org/. Another place you can find Y2K
  information is [237]http://www.hex.net/~cbbrowne/linuxy2k.html.

  Debian GNU/Linux developers have been adding a "y2k" identifier to
  packages that are Y2K-compliant. There is more information at the
  Debian Y2K page, [238]http://www.debian.org/y2k/.

  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 [239]http://www.fsf.org/software/year2000.html.

  Red Hat distributions earlier than version 6.2 had a half-dozen
  upgrades that provided Y2K fixes. Details and the updates for current
  distributions are at [240]http://www.redhat.com/support/errata/.

  In addition, Caldera Systems has posted notices of a few Y2K problems
  at [241]http://www.calderasystems.com/company/y2k/problem.html.

  There is also a Usenet newsgroup, comp.software.year-2000, for general
  discussion of Y2K issues.
    _________________________________________________________________

2.4. How Is the DocBook Version of the FAQ Produced?

  At present, the Linux FAQ uses the OASIS DocBook SGML DTD. HTML output
  is produced using James Clark's Jade DSSSL parser with modified
  versions of Norman Walsh's modular style sheets. Question numbers are
  generated with Perl. The text version is formatted with lynx, and
  split in to segments using the standard GNU text utilities, and are
  posted to Usenet. The DocBook Tools are being developed by Cygnus
  Software. They are located at [242]ftp://sourceware.cygnus.com/.

  If you are interested in learning more about this process, which is
  still under development, please contact the FAQ maintainer.
    _________________________________________________________________

3. Network Sources and Resources

3.1. Where Can I Get the Latest Kernel Version?

  Make that versions. The 2.0. series kernels are still available for
  older machines. Following Linus's even/odd versioning scheme, the
  latest production kernel is 2.2.x. The updates to this kernel are bug
  fixes. Active development is proceeding on the 2.3.x versions of the
  kernel, and a feature freeze has recently been announced for the 2.4
  series production kernels.

  Linux kernel version 2.2. was released on January 25, and a bug fix
  version 2.2.1 was released several days later. New versions are always
  being released. The kernel contains numerous improvements in features
  and performance compared to the kernel versions 2.0.x.

  Among the 2.2 kernel's many improvements are a video frame buffer,
  faster (although bigger) memory management, support for more hardware
  devices, improved security, and improved POSIX compatibility. The
  Linux kernel, in many of these instances, is superior to commercial
  OS's.

  To read more about the features in kernel version 2.2.x, the
  unofficial, draft press releases are located at
  [243]http://www.tip.net.au/~edlang/linux/linux2.2pr.html.

  If you want to download the source code, FTP to ftp.xx.kernel.org,
  where "xx" is the two-letter Internet domain abbreviation of your
  country; e.g., "us" for United States, "ca" for Canada, or "de" for
  Germany. Kernel versions 2.2.x are archived in the directory
  pub/linux/kernel/v2.2, as are patches for the prerelease versions. The
  kernel source code is archived as a .tar.gz file, and as a .tar.bz2
  file.

  Follow the instructions in any of the standard references to compile
  the 2.2 kernel, as you would with any other custom kernel. The
  Documentation subdirectory also contains information by the authors of
  various subsystems and drivers, and much of that information is not
  documented elsewhere.

  If you want to participate in kernel development, the latest 2.3
  version kernels are available from ftp.kernel.org as well. Make sure
  you sign on to the linux-kernel mailing list to find out what people
  are working on. (``[244]What Mailing Lists Are There?'')

  There is a story about the features of the 2.4 series kernels at
  [245]http://features.linuxtoday.com/stories/8191.html.
    _________________________________________________________________

3.2. Where Can I Get the HOWTO's and Other Documentation?

  Look in the following places, and the sites that mirror them.

    * [246]http://www.linuxdoc.org/
    * [247]ftp://ftp.funet.fi/pub/OS/Linux/doc/HOWTO/
    * [248]ftp://tsx-11.mit.edu/pub/linux/docs/HOWTO/
    * [249]ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/

  For a list of Linux FTP sites, see, (``[250]Where Can I Get Linux
  Material by FTP?'')

  If you don't have access to FTP, try the FTP-by-mail servers at
  [251]mailto:[email protected], [252]mailto:[email protected],
  or [253]mailto:[email protected].

  A complete list of HOWTO's and Mini-HOWTO's is available in the file
  HOWTO-INDEX in the docs/HOWTO directory at the FTP sites, and on the
  Web at [254]http://www.linuxdoc.org/, but here is a (probably
  incomplete) list of topics:

  3Dfx AI-Alife AX25
  Access Alpha Assembly
  Bash Prompt Belgian Benchmarking
  Beowulf BootPrompt Bootdisk
  Busmouse CD Writing CDROM
  CVS RCS Chinese Commercial
  Config Consultants Cyrillic
  DNS DOS/Win to Linux DOSEMU
  Danish Diskless Distribution
  Ecology Emacs Beginner Emacspeak
  Esperanto Ethernet Finnish
  Firewall Framebuffer Ftape
  GCC German Glibc2
  HOWTO Hardware Compatibility Hebrew
  Hellenic INFO-SHEET IP Masquerade
  IPCHAINS IPX IR
  ISP Hookup Ingres II Installation
  Intranet Server Italian Java-CGI
  Jaz Drive Kernel KickStart
  Keyboard and Console Kiosk LDAP
  Large Disk LinuxDoc+Emacs+Ispell META-FAQ
  Loopback Encrypted File System MGR
  MILO MIPS MP3
  Mail Mail User Modem
  Majordomo and MajorCool Multi-Disk
  Multicast Mutt GnuPGP Networking
  NIS Networking Overview Optical Disk
  Online Troubleshooting Resources Oracle
  PCI PCMCIA PLIP Install
  PPP PalmOS Plug and Play
  Parallel Processing Polish Portuguese
  PostgreSQL Printing Printing Usage
  Quake Reading List Root RAID
  SCSI Programming SMB SMP
  SRM Security Serbian
  Serial Serial Programming Slovenian
  Shadow Password Software Building Software RAID
  Software Release Practice Sound
  Sound Playing Spanish TclTk
  teTeX Text-Terminal Thai
  Tips Turkish UMSDOS
  UPS UUCP Unicode
  Unix and Internet Fundamentals User Group
  VAR VME Vim Editor
  VPN-Masquerade Virtual Services WWW
  WWWmSQL Wacom Tablet XFree86
  XFree86 Video Timings X Window User

  The following Mini-HOWTO's are available from
  [255]http://metalab.unc.edu/pub/Linux/docs/HOWTO/mini/:

  3 Button Mouse mini-HOWTO
  ADSM Backup mini-HOWTO
  Asymmetric Digital Subscriber Loop (ADSL) mini-HOWTO
  AI-Alife mini-HOWTO
  Advocacy mini-HOWTO
  Alsa Sound mini-HOWTO
  Apache SSL PHP/FI frontpage mini-HOWTO
  Automount mini-HOWTO
  Backup with MSDOS mini-HOWTO
  Battery Powered mini-HOWTO
  Boca mini-HOWTO
  BogoMips mini-HOWTO
  Bridge mini-HOWTO
  Bridge+Firewall mini-HOWTO
  Bzip2 mini-HOWTO
  Cable Modem mini-HOWTO
  Cipe+Masquerading mini-HOWTO
  Clock mini-HOWTO
  Coffee mini-HOWTO
  Colour ls mini-HOWTO
  Cyrus IMAP mini-HOWTO
  DHCP mini-HOWTO
  DPT Hardware RAID mini-HOWTO
  Diald mini-HOWTO
  Ext2fs Undeletion mini-HOWTO
  Fax Server mini-HOWTO
  Firewall Piercing mini-HOWTO
  GIS-GRASS mini-HOWTO
  GTEK BBS-550 mini-HOWTO
  Hard Disk Upgrade mini-HOWTO
  IO Port Programming mini-HOWTO
  IP Alias mini-HOWTO
  IP Masquerade mini-HOWTO
  IP Subnetworking mini-HOWTO
  ISP Connectivity mini-HOWTO
  Install From ZIP mini-HOWTO
  Kerneld mini-HOWTO
  LBX mini-HOWTO
  LILO mini-HOWTO
  Large Disk mini-HOWTO
  Leased Line mini-HOWTO
  Linux+DOS+Win95+OS2 mini-HOWTO
  Linux+FreeBSD mini-HOWTO
  Linux+NT-Loader mini-HOWTO
  Linux+Win95 mini-HOWTO
  Loadlin+Win95 mini-HOWTO
  Mac Terminal mini-HOWTO
  Mail Queue mini-HOWTO
  Mail2News mini-HOWTO
  Man Page mini-HOWTO
  Modules mini-HOWTO
  Multiboot using LILO mini-HOWTO
  NCD X Terminal mini-HOWTO
  NFS-Root mini-HOWTO
  NFS-Root-Client mini-HOWTO
  Netrom-Node mini-HOWTO
  Netscape+Proxy mini-HOWTO
  Netstation mini-HOWTO
  News Leafsite mini-HOWTO
  Offline Mailing mini-HOWTO
  PLIP mini-HOWTO
  Partition mini-HOWTO
  Partition Rescue mini-HOWTO
  Path mini-HOWTO
  Pre-installation Checklist mini-HOWTO
  Process Accounting mini-HOWTO
  Proxy ARP Subnet mini-HOWTO
  Public Web Browser mini-HOWTO
  Qmail+MH mini-HOWTO
  Quota mini-HOWTO
  RCS mini-HOWTO
  RPM+Slackware mini-HOWTO
  RedHat CD mini-HOWTO
  Remote Boot mini-HOWTO
  Remote X Apps mini-HOWTO
  SLIP-PPP Emulator mini-HOWTO
  Sendmail Address Rewrite mini-HOWTO
  Sendmail+UUCP mini-HOWTO
  Secure POP via SSH mini-HOWTO
  Small Memory mini-HOWTO
  Software RAID mini-HOWTO
  Soundblaster AWE mini-HOWTO
  StarOffice mini-HOWTO
  Term Firewall mini-HOWTO
  TkRat mini-HOWTO
  Token Ring mini-HOWTO
  Ultra-DMA mini-HOWTO
  Update mini-HOWTO
  Upgrade mini-HOWTO
  VAIO mini-HOWTO
  Vesafb mini-HOWTO
  VPN mini-HOWTO
  Visual Bell mini-HOWTO
  Windows Modem Sharing mini-HOWTO
  WordPerfect mini-HOWTO
  X Big Cursor mini-HOWTO
  XFree86-XInside mini-HOWTO
  xterm Title mini-HOWTO
  ZIP Install mini-HOWTO
  ZIP Drive mini-HOWTO

  The following HOWTO's are not distributed in all formats because SGML
  Tools cannot format their graphics and tables:

  The High Availability HOWTO The Graphics mini-HOWTO

  In addition, translations of the HOWTO's are available from
  [256]ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/translations/ and
  mirrors worldwide. Translations in the following languages are
  available:

  Chinese (zh) Croatian (hr) French (fr)
  German (de) Hellenic (el) Indonesian (id)
  Italian (it) Japanese (ja) Korean (ko)
  Polish (pl) Slovenian (sl) Spanish (es)
  Swedish (sv) Turkish (tr)

  More of these documents are always in preparation. Please get in touch
  with Timothy Bynum, [257]mailto:[email protected], the HOWTO
  coordinator, if you are interested in writing one. The file
  [258]ftp://metalab.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
  [259]http://wallybox.cei.net/~tjbynum/HOWTO/projects.

  There is also a LDP HOWTO page at [260]http://howto.tucows.org/.

  The Guide Series produced by the Linux Documentation Project is
  available from [261]http://www.linuxdoc.org/. Please read them if you
  are new to Unix and Linux.

  And, of course, a number of people have written documentation
  independently of the LDP:

    * Linux Administrators Security Guide, by Kurt Seifried.
      [262]http://www.freek.com/lasg/.
    * Newbie's Linux Manual. [263]http://www.linuxdoc.org/nlm/.
    * One-Page Linux Manual. [264]http://www.powerup.com.au/~squadron/.
    * Short beginners' manual for Linux. Also available in Dutch.
      [265]http://www.stuwww.kub.nl/people/b.vannunen/linux-man.php3.
    * Virtual Frame buffer HOWTO, by Alex Buell.
      [266]http://www.tahallah.demon.co.uk/programming/prog.html.
    * X11 & TrueType Fonts, by Peter Kleiweg.
      [267]http://www.let.rug.nl/~kleiweg/.

  There is a FAQ for Linux kernel developers at
  [268]http://www.tux.org/html/.

  To find out about Linux memory management, including performance
  tuning, see Rik van Riel's Web page at
  [269]http://humbolt.geo.uu.nl/Linux-MM/.

  The Linux Consultants HOWTO has a directory of Linux consultants at
  [270]http://www.linuxports.com/.

  Gary's Encyclopedia lists over 4,000 Linux related links. Its URL is
  [271]http://members.aa.net/~swear/pedia/index.html.

  There is also a FAQ specifically for the Red Hat Linux distribution,
  at [272]http://www.best.com/~aturner//RedHat-FAQ/faq_index.html.

  And the Home Page of this FAQ (by default, The Linux FAQ) is the
  Mainmatter Press, [273]http://www.mainmatter.com/.
    _________________________________________________________________

3.3. Where Should I Look on the World Wide Web for Linux Stuff?

  In addition to the Linux Documentation Project Home Page
  [274]http://www.linuxdoc.org/, there are many pages that provide
  beginning and advanced information about Linux.

  These two pages provide a good starting point for general Linux
  information: Linux International's Home Page, at
  [275]http://www.li.org/, and the Linux Online's Linux Home Page at
  [276]http://www.linux.org/.

  Both of these pages provide links to other sites, information about
  general information, distributions, new software, documentation, and
  news.

  The tutorial, Unix is a Four Letter Word..., is located at
  [277]http://www.linuxbox.com/~taylor/4ltrwrd/. It is a general
  introduction to Unix operating systems and is not Linux specific.

  Additionally, here is a certainly incomplete list of Web pages devoted
  to Linux:

    * AboutLinux.com. [278]http://www.aboutlinux.com/.
    * Adventures in Linux Programming.
      [279]http://members.xoom.com/rpragana/.
    * Dave Central Linux Software Archive.
      [280]http://linux.davecentral.com/.
    * Ext2 File System capabilities (draft).
      [281]http://pocket.fluff.org/~mrw/linux/ext2.txt.
    * Free Unix Giveaway List.
      [282]http://visar.csustan.edu/giveaway.html. Lists offers of free
      Linux CDs. Also available via E-mail:
      [283]mailto:[email protected], with the Subject: send
      giveaway_list.
    * Information on Linux in corporate environments.
      [284]http://www.smartstocks.com/linux.html.
    * Jeanette Russo's Linux Newbie Information.
      [285]http://www.stormloader.com/jrusso2/index.html.
    * JustLinux.com. [286]http://www.justlinux.com/.
    * LinuxArtist.org. [287]http://www.linuxartist.org/.
    * Linux Cartoons.
      [288]http://www.cse.unsw.edu.au/~conradp/linux/cartoons/.
    * linuXChiX.org. [289]http://www.linuxchix.org/.
    * Linux Educational Needs Posting Page.
      [290]http://www.slip.net/~brk/linuxedpp.htm.
    * Linux in Business: Case Studies.
      [291]www.bynari.com/collateral/case_studies.html.
    * Linux Inside. [292]http://linuxinside.org/.
    * Linux Links. [293]http://www.linuxlinks.com/.
    * Linux Memory Management Home Page.
      [294]http://humbolt.geo.uu.nl/Linux-MM/.
    * Linux Newbie Project. [295]http://kusma.hypermart.net/.
    * Linux on the Thinkpad 760ED.
      [296]http://www.e-oasis.com/linux-tp.html.
    * Linux Parallel Port Home Page.
      [297]http://www.torque.net/linux-pp.html.
    * Linux MIDI & Sound Applications. [298]http://sound.condorow.net/.
    * Linux Start. [299]http://www.linuxstart.com/.
    * Linux Tips and Tricks Page. [300]http://www.patoche.org/LTT/.
    * Linux Today PR. [301]http://www.linuxpr.com/.
    * My Linux Contributions by Richard Gooch.
      [302]http://www.atnf.csiro.au/~rgooch/linux/.
    * Micro Channel Linux Web Page. [303]http://www.dgmicro.com/mca/.
    * Parallel port scanners and SANE.
      [304]http://www2.prestel.co.uk/hex/scanners.html.
    * PegaSoft Portal. [305]http://www.vaxxine.com/pegasoft/portal/
    * SearchLinux. [306]http://www.searchlinux.com/.
    * USB Linux Home Page.
      [307]http://peloncho.fis.ucm.es/~inaky/uusbd-www/.
    * VLUG: The Virtual Linux Users Group. [308]http://www.vlug.com/.
    _________________________________________________________________

3.4. What News Groups Are There for Linux?

  Comp.os.linux.announce 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
  [309]mailto:[email protected].

  Comp.os.linux.announce, however, is not archived on DejaNews or Alta
  Vista. The only archive for the news group seems to be
  [310]http://www.iki.fi/mjr/linux/cola.html.

  [Axel Boldt]

  Also worth reading are the following other groups in the
  comp.os.linux.* hierarchy--you may find many common problems too
  recent for the documentation but are answered in the newsgroups.

    * alt.uu.comp.os.linux
    * alt.uu.comp.os.linux.questions
    * comp.os.linux.admin
    * comp.os.linux.advocacy
    * comp.os.linux.alpha
    * comp.os.linux.answers
    * comp.os.linux.development
    * comp.os.linux.development.apps
    * comp.os.linux.development.system
    * comp.os.linux.hardware
    * comp.os.linux.help
    * comp.os.linux.m68k
    * comp.os.linux.misc
    * comp.os.linux.network
    * comp.os.linux.networking
    * comp.os.linux.portable
    * comp.os.linux.powerpc
    * comp.os.linux.questions
    * comp.os.linux.redhat
    * comp.os.linux.security
    * comp.os.linux.setup
    * comp.os.linux.test
    * comp.os.linux.x
    * comp.os.linux.x.video

  Remember that Linux is POSIX compatible, and most all of the material
  in comp.unix.* and comp.windows.x.* 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 (``[311]You Still Haven't Answered My Question!'') before
  posting. Cross posting between different comp.os.linux.* groups is
  rarely a good idea.

  There may well be Linux groups local to your institution or
  area--check there first.

  See also (``[312]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
  fr.comp.os.linux. The German one is de.comp.os.linux. In Australia,
  try aus.computers.linux. In Croatia there is hr.comp.linux. In Italy,
  there is it.comp.linux.
    _________________________________________________________________

3.5. What Other FAQ's Are There for Linux?

  There are a number of special-interest FAQ's on different subjects
  that are related to Linux administration and use. Here are a few of
  them:

    * A FAQ for new users.
      [313]http://homes.arealcity.com/swietanowski/LinuxFAQ/.
    * GNU Emacs. http://www.lerner.co.il/emacs/faq-body.shtml.
    * GNU Linux in Science and Engineering.
      [314]http://members.home.net/scieng/.
    * Gnus 5.x. [315]http://www.ccs.neu.edu/software/contrib/gnus/.
    _________________________________________________________________

3.6. Where Can I Get Linux Material by FTP?

  There are three main archive sites for Linux:

    * [316]ftp://ftp.funet.fi/pub/OS/Linux/ (Finland).
    * [317]ftp://metalab.unc.edu/pub/Linux/ (US).
    * [318]tsx-11.mit.edu//pub/linux/ (US).

  The best place to get the Linux kernel is
  [319]ftp://ftp.kernel.org/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
  [320]ftp://ftp.debian.org/pub/debian/. Red Hat Linux's home site is
  [321]ftp://ftp.redhat.com/, and Linux Slackware's is
  [322]ftp://ftp.freesoftware.com/.

  The Small Linux distribution, which can run in 2 MB of RAM, is located
  at [323]http://smalllinux.netpedia.net/.

  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.

    * [324]ftp://ftp.sun.ac.za/pub/linux/sunsite/ (South Africa)
    * [325]ftp://ftp.is.co.za/linux/sunsite/ (South Africa).
    * [326]ftp://ftp.cs.cuhk.hk/pub/Linux/ (Hong Kong).
    * [327]ftp://sunsite.ust.hk/pub/Linux/ (Hong Kong).
    * [328]ftp://ftp.spin.ad.jp/pub/linux/ (Japan).
    * [329]ftp://ftp.nuri.net/pub/Linux/ (Korea).
    * [330]ftp://ftp.jaring.my/pub/Linux/ (Malaysia).
    * [331]ftp://ftp.nus.sg/pub/unix/Linux/ (Singapore).
    * [332]ftp://ftp.nectec.or.th/pub/mirrors/linux/ (Thailand).
    * [333]ftp://mirror.aarnet.edu.au/pub/linux/ (Australia).
    * [334]ftp://sunsite.anu.edu.au/pub/linux/ (Australia).
    * [335]ftp://ftp.monash.edu.au/pub/linux/ (Australia).
    * [336]ftp://ftp.univie.ac.at/systems/linux/sunsite/ (Austria).
    * [337]ftp://ftp.fi.muni.cz/pub/UNIX/linux/ (Czech Republic).
    * [338]ftp://ftp.funet.fi/pub/Linux/sunsite/ (Finland).
    * [339]ftp://ftp.univ-angers.fr/pub/Linux/ (France).
    * [340]ftp://ftp.iut-bm.univ-fcomte.fr/ (France).
    * [341]ftp://ftp.ibp.fr/pub/linux/sunsite/ (France)
    * [342]ftp://ftp.loria.fr/pub/linux/sunsite/ (France).
    * [343]ftp://ftp.dfv.rwth-aachen.de/pub/linux/sunsite/ (Germany).
    * [344]ftp://ftp.germany.eu.net/pub/os/Linux/Mirror.SunSITE/(Germany
      ).
    * [345]ftp://ftp.tu-dresden.de/pub/Linux/sunsite/ (Germany).
    * [346]ftp://ftp.uni-erlangen.de/pub/Linux/MIRROR.sunsite/
      (Germany).
    * [347]ftp://ftp.gwdg.de/pub/linux/mirrors/sunsite/ (Germany).
    * [348]ftp.rz.uni-karlsruhe.de/pub/linux/mirror.sunsite/ (Germany).
    * [349]ftp://ftp.ba-mannheim.de/pub/linux/mirror.sunsite/ (Germany).
    * [350]ftp://ftp.uni-paderborn.de/pub/Mirrors/sunsite.unc.edu/(Germa
      ny).
    * [351]ftp://ftp.uni-rostock.de/Linux/sunsite/ (Germany).
    * [352]ftp.rus.uni-stuttgart.de/pub/unix/systems/linux/MIRROR.sunsit
      e/(Germany).
    * [353]ftp://ftp.uni-tuebingen.de/pub/linux/Mirror.sunsite/
      (Germany).
    * [354]ftp://ftp.kfki.hu/pub/linux/(Hungary).
    * [355]ftp://linux.italnet.it/pub/Linux/(Italy).
    * [356]ftp://ftp.unina.it/pub/linux/sunsite/ (Italy).
    * [357]ftp://giotto.unipd.it/pub/unix/Linux/ (Italy).
    * [358]ftp://cnuce-arch.cnr.it/pub/Linux/ (Italy).
    * [359]ftp://ftp.flashnet.it/mirror2/metalab.unc.edu/ (Italy).
    * [360]ftp://ftp.nijenrode.nl/pub/linux/ (Netherlands).
    * [361]ftp://ftp.LeidenUniv.nl/pub/linux/sunsite/ (Netherlands).
    * [362]ftp://ftp.nvg.unit.no/pub/linux/sunsite/ (Norway).
    * [363]ftp://sunsite.icm.edu.pl/pub/Linux/metalab.unc.edu/ (Poland).
    * [364]ftp://ftp.rediris.es/software/os/linux/sunsite/ (Spain).
    * [365]ftp://sunsite.rediris.es/software/linux/ (Spain).
    * [366]ftp://ftp.cs.us.es/pub/Linux/sunsite-mirror/ (Spain).
    * [367]ftp://ftp.etse.urv.es/pub/mirror/linux/ (Spain).
    * [368]ftp://tp.etsimo.uniovi.es/pub/linux/ (Spain).
    * [369]ftp://ftp.luna.gui.es/pub/linux.new/ (Spain).
    * [370]ftp://ftp.metu.edu.tr/pub/linux/sunsite/ (Turkey).
    * [371]ftp://unix.hensa.ac.uk/mirrors/sunsite/pub/Linux/ (UK).
    * [372]ftp.maths.warwick.ac.uk/mirrors/linux/sunsite.unc-mirror/(UK)
      .
    * [373]ftp://ftp.idiscover.co.uk/pub/Linux/sunsite.unc-mirror/(UK).
    * [374]ftp://sunsite.doc.ic.ac.uk/packages/linux/sunsite.unc-mirror/
      (UK).
    * (UK)
    * [375]ftp://ftp.io.org/pub/mirrors/linux/sunsite/ (Canada).
    * [376]ftp://ftp.cc.gatech.edu/pub/linux/ (US).
    * [377]ftp://ftp.freesoftware.com/pub/linux/sunsite/ (US).
    * [378]ftp://ftp.siriuscc.com/pub/Linux/Sunsite/ (US).
    * [379]ftp://ftp.engr.uark.edu/pub/linux/sunsite/ (US).
    * [380]ftp://ftp.infomagic.com/pub/mirrors/linux/sunsite/ (US).
    * [381]ftp://linux.if.usp.br/pub/mirror/metalab.unc.edu/pub/Linux/(B
      razil).
    * [382]ftp://farofa.ime.usp.br/pub/linux/ (Brazil).

  Please send updates and corrections to this list to the Linux FAQ
  maintainer, [383]mailto:[email protected] Not all of these
  mirror all of the other ``source'' sites, and some have material not
  available on the ``source'' sites.
    _________________________________________________________________

3.7. I Don't Have FTP Access. Where Do I Get Linux?

  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 [384]mailto:[email protected], or
  [385]mailto:[email protected].

  Linux is also available via traditional mail on CD-ROM. The file
  [386]ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/Installation-HOWTO,
  and the file
  [387]ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/Distribution-HOWTO
  contain information on these distributions.
    _________________________________________________________________

3.8. I Don't Have Usenet Access. Where Do I Get Information?

  A digest of comp.os.linux.announce is available by mailing the word
  "subscribe" (without the quotes) as the body of a message to
  [388]mailto:[email protected]. Subscribing
  to this list is a good idea, as it carries important information and
  documentation about Linux.

  Please remember to use the *-request addresses for your subscribe and
  unsubscribe messages; mail to the other address is posted to the news
  group.
    _________________________________________________________________

3.9. What Mailing Lists Are There?

  The Linux developers now mainly use the Majordomo server at
  [389]mailto:[email protected]. 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.

  Please do not post off-topic material to the mailing lists. Most of
  them are used by Linux developers to talk about technical issues and
  future developments. They are not intended for new users' questions,
  advertisements, or public postings that are not directly related to
  the mailing list's subject matter. Comp.os.linux.announce is the place
  for all public announcements. This is a common Internet policy. If you
  don't observe this guideline, there's a good chance that you'll be
  flamed.

  There is a linux-newbie list where, "no question is too stupid."
  Unfortunately, it seems that few experienced users read that list, and
  it has very low volume.

  There are numerous Linux related mailing lists at
  [390]http://www.onelist.com/. Go to the categories page and choose
  "Linux."
    _________________________________________________________________

3.10. Where Are Linux Legal Issues Discussed?

  On the linux-legal mailing list, of course. You can subscribe to it,
  as with many of the other Linux related lists, by sending a message
  with the word "help" in the body of the message to
  [391]mailto:[email protected].
    _________________________________________________________________

3.11. Are the News Groups Archived Anywhere?

  The Usenet Linux news groups are archived at
  [392]http://www.dejanews.com/, and [393]http://altavista.digital.com/.

  [394]http://www.reference.com/ is unavailable until further notice,
  apparently due to lack of support.

  [395]ftp://metalab.unc.edu/pub/Linux/docs/linux-announce.archive
  contains archives of comp.os.linux.announce. These are mirrored from
  [396]src.doc.ic.ac.uk/usenet/, which also archives comp.os.linux,
  comp.os.linux.development.apps, and comp.os.linux.development.system.

  There is an `easy to access' archive of comp.os.linux.announce on the
  World Wide Web at [397]http://www.leo.org/archiv/unix/linux/ which
  supports searching and browsing.
    _________________________________________________________________

3.12. Where Can I Find Out About Security Related Issues?

  Look at [398]http://www.rootshell.com/, which has information about
  security problems and software.
    _________________________________________________________________

4. Compatibility with Other Operating Systems

4.1. Can Linux Share My Disk with DOS? OS/2? 386BSD? Win95?

  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 FDISK.EXE
  and FORMAT.EXE, 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:

$ dd if=/dev/zero of=/dev/hdXY bs=512 count=1

  where hdXY is the relevant partition; e.g., /dev/hda1 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.

  There is reportedly a GPL'd OS/2 device driver that will read and
  write Linux ext2 partitions.

  For information about FAT32 partition support, see
  [399]http://bmrc.berkeley.edu/people/chaffee/fat32.html.

  See, (``[400]What Software Does Linux Support?'') for details and
  status of the emulators for DOS, MS Windows, and System V programs.

  See also, "Can Linux access Amiga file systems? ", "Can Linux access
  Macintosh file systems? ", "Can Linux access BSD, SysV, etc., UFS? ",
  and "Can Linux access SMB file systems? "

  There are said to be NTFS drivers under development, which should
  support compression as a standard feature.
    _________________________________________________________________

4.2. How Do I Access Files on My DOS Partition Or Floppy?

  Use the DOS file system, type, for example:

$ mkdir /dos
$ mount -t msdos -o conv=text,umask=022,uid=100,gid=100 /dev/hda3 /dos

  If it's a floppy, don't forget to umount it before ejecting it!

  You can use the conv=text/binary/auto, umask=nnn, uid=nnn, and gid=nnn
  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
  /etc/fstab, 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. (``[401]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.
    _________________________________________________________________

4.3. Does Linux Support Compressed Ext2 file Systems?

  As of recently, it does. Information about them is located at
  [402]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
  [403]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 at
  [404]ftp://metalab.unc.edu/pub/Linux/libs/. The author is Alain Knaff.

  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
  [405]ftp://metalab.unc.edu/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 at
  [406]ftp://metalab.unc.edu/pub/Linux/utils/compress/.
    _________________________________________________________________

4.4. Can I Use My Stacked/DBLSPC/Etc. DOS Drive?

  Until recently, not very easily. You can access DOS 6.X volumes from
  the DOS emulator ("What software does Linux support? "), but it's
  harder than accessing a normal DOS volume via the DOS kernel option, a
  module, or mtools.

  There is a recently added package, dmsdos, that reads and writes
  compressed file systems like DoubleSpace/DriveSpace in MS-DOS 6.x and
  Win95, as well as Stacker versions 3 and 4. It is a loadable kernel
  module. Look at
  [407]ftp://metalab.unc.edu/pub/Linux/system/filesystems/dosfs/.
    _________________________________________________________________

4.5. Can I Access OS/2 HPFS Partitions from Linux?

  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 Documentation/filesystems/hpfs.txt file in the
  kernel source distribution. (``[408]How Do I Upgrade/Recompile My
  Kernel?'') Then you can mount HPFS partition, using, for example:

$ mkdir /hpfs
$ mount -t hpfs /dev/hda5 /hpfs
    _________________________________________________________________

4.6. Can Linux Access Amiga File Systems?

  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 Documentation/filesystems/affs.txt in the Linux kernel source
  distribution has more information.

  See (``[409]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.
    _________________________________________________________________

4.7. Can Linux Access BSD, SysV, Etc. UFS?

  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, (``[410]How Do I Upgrade/Recompile My Kernel?'')
    _________________________________________________________________

4.8. Can Linux Access SMB File Systems?

  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 (``[411]How Do I
  Upgrade/Recompile My Kernel?'')

  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
  [412]metalab.unc.edu/pub/Linux/system/network/samba/.

  The SMB Web site is [413]http://www.samba.org/, and there is also a
  Web site at [414]samba.anu.edu.au/samba/.
    _________________________________________________________________

4.9. Can Linux Access Macintosh File Systems?

  There is a set of user-level programs that read and write the
  Macintosh Hierarchical File System (HFS). It is available at
  [415]metalab.unc.edu/pub/Linux/utils/disk-management/.
    _________________________________________________________________

4.10. Can I Run Microsoft Windows Programs under Linux?

  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 comp.emulators.ms-windows.wine newsgroup.

  There is also a FAQ, compiled by P. David Gardner, at
  [416]ftp://metalab.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.EXE (a DOS program to load a Linux, or other OS, kernel
  is one way to make Linux co-exist with DOS. LOADLIN.EXE 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.EXE in it with a copy of
  your kernel, and use that.

  LOADLIN.EXE 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.EXE sometimes required a package called
  REALBIOS.COM, which required a boot procedure on an (almost) blank
  floppy to map the interrupt vectors (prior to the loading of any
  software drivers). (Current versions don't seem to ship with it, and
  don't seem to need it).

  [Jim Dennis]
    _________________________________________________________________

4.11. Where Can I Get Information about NFS Compatibility?

  This information is partly taken from Nicolai Langfeldt's excellent
  NFS HOWTO, and is current as of 10/1/1999.

  Most version 2.2.x kernels need a set of patches to install the knfsd
  subsystem, maintained by H.J. Lu, to communicate efficiently (if at
  all) with Sparc, IBM RS, and Alpha machines, and probably others. This
  package is actually a collection of patches to the kernel sources.

  There is also a user-space server. Although it lacks remote file
  locking, it is easier to install. It may be equally efficient.

  In the Documentation/Changelog of recent kernel distributions, there
  is a list of URL's for both the knfsd server and the user-space
  server.

  There is a CVS server available for the kernel-space NFS subsystem, as
  well as a NFS WWW page at [417]http://www.linuxnfs.sourceforge.org/,
  although the URL requires a password for access. The relevant URL's
  are listed in the README.nfs file at [418]ftp://ftp.us.kernel.org/,
  and other kernel archive sites, along with login information. Patches
  are at [419]ftp://ftp.varesearch.com/pub/kernel/latest/patches/.

  The source archives of the user-space server and utilities currently
  reside on
  [420]ftp://linux.mathematik.tu-darmstadt.de:/pub/linux/people/okir/.

  The linux-kernel mailing list has on-and-off discussions of the status
  of the NFS subsystem, which appears to be changing rapidly.
    _________________________________________________________________

4.12. Can I Use True Type Fonts with Linux?

  Yes. There are a number of True Type font servers for the X Window
  System. One of them is xfsft. Its home page is
  [421]http://www.dcs.ed.ac.uk/home/jec/programs/xfsft/. There are also
  instructions for configuration.

  People have reported success with other True Type font servers. There
  are links from the xfsft Home Page to them as well.

  You can also compile True Type Font support into your X server
  directly. Again, refer to the xfsft Home Page for details.
    _________________________________________________________________

4.13. How Can I Boot Linux from MS-DOS?

  If LILO doesn't work, and if the machine has MS-DOS or Microsoft
  Windows, you may be left with a computer that won't boot. This can
  also happen on an upgrade to your Linux distribution. Re-installing
  LILO is the last thing that the installation does. So it is vitally
  important when installing or upgrading Linux on a dual boot machine,
  to have a MS-DOS or Windows rescue disk nearby so you can FDISK -MBR.
  Then you can go about using LOADLIN.EXE instead of LILO.

  This config.sys file is one possible way to invoke LOADLIN.EXE and
  boot MS-DOS or Linux.

[menu]
menuitem=DOS, Dos Boot
menuitem=LINUX, Linux Boot

[LINUX]
shell=c:\redhat\loadlin.exe c:\redhat\autoboot\vmlinuz vga=5 root=/dev

[DOS]
STACKS = 0,0
rem all the other DOS drivers get loaded here.

  This creates a menu where you can directly jump to LOADLIN.EXE before
  all of the MS-DOS drivers get loaded.

  The paths and options are peculiar to one machine and should be
  intuitively obvious to the most casual observer. See the LOADLIN.EXE
  docs for options. They are the same as LILO, and options are just
  passed to the kernel, anyhow.

  [Jim Harvey]
    _________________________________________________________________

4.14. How Can I Boot Linux from OS/2's Boot Manager?

   1. Create a partition using OS/2's FDISK.EXE (Not Linux's fdisk).
   2. 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.)
   3. Add the partition to the Boot Manager.
   4. Boot Linux, and create a file system on the partition using mkfs
      -t ext2 or mke2fs. At this point you may, if you like, use Linux's
      fdisk 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.
   5. Install Linux on the partition.
   6. 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

boot = /dev/hda2

      (where /dev/hda2 is the partition you want to boot from) in your
      /etc/lilo/config or /etc/lilo.config file.
   7. 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.

  There is a set of HOWTO's on the subject of multi-boot systems at the
  LDP Home Page, [422]http://www.linuxdoc.org/.
    _________________________________________________________________

5. File Systems, Disks, and Drives

5.1. How Can I Get Linux to Work with My Disk?

  If your disk is an IDE or EIDE drive, you should read the file
  /usr/src/linux/drivers/block/README.ide (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]
    _________________________________________________________________

5.2. How Can I Undelete Files?

  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. But it can be done. Run grep on the raw device;
  e.g.:

grep -b 'bookmarks' /dev/hda

  If the data has not been overwritten, you should be able to recover it
  with a text editor.

  [Dave Cinege]
    _________________________________________________________________

5.3. How Do I Make Backups?

  You can back up a directory hierarchy or complete file system to any
  media using GNU tar or cpio, the standard *nix tools for this purpose.
  tar seems to be the more commonly used program currently, and includes
  command line options to make compressed, incremental, and multi-volume
  backups. Complete information is contained in the documentation, which
  is in GNU Texinfo format.

  The free program, Amanda, receives a lot of mentions on Usenet. Its
  home page is [423]http://www.amanda.org/.

  Several commercial backup utilities also exist. They are often
  included in commercial distributions.
    _________________________________________________________________

5.4. How Do I Resize a Partition (Non-Destructively)?

  Use the FIPS.EXE program, included with most Linux distributions,under
  MS-DOS.

  Parted, the free GNU partition editor, seems to be approaching
  usability for normal, non-systems programmer users. The latest version
  is at [424]ftp://ftp.gnu.org/pub/gnu/parted/.

  Also, some commercial distributions come with their own partitioning
  software, like Partition Magic.
    _________________________________________________________________

5.5. Is There a Defragmenter for Ext2fs, Etc.?

  Yes. There is defrag, a Linux file system defragmenter for ext2,
  Minix, and old-style ext file systems. It is available at
  [425]ftp://metalab.unc.edu/pub/Linux/system/filesystems/defrag-0.70.ta
  r.gz.

  Users of the ext2 file system can probably do without defrag, because
  ext2 contains extra code to keep fragmentation reduced even in very
  full file systems.
    _________________________________________________________________

5.6. How Do I Format and Create a File System on a Floppy?

  To format a 3.5-inch, high density floppy:

$ fdformat /dev/fd0H1440
$ mkfs -t ext2 -m 0 /dev/fd0H1440 1440

  For a 5.25 inch floppy, use fd0h1200 and 1200 as appropriate. For the
  B: drive use fd1 instead of fd0.

  The -m 0 option tells mkfs.ext2 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 cp and mv files, etc.

  Device naming conventions generally are the same as for other unices.
  They can be found in Matt Welsh's Installation and Getting Started
  guide. Refer to (``[426]Where Can I Get the HOWTO's and Other
  Documentation?'') A more detailed and technical description is Linux
  Allocated Devices by H. Peter Anvin, [427]mailto:[email protected], which
  is included in LaTeX and ASCII form in the kernel source distribution
  (probably in /usr/src/kernel/Documentation/), as devices.tex and
  devices.txt.
    _________________________________________________________________

5.7. Does Linux Support Virtualized File Systems Like RAID?

  The most recent Linux kernels support software RAID, and they will
  work with RAID disk controllers.

  An automounter for NFS partitions is part of most Linux distributions.

  In addition, several virtual file system projects exist. One of them,
  the Linux Logical Volume Manager, is located at
  [428]http://linux.msede.com/lvm/.
    _________________________________________________________________

5.8. Does Linux Support File System Encryption?

  Yes. One file system, ppdd, is archived at
  [429]http://pweb.de.uu.net/flexsys.mtk/.
    _________________________________________________________________

5.9. I Get Nasty Messages about Inodes, Blocks, and the Like.

  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

VFS: mounted root ... read-only

  at boot time.
    _________________________________________________________________

5.10. My Swap Area Isn't Working.

  When you boot (or enable swapping manually) you should see

Adding Swap: NNNNk swap-space

  If you don't see any messages at all you are probably missing

swapon -av

  (the command to enable swapping) in your /etc/rc.local or /etc/rc.d/*
  (the system startup scripts), or have forgotten to make the right
  entry in /etc/fstab:

/dev/hda2       none       swap       sw

  for example.

  If you see:

Unable to find swap-space signature

  you have forgotten to run mkswap. See the manual page for details; it
  works much like mkfs.

  Running, free in addition to showing free memory, should display:

         total       used       free
Swap:        10188       2960       7228

  [Andy Jefferson]
    _________________________________________________________________

5.11. How Do I Add Temporary Swap Space?

  In addition to a swap partition, Linux can also use a swap file. Some
  programs, like g++, can use huge amounts of virtual memory, requiring
  the temporary creation of extra space. To install an extra 64 MB of
  swap space, for example, use the following shell commands:

# dd if=/dev/zero of=/swap bs=1024 count=65535
# mkswap /swap
# swapon /swap

  The count= argument to dd determines how big the swap file will be. In
  this example the swap file's name is /swap, but the name and location
  are, generally, arbitrary, depending only on the file system's
  available space and your having write permissions in the directory.

  When you don't need the swap space any more, remove it with the
  following statements:

# swapoff /swap
# rm /swap

  Take a look also at the Installation HOWTO and Installation & Getting
  Started for detailed instructions.

  If that still doesn't provide enough swap space, refer to (``[430]How
  Can I Have More Than 128Mb of Swap?'')
    _________________________________________________________________

5.12. How Do I Remove LILO So My System Boots DOS Again?

  The lilo program (not the complete LILO package), uses the command
  line option -u to uninstall the LILO boot loader. You have to supply
  the device name of the device you installed LILO on, for example:

lilo -u /dev/hda

  This rewrites the original, pre-LILO master boot record back to the
  first hard drive, from the boot record saved in /boot/boot.0300. If
  you installed LILO to a partition as a secondary boot loader, for
  example, /dev/hda1, lilo re-installs the original boot sector from the
  save file /boot/boot.0301. Refer to the lilo manual page for details.
  Thanks to Villy Kruse for reminding me to update this answer.

  If you have an earlier version of LILO, you will have to use the DOS
  (MS-DOS 5.0 or later, or OS/2) FDISK /MBR (which is not documented).
  This will restore a standard MS-DOS Master Boot Record. If you have
  DR-DOS 6.0, go into FDISK.EXE 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 boot.0301 or some such. Type:

dd if=boot.0301 of=/dev/hda bs=445 count=1

  (or /dev/sda if you're using a SCSI disk). This may also wipe out your
  partition table, so beware! If you're desperate, you could use

dd if=/dev/zero of=/dev/hda bs=512 count=1

  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 fdisk to set and clear the active
  flags on partitions appropriately.
    _________________________________________________________________

5.13. Why Can't I Use fdformat Except as Root?

  The system call to format a floppy can only be done as root,
  regardless of the permissions of /dev/fd0*. If you want any user to be
  able to format a floppy, try getting the fdformat2 program. This works
  around the problems by being setuid to root.
    _________________________________________________________________

5.14. My Ext2fs Partitions Are Checked Each Time I Reboot.

  Refer to (``[431]EXT2-fs: warning: mounting unchecked file system.)
    _________________________________________________________________

5.15. My Root File System Is Read-Only!

  Remount it. If /etc/fstab is correct, you can simply type:

mount -n -o remount /

  If /etc/fstab is wrong, you must give the device name and possibly the
  type, too: e.g.

mount -n -o remount -t ext2 /dev/hda2 /

  To understand how you got into this state, see, (``[432]EXT2-fs:
  warning: mounting unchecked file system.'')
    _________________________________________________________________

5.16. I Have a Huge /proc/kcore! Can I Delete It?

  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.
    _________________________________________________________________

5.17. The AHA1542C Doesn't Work with Linux.

  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.
    _________________________________________________________________

5.18. Where Do I Find the Journalling File System?

  The journalling file system, named Reiserfs has just been released
  from testing. It is said to make Linux even faster than Linux with the
  Ext2 file system installed. Complete information is available at
  [433]http://devlinux.org/namesys/.
    _________________________________________________________________

6. Porting, Compiling and Obtaining Programs

6.1. How Do I Compile Programs?

  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
  [434]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 and later 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 the kernel
  developers changed change the code so it will compile correctly with
  compilers other than GCC 2.7.2.x.

  Information on the EGCS compiler is at [435]http://egcs.cygnus.com/.

  Note that at this time, the kernel developers are not answering bug
  requests for earlier kernels, but instead are concentrating on
  developing 2.3.x version kernels and maintaining 2.2.x version
  kernels.

  [J.H.M. Dassen, Axel Boldt]
    _________________________________________________________________

6.2. How Do I Install GNU Software?

  On a correctly configured system, installing a GNU software package
  requires four steps:

    * With the source.tar.gz archive in the /usr/src/ directory, or
      wherever you maintain your source files, untar and decompress the
      package with the command:

tar zxvf package-name.tar.gz

    * Run the ./configure script in the untarred source archive's
      top-level directory with whatever command line arguments you need.
      The options that configure recognizes are usually contained in a
      file called INSTALL or README.
    * Run make. This will build the source code into an executable
      program (or programs) and may take a few minutes or a few hours,
      depending on the speed of the computer and the size of the
      package.
    * Run make install. This will install the compiled binaries,
      configuration files, and any libraries in the appropriate
      directories.
    _________________________________________________________________

6.3. Where Do I Get Java?

  The Sun Microsystems Java Developer's Kit (JDK) Version 1.2, is at
  [436]http://java.sun.com/products/jdk/1.2/download-linux.html.

  You can also get the source code, which is licensed by Sun
  Microsystems.

  Kaffee, an Open-Source version of Java, is at
  [437]http://www.transvirtual.com/products/.

  The home page of IBM's Jikes Java compiler is
  [438]http://www10.software.ibm.com/developerworks/opensource/jikes.

  There is a version of Sun's HotJava browser for Linux at
  [439]http://www.java.sun.com/products/hotjava/.

  Netscape Communicator comes with its own version of the Java Runtime
  Environment, so if you need Java only to view Web graphics, you may
  already have the runtime version of the Java Virtual Machine and
  libraries that you need installed on your system. You can download
  Communicator from [440]http://www.netscape.com/.
    _________________________________________________________________

6.4. How Do I Port XXX to Linux?

  In general, *nix programs need very little porting. Simply follow the
  installation instructions. If you don't know--and don't know how to
  find out--the answers to some of the questions asked during the
  installation procedure, you can guess, but this tends to produce buggy
  programs. In this case, you're probably better off asking someone else
  to do the port. If you have a BSD-ish program, you should try using
  -I/usr/include/bsd and -lbsd on the appropriate parts of the
  compilation lines.
    _________________________________________________________________

6.5. What Is ld.so and Where Do I Get It?

  ld.so 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, /lib/ld.so, where all binaries can look for it, so that it
  wastes less disk space, and can be upgraded more easily. ld.so can be
  obtained from [441]http://tsx-11.mit.edu/pub/linux/packages/GCC/ and
  mirror sites. The latest version at the time of writing is
  ld.so.1.9.5.tar.gz. /lib/ld-linux.so.1 is the same thing for ELF
  ("What's all this about ELF? ") and comes in the same package as the
  a.out loader.
    _________________________________________________________________

6.6. How Do I Upgrade the Libraries without Trashing My System?

  Warning

  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:

libc.so.5
libc.so.5.4.33
libm.so.5
libm.so.5.0.9

  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/.

cp -df /lib/libc.so.5* /usr/lib/
cp -df /lib/libm.so.5* /usr/lib/
ldconfig

  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.

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

  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.
    _________________________________________________________________

6.7. Has Anyone Ported/Compiled/Written XXX for Linux?

  First, look in the Linux Software Map--it's at
  [442]ftp://metalab.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 [443]http://www.boutell.com/lsm/.

  Check the FTP sites ("Where can I get Linux material by FTP?")
  first--search the ls-lR or INDEX files for appropriate strings. Also
  look at the Linux Projects Map,
  [444]ftp://ftp.ix.de/pub/ix/Linux/docs/Projects-Map.gz. There's a
  search engine for Linux FTP archives at [445]http://lfw.linuxhq.com/.
  Also check out the Freshmeat Web site http://www.freshmeat.net, which
  is really cool, even if the logo does look like cat food. (" What
  online/free periodicals exist for Linux? " Freshmeat is basically a
  site index that continuously updates the notices of new or upgraded
  software for Linux. If you don't find anything, you could download the
  sources to the program yourself and compile them. See (``[446]How Do I
  Port XXX to Linux?'') If it's a large package that may require some
  porting, post a message to comp.os.linux.development.apps. If you
  compile a large-ish program, please upload it to one or more of the
  FTP sites, and post a message to comp.os.linux.announce (submit your
  posting to [447]mailto:[email protected]). If you're
  looking for an application program, the chances are that someone has
  already written a free version. The comp.sources.wanted FAQ has
  instructions for finding the source code.
    _________________________________________________________________

6.8. Can I Use Code or a Compiler Compiled for a 486 on My 386?

  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 that knows how to do optimization
  well for the 586, but it is quite unreliable, especially at high
  optimization settings. The Pentium GCC can be found on
  [448]ftp://tsx-11.mit.edu/pub/linux/ALPHA/pentium-gcc/. The ordinary
  486 GCC supposedly produces better code for the Pentium using the
  -m386, or at least slightly smaller.
    _________________________________________________________________

6.9. What Does ``gcc -O6'' Do?

  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.
    _________________________________________________________________

6.10. Where Are linux/*.h and asm/*.h?

  The files /usr/include/linux/ and /usr/include/asm/ 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, (``[449]How
  Do I Upgrade/Recompile My Kernel?'')

  Then, use rm to remove any garbage, and ln to create the links:

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

  /usr/src/linux/include/asm/ 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.
    _________________________________________________________________

6.11. I Get Errors when I Try to Compile the Kernel.

  See the previous question regarding the header files.

  Remember that when you apply a patch to the kernel, you must use the
  ``-p0'' or ``-p1'' option: otherwise, the patch may be misapplied. See
  the patch manual page for details.

  ``ld: unrecognized option `-qmagic''' means that you should get a
  newer linker, from [450]ftp://tsx-11.mit.edu/pub/linux/packages/GCC/,
  in the file binutils-2.8.1.0.1.bin.tar.gz.
    _________________________________________________________________

6.12. How Do I Make a Shared Library?

  For ELF,

gcc -fPIC -c *.c
gcc -shared -Wl,-soname,libfoo.so.1 -o libfoo.so.1.0 *.o

  For a.out, get tools-n.nn.tar.gz from
  [451]tsx-11.mit.edu/pub/linux/packages/GCC/src/. It comes with
  documentation that will tell you what to do. Note that a.out shared
  libraries are a very tricky business. Consider upgrading your
  libraries to ELF shared libraries. See the ELF HOWTO, at
  [452]ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/
    _________________________________________________________________

6.13. My Executables Are (Very) Large.

  With an ELF compiler (``[453]What's All This about ELF? glibc?''), the
  most common cause of large executables is the lack of an appropriate
  .so library link for one of the libraries you're using. There should
  be a link like libc.so for every library like libc.so.5.2.18.

  With an a.out compiler the most common cause of large executables is
  the -g 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 -O and -O2, which enable
  optimization (check the GCC documentation), and -s (or the strip
  command) which strip the symbol information from the resulting binary
  (making debugging totally impossible).

  You may wish to use -N on very small executables (less than 8K with
  the -N), but you shouldn't do this unless you understand its
  performance implications, and definitely never with daemons.
    _________________________________________________________________

6.14. Does Linux Support Threads or Lightweight Processes?

  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.

    * GNU glibc2 for Linux has optional support for threads. The archive
      is available from the same place as glibc2,
      [454]ftp://ftp.gnu.org/pub/gnu/
    * In [455]sipb.mit.edu:/pub/pthread/ or
      [456]ftp.ibp.fr:/pub/unix/threads/pthreads. Documentation isn't in
      the package, but is available on the World Wide Web at
      [457]http://www.mit.edu:8001/people/proven/home_page.html. Newer
      Linux libc's contain the pthreads source. The GNU Ada compiler on
      [458]ftp://metalab.unc.edu/pub/Linux/devel/lang/ada/gnat-3.01-linu
      x+elf.tar.gz contains binaries made from that source code.
    * In [459]ftp://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 is
      /tr/1993/05/UW-CSE-93-05-06.PS.Z.
    * In gummo.doc.ic.ac.uk/rex/ is lwp, a very minimal implementation.
    * In [460]ftp://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.

  Please contact the authors of the packages in question for details.
    _________________________________________________________________

6.15. Where Can I Get lint for Linux?

  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 F1-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 [461]ftp://larch.lcs.mit.edu/pub/Larch/lclint/; on the
  World Wide Web, look at
  [462]http://larch-www.lcs.mit.edu:8001/larch/lclint.html.
    _________________________________________________________________

6.16. Where Can I find Kermit for Linux?

  Kermit is distributed under a non-GPL copyright that makes its terms
  of distribution somewhat different. The sources and some binaries are
  available on [463]ftp://kermit.columbia.edu.

  The WWW Home Page of the Columbia University Kermit project is
  [464]http://www.columbia.edu/kermit/.
    _________________________________________________________________

6.17. I Want to Use Linux with My Cable Modem.

  The www.CablemodemInfo.com and xDSL Web page at
  [465]http://www.cablemodeminfo.com/ has a section devoted to Linux.
    _________________________________________________________________

6.18. Is There an ICQ Program That Runs under Linux?

  Several ICQ clients are available on metlab.unc.edu. (See Where can I
  get Linux material by FTP? .) ICQ itself does not have a Linux client,
  but there is a Java client at [466]http://www.mirabilis.com/download/.
    _________________________________________________________________

7. Solutions to Common Miscellaneous Problems

7.1. PPP Connection Dies when Sending Large Files.

  This is due, apparently, to some form of buffer overrun (Fall, 1999)
  when uploading to Windows NT servers. Because MS Winmodems have parts
  of their firmware in the operating system, the protocols used in NT
  servers can be kept proprietary, even at the TCP/IP level. However,
  there's no information at this time to confirm this.

  In any case, users have been complaining more frequently about the
  problem. It doesn't seem to occur when downloading files, only when
  uploading longer files, past a certain, and not always determinable,
  size. The problem occurs with newer and faster hardware. Also, there
  have been reports that changing the mtu and mru to values much smaller
  than the default of 1,500 solves the problem. If anyone has had this
  kind of problem, and you have been able to solve it, please let the
  FAQ maintainer know.
    _________________________________________________________________

7.2. Free Dumps Core.

  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 metalab.unc.edu, in
  /pub/Linux/system/Status/ps/procps-0.99.tgz.
    _________________________________________________________________

7.3. How Do I Keep Track of All My Bookmarks in Netscape?

  This probably applies to most other browsers, too. In the
  Preferences/Navigator menu, set your home page to Netscape's
  bookmarks.html file, which is located in the .netscape (with a leading
  period) subdirectory. For example, if your login name is ``smith,''
  set the home page to:

file://home/smith/.netscape/bookmarks.html

  Setting up your personal home page like this will present you with a
  nicely formatted (albeit possibly long) page of bookmarks when
  Netscape starts. And the file is automatically updated whenever you
  add, delete, or visit a bookmarked site.
    _________________________________________________________________

7.4. The Computer Has the Wrong Time.

  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 (now called hwclock in many
  distributions)--see
man 8 clock

  or
man 8 hwclock

  .

  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).
    _________________________________________________________________

7.5. Setuid Scripts Don't Seem to Work.

  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 than 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.
    _________________________________________________________________

7.6. Free Memory as Reported by free Keeps Shrinking.

  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.
    _________________________________________________________________

7.7. When I Add More Memory, the System Slows to a Crawl.

  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 all of the details--make, model number,
  date code, etc., so other Linux users can avoid it.
    _________________________________________________________________

7.8. Some Programs (E.g. xdm) Won't Let Me Log in.

  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
  [467]ftp://tsx-11.mit.edu:/pub/linux/sources/usr.bin/shadow/. This is
  the source code. The binaries are probably in linux/binaries/usr.bin/.
    _________________________________________________________________

7.9. Some Programs Let Me Log in with No Password.

  You probably have the same problem as in (``[468]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.
    _________________________________________________________________

7.10. My Machine Runs Very Slowly when I Run GCC / X / ...

  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 (``[469]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:

cat /proc/meminfo

  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
  ``man rdev'').
    _________________________________________________________________

7.11. I Can Only Log in as Root.

  You probably have some permission problems, or you have a file
  /etc/nologin.

  In the latter case, put ``rm -f /etc/nologin'' in your /etc/rc.local
  or /etc/rc.d/* 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.
    _________________________________________________________________

7.12. My Screen Is All Full of Weird Characters Instead of Letters.

  You probably sent some binary data to your screen by mistake. Type
  echo '\033c' to fix it. Many Linux distributions have a command,
  reset, that does this.

  If that doesn't help, try a direct screen escape command.

echo 'Ctrl-V Ctrl-O'

  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,
  then V. The sequence

echo 'Ctrl-V Esc C'

  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]
    _________________________________________________________________

7.13. I Have Screwed Up My System and Can't Log in to Fix It.

  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
  [470]ftp://metalab.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

mount -t ext2 /dev/hda1 /mnt

  Then your file system is available under the directory /mnt and you
  can fix the problem. Remember to unmount your hard disk before
  rebooting (cd somewhere else first, or it will say it's busy).
    _________________________________________________________________

7.14. I Forgot the root Password.

  Note: Incorrectly editing any of the files in the /etc/ directory can
  severely screw up a system. Please keep a spare copy of any files in
  case you make a mistake.

  If your Linux distribution permits, try booting into single-user mode
  by typing ``single'' at the LILO: prompt. More recent distributions
  still require a password. In that case, boot from the installation or
  rescue floppy, and switch to another virtual console with Alt-F1--
  Alt-F8, and then mount the root file system on /mnt. Then proceed with
  the steps below to determine if your system has standard or shadow
  passwords, and how to remove the password.

  Using your favorite text editor, edit the root entry of the
  /etc/passwd file to remove the password, which is located between the
  first and second colons. Do this only if the password field does not
  contain an ``x,'' in which case see below.

root:Yhgew13xs:0:0: ...

  Change that to:

root::0:0: ...

  If the password field contains an ``x,'' then you must remove the
  password from the /etc/shadow file, which roughly the same format.
    _________________________________________________________________

7.15. I've Discovered a Huge Security Hole in rm!

  No you haven't. You are obviously new to unices and need to read a
  good book to find out how things work. Clue: the ability to delete
  files depends on permission to write in that directory.
    _________________________________________________________________

7.16. lpr and/or lpd Don't Work.

  First make sure that your /dev/lp* 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:

cat the_file >/dev/lp1

  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 ifconfig command. By
  Internet convention, the network number is 127.0.0.0, and the local
  host address is 127.0.0.1. If everything is configured correctly, you
  should be able to telnet to your own machine and get a login prompt.

  Make sure that /etc/hosts.lpd contains the machine's host name.

  If your machine has a network-aware lpd, like the one that comes with
  LPRng, make sure that /etc/lpd.perms is configured correctly. Also
  look at the Printing HOWTO. "Where can I get the HOWTO's and other
  documentation? ".
    _________________________________________________________________

7.17. Timestamps on Files on MS-DOS Partitions Are Set Incorrectly

  There is a bug in the program clock (often found in /sbin). It
  miscounts a time zone offset, confusing seconds with minutes or
  something like that. Get a recent version.
    _________________________________________________________________

7.18. How Do I Get LILO to Boot the Kernel Image?

  >From kernel versions 1.1.80 on, the compressed kernel image, which is
  what LILO needs to find, is in arch/i386/boot/zImage, or
  arch/i386/boot/bzImage when it is built, and is normally stored in the
  /boot/ directory. The /etc/lilo.conf file should refer to the vmlinuz
  symbolic link, not the actual kernel image.

  This was changed to make it easier to build kernel versions for
  several different processors from one source tree.
    _________________________________________________________________

7.19. I Upgraded the Kernel and Now My PCMCIA Card Doesn't Work.

  The PCMCIA Card Services modules, which are located in
  /lib/modules/version/pcmcia, where version is the version number of
  the kernel, use configuration information that is specific to that
  kernel image only. The PCMCIA modules on your system will not work
  with a different kernel image. You need to upgrade the PCMCIA card
  modules when you upgrade the kernel.

  When upgrading from older kernels, make sure that you have the most
  recent version of the run-time libraries, the modutils package, and so
  on. Refer to the file Documentation/Changes in the kernel source tree
  for details.

  Important: If you use the PCMCIA Card Services, do not enable the
  Network device support/Pocket and portable adapters option of the
  kernel configuration menu, as this conflicts with the modules in Card
  Services.

  Knowing the PCMCIA module dependencies of the old kernel is useful.
  You need to keep track of them. For example, if your PCMCIA card
  depends on the serial port character device being installed as a
  module for the old kernel, then you need to ensure that the serial
  module is available for the new kernel and PCMCIA modules as well.

  The procedure described here is somewhat kludgey, but it is much
  easier than re-calculating module dependencies from scratch, and
  making sure the upgrade modules get loaded so that both the non-PCMCIA
  and PCMCIA are happy. Recent kernel releases contain a myriad of
  module options, too many to keep track of easily. These steps use the
  existing module dependencies as much as possible, instead of requiring
  you to calculate new ones.

  However, this procedure does not take into account instances where
  module dependencies are incompatible from one kernel version to
  another. In these cases, you'll need to load the modules yourself with
  insmod, or adjust the module dependencies in the /etc/conf.modules
  file. The Documentation/modules.txt file in the kernel source tree
  contains a good description of how to use the kernel loadable modules
  and the module utilities like insmod, modprobe, and depmod.
  Modules.txt also contains a recommended procedure for determining
  which features to include in a resident kernel, and which to build as
  modules.

  Essentially, you need to follow these steps when you install a new
  kernel.

    * Before building the new kernel, make a record with the lsmod
      command of the module dependencies that your system currently
      uses. For example, part of the lsmod output might look like this:

Module         Pages    Used by
memory_cs          2            0
ds                 2    [memory_cs]     3
i82365             4            2
pcmcia_core        8    [memory_cs ds i82365]   3
sg                 1            0
bsd_comp           1            0
ppp                5    [bsd_comp]      0
slhc               2    [ppp]   0
serial             8            0
psaux              1            0
lp                 2            0

      This tells you for example that the memory_cs module needs the ds
      and pcmcia_core modules loaded first. What it doesn't say is that,
      in order to avoid recalculating the module dependencies, you may
      also need to have the serial, lp, psaux, and other standard
      modules available to prevent errors when installing the pcmcia
      routines at boot time with insmod. A glance at the /etc/modules
      file will tell you what modules the system currently loads, and in
      what order. Save a copy of this file for future reference, until
      you have successfully installed the new kernel's modules. Also
      save the lsmod output to a file, for example, with the command:
      lsmod >lsmod.old-kernel.output.
    * Build the new kernel, and install the boot image, either zImage or
      bzImage, to a floppy diskette. To do this, change to the
      arch/i386/boot directory (substitute the correct architecture
      directory if you don't have an Intel machine), and, with a floppy
      in the diskette drive, execute the command:

dd if=bzImage of=/dev/fd0 bs=512

      if you built the kernel with the make bzImage command, and if your
      floppy drive is /dev/fd0. This results in a bootable kernel image
      being written to the floppy, and allows you to try out the new
      kernel without replacing the existing one that LILO boots on the
      hard drive.
    * Boot the new kernel from the floppy to make sure that it works.
    * With the system running the new kernel, compile and install a
      current version of the PCMCIA Card Services package, available
      from metalab.unc.edu as well as other Linux archives. Before
      installing the Card Services utilities, change the names of
      /sbin/cardmgr and /sbin/cardctl to /sbin/cardmgr.old and
      /sbin/cardctl.old. The old versions of these utilities are not
      compatible with the replacement utilities that Card Services
      installs. In case something goes awry with the installation, the
      old utilities won't be overwritten, and you can revert to the
      older versions if necessary. When configuring Card Services with
      the ``make config'' command, make sure that the build scripts know
      where to locate the kernel configuration, either by using
      information from the running kernel, or telling the build process
      where the source tree of the new kernel is. The ``make config''
      step should complete without errors. Installing the modules from
      the Card Services package places them in the directory
      /lib/modules/version/pcmcia, where version is the version number
      of the new kernel.
    * Reboot the system, and note which, if any, of the PCMCIA devices
      work. Also make sure that the non-PCMCIA hardware devices are
      working. It's likely that some or all of them won't work. Use
      lsmod to determine which modules the kernel loaded at boot time,
      and compare it with the module listing that the old kernel loaded,
      which you saved from the first step of the procedure. (If you
      didn't save a listing of the lsmod output, go back and reboot the
      old kernel, and make the listing now.)
    * When all modules are properly loaded, you can replace the old
      kernel image on the hard drive. This will most likely be the file
      pointed to by the /vmlinuz symlink. Remember to update the boot
      sector by running the lilo command after installing the new kernel
      image on the hard drive.

  Also look at the questions, How do I upgrade/recompile my kernel? and
  Modprobe can't locate module, "XXX," and similar messages.
    _________________________________________________________________

8. How Do I Do This or Find Out That...

8.1. How Do I Know If My Notebook Runs Linux?

  There's no fixed answer to this question, because notebook hardware is
  constantly updated, and getting the X display, sound, PCMCIA, modem,
  and so forth, working, can take a good deal of effort.

  Most notebooks currently on the market, for example, use
  ``Winmodems,'' which do not work with Linux because of their
  proprietary hardware interfaces. Even notebooks which are certified as
  "Linux compatible," may not be completely compatible.

  The only notebook on the market at the time of this writing that has a
  modem that works with Linux is the Sony Vaio. There is an IBM Thinkpad
  that is certified as compatible with the Red Hat distribution, but
  that apparently doesn't include the modem.

  You can find the most current information, or ask other users about
  their notebook experiences, on the linux-laptop mailing list, which is
  hosted by the vger.rutgers.edu server. Refer to (``[471]What Mailing
  Lists Are There?'')

  A mailing list for Linux on IBM Thinkpads has its home page at
  [472]http://www.topica.com/lists/linux-thinkpad/.

  Another Thinkpad mailing list is hosted by
  [473]http://www.bm-soft.com/. Send E-mail with the word ``help'' in
  the body of the message to [474]mailto:[email protected].

  The Linux Laptop home page is at
  [475]http://www.cs.utexas.edu/users/kharker/linux-laptop/.

  There is a Web page devoted to Linux on IBM Thinkpads at
  [476]http://peipa.essex.ac.uk/tp-linux/.

  For information about interfacing peripherals like Zip and CD-ROM
  drives through parallel ports, refer to the Linux Parallel Port Home
  Page, at [477]http://www.torque.net/linux-pp.html.

  If you need the latest version of the PCMCIA Card Services package, it
  is (or was) located at [478]ftp://cb-iris.stanford.edu/pub/pcmcia/,
  but that host no longer seems to be available. Recent distributions
  are on [479]ftp://metalab.unc.edu/pub/Linux/kernel/pcmcia/. You will
  also need to have the kernel source code installed as well. Be sure to
  read the PCMCIA-HOWTO, which is included in the distribution.
    _________________________________________________________________

8.2. How Do I Install Linux Using FTP?

  Installing a major distribution can be impractical because of the size
  of the distribution and interdependence of many of the software
  packages. Installing a basic Linux system that doesn't have a GUI or
  the major applications, is possible with FTP, however. The main
  non-commercial distribution in use is Debian GNU/Linux, and this
  answer describes an installation of the basic Debian system, to which
  you can add other Linux applications and commercial software as
  necessary.

  You will need a system with at least a 80386 processor, 8 Mb of
  memory, and about 100 Mb of disk space. More memory and a larger disk
  is necessary however, for practical everyday use.

    * Connect using anonymous FTP to ftp.debian.org and cd to the
      pub/debian/dists/stable/main/disks-i386/current/ subdirectory.
    * Retrieve the rescue disk, and the drivers disk Depending on the
      floppy drive installed on your machine, retrieve either the
      diskette images with "1200" in the names if you have a 1.2 Mb,
      5.25-in. floppy, or the disks with "1440" in the name if the
      computer has a 3.25-in., 1.44 Mb floppy. Then retrieve the base
      system diskettes. Note that there are 7 base system images in the
      1.44-Mb set (which have a "14" in their names) , and 9 in the
      1.2-Mb set of images (which have a "12" in their names). You will
      use these to create the basic installation diskettes. If you have
      a Linux machine, you can use dd to write the images to the
      diskettes. If you are creating the installation diskettes on a
      MS-DOS machine, also download the RAWRITE.EXE MS-DOS utility,
      which will copy the raw binary images to floppy disks. Also
      download the install.en.txt document, which contains the detailed
      installation instructions.
    * Create the installation disk set on floppies using either the dd
      program under Linux (e.g.: ``dd if=resc1440.bin of=/dev/fd0''), or
      the RAWRITE.EXE utility under MS-DOS. Be sure to label each
      installation diskette.
    * Insert the rescue diskette into the floppy drive and reboot the
      computer. If all goes well, the Linux kernel will boot, and you
      will be able start the installation program by pressing Enter at
      the boot: prompt.
    * Follow the on-screen instructions for partitioning the hard disk,
      installing device drivers, the basic system software, and the
      Linux kernel. If the machine is connected to a local network,
      enter the network information when the system asks for it.
    * To install additional software over the Internet, be sure that you
      have installed the ppp module during the installation process, and
      run (as root) the /usr/sbin/pppconfig utility. You will need to
      provide your user name with your ISP, your password, the ISP's
      dial-up phone number, the address(es) of the ISP's Domain Name
      Service, and the serial port that your modem is connected to,
      /dev/ttyS0--/dev/ttyS3. Be sure also to specify the defaultroute
      option to the PPP system, so the computer knows to use the PPP
      connection for remote Internet addresses.
    * You may have to perform additional configuration on the PPP
      scripts in the /etc/ppp subdirectory, and in particular, the
      ISP-specific script in the /etc/ppp/peers subdirectory. There are
      basic instructions in each script. For detailed information, refer
      to the Debian/GNU Linux installation instructions that you
      downloaded, the pppd manual page (type man pppd), and the PPP
      HOWTO from the Linux Documentation project,
      [480]http://www.linuxdoc.org/.
    * Once you have a PPP connection established with your ISP (it will
      be displayed in the output of ifconfig), use the dselect program
      to specify which additional software you want to install. Use the
      apt [A]ccess option to retrieve packages via anonymous FTP, and
      make sure to use the [U]pdate option to retrieve a current list of
      packages from the FTP archive.
    _________________________________________________________________

8.3. How Can I Get Scrollback in Text Mode?

  With the default US keymap, you can use Shift with the PgUp and PgDn
  keys. (The gray ones, not the ones on the numeric keypad.) With other
  keymaps, look in /usr/lib/keytables. 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,
  [481]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 linux/tty.h.
    _________________________________________________________________

8.4. How Do I Get E-mail to Work?

  For sending mail via SMTP (Simple Mail Transfer Protocol) and
  receiving mail from an ISP's POP (Post Office Protocol) server, you
  can use a desktop client like Netscape Communicator or KDE kmail. You
  will need to enter the names of the SMTP and POP servers in the
  preferences of the respective application, as well as your E-mail
  address (username@isp's-domain-name), and your dial-up password. The
  same applies to Usenet News. Enter the name of the NNTP (Network News
  Transfer Protocol) server in your News client's preferences section.
  You may also have to provide the IP addresses of the ISP's primary and
  secondary name servers.

  If you have a traditional MTA (Mail Transport Agent) like Sendmail,
  Smail, or Exim, you'll need to follow the instructions in each
  package. Basically, configuration entails determining which host
  machine, either on your local LAN or via dial-up Internet, is the
  ``Smart Host,'' if you're using SMTP. If you're using the older UUCP
  protocol, then you'll need to consult the directions for configuring
  UUCP, and also make sure that your ISP's system is configured to relay
  mail to you.

  Information about Internet hosting, and News and E-mail in general, is
  available on the Usenet News group news.announce.newusers, and those
  FAQ's are also archived at [482]ftp://rtfm.mit.edu/pub/usenet/.
    _________________________________________________________________

8.5. How Do I Switch Virtual Consoles? How Do I Enable Them?

  In text mode, press the left Alt-F1 to Alt-F12 to select the consoles
  tty1 to tty12; Right Alt-F1 gives tty13 and so on. To switch out of X
  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
  /etc/inittab, which controls which terminals and virtual consoles have
  login prompts. The X Window System needs at least one free VC in order
  to start.
    _________________________________________________________________

8.6. How Do I Set the Time Zone?

  Change directory to /usr/lib/zoneinfo/. Get the time zone package if
  you don't have this directory. The source is available in
  [483]ftp://metalab.unc.edu/pub/Linux/system/admin/time/.

  Then make a symbolic link named localtime pointing to one of the files
  in this directory (or a subdirectory), and one called posixrules
  pointing to localtime. For example:

ln -sf US/Mountain localtime
ln -sf localtime posixrules

  This change will take effect immediately--try date.

  If the system uses Red Hat-style configuration files, the respective
  time zone info files are /usr/share/zoneinfo and /etc/localtime.

  The manual pages for tzset or tzselect describe 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 GMT time--type date -u and check that the correct UTC time is
  displayed. (``[484]The Computer Has the Wrong Time.'')
    _________________________________________________________________

8.7. How Do I Get Dial-up PPP to Work?

  This information is mainly for people who do not have a wrapper
  utility like kppp or pppconfig, or are not able to get those utilities
  to work correctly. If you need to manually configure PPP to dial in to
  your ISP, you will need the following information:

    * The port that your modem is connected to: /dev/ttyS0--/dev/ttyS3,
      which correspond to COM1-COM4 under MS-DOS.
    * The phone number of your ISP's data connection.
    * The user name and password that your ISP gave you.
    * The IP addresses of the primary and possibly secondary Domain Name
      Service that you will use when dialing in to the ISP. This assumes
      that you will not be using a DNS that you installed on your
      system.

  When you have all of this information, make sure that the programs
  pppd and chat, at the very minimum, are installed correctly. In most
  current distributions, they are installed in the /usr/sbin/ directory,
  and you will need to be logged in as root to use them. In addition,
  the following programs are also useful for configuring network
  connections, determining network status, and diagnosing problems:
  /sbin/ifconfig, /sbin/route, /bin/ping, /usr/sbin/traceroute.

  These are the basic steps that you need to follow to configure PPP.
  You must be logged in as root.

    * Make sure that the serial port and modem are operating correctly.
      Using a program like minicomm or kermit, you should be able to
      send AT commands to the modem and receive the OK string in
      response from the modem.
    * Enter the primary and possibly secondary Domain Name Server IP
      addresses in the /etc/resolv.conf file, using dotted quad
      notation, with the nameserver label. For example:

order hosts,bind
nameserver 199.182.101.103
nameserver 199.182.101.104

      This tells your networking software, when it resolves network
      domain addresses, to first look in the /etc/hosts file, and then
      use the bind service; i.e., the DNS servers, which are specified
      on the lines that begin with nameserver.
    * Locate the chat script that PPP will use to dial the modem and
      connect to your ISP. In many systems, this is either in the
      /etc/chatscripts or /etc/ppp directory, and will be called
      provider or something similar. You can store a chat script
      anywhere, provided that you tell pppd to use it rather than the
      default script. Refer to the chat and pppd manual pages, and the
      information below, for details. Here is a sample chat script:

ABORT        BUSY
ABORT        "NO CARRIER"
ABORT        VOICE
ABORT        "NO DIALTONE"
""           ATDT<your_isp's_phone_number>
ogin         <your_user_name>
word         <your_password>

      This is a chat program for a simple, script based login. The chat
      program uses the pair of strings on each line as a match/response
      pair. When it starts, it sends the string
      ``ATDTyour_isp's_phone_number,'' where you have substituted the
      actual phone number of course. It then waits for the string ogin
      (a substring of the word login) and sends your user name. It then
      waits for word (a substring of password) and sends your password.
      If your ISP uses a different login and password prompts, and any
      additional prompts, you will need to edit the script accordingly.
      Again, refer to the chat manual page for details.
      If your ISP uses PAP or CHAP authentication, you will need to edit
      the pap-secrets or chap-secrets files in /etc/ppp directory as
      well. Refer to the manual pages for these files, as well as the
      instruction in the files themselves.
    * The configuration of pppd, the program that maintains the actual
      connection, is usually contained in two or three separate files.
      The first is usually /etc/ppp/options, which contains options that
      all of your system's PPP connections will use. (Yes, you can have
      more than one; as many as your computer has serial ports,
      generally.)
      Here is a sample /etc/ppp/options file:

# /etc/ppp/options

asyncmap 0
auth
crtscts
lock
noipx

# ---<End of File>---

      The options may be given on one line or each on a separate line.
      Many options files are much longer, and come with a description of
      each option. Here, the options mean, in order, don't remap any
      characters between the PPP client and server; always use password,
      PAP, or CHAP authentication when making a connection; use the
      modem's hardware handshake lines for flow control; lock the serial
      port when in use so no other programs can access it; and do not
      use the IPX network protocol.
    * For connection set-up on each individual serial port or PPP host,
      there will either be an /etc/ppp/options.ttyS1, for example,
      options file for /etc/ttyS1, or a file for your ISP in the
      /etc/ppp/peers directory. The default is often called
      /etc/ppp/peers/provider. Here is a sample of the default provider
      file:

noauth
connect "/usr/sbin/chat -v -f /etc/chatscripts/provider"
defaultroute
/dev/ttyS1
38400
persist

      There might be an explanation of these and other options in the
      /etc/ppp/peers/provider file itself. You can also refer to the
      pppd manual page for details. Briefly, they mean: do not use PAP
      authentication for this connection; use the chat program and the
      /etc/chatscripts/provider script, which is described above, to
      dial the phone and log in; set the network default route to the
      PPP connection (so when your network software needs to resolve an
      network address that is not on your local machine(s), it will use
      the PPP connection to the Internet); use /dev/ttyS1 as the serial
      port for the connection; set the modem speed to 38400; and keep
      the pppd daemon running even if the connection fails.
    * That is all of the configuration you need. To actually start and
      stop PPP, there are often /usr/bin/pon and /usr/bin/poff scripts
      (in Debian), or something similar, and they are usually very
      simple, and only contain the command:

/usr/sbin/pppd call ${1:-provider}

      This will start pppd and use the call option to call the server
      that you type on the command line, or the provider given in the
      /etc/ppp/peers/provider file if you do not specify a remote
      server. After making the call and logging in (about 30 seconds),
      you should be able to use the /sbin/ifconfig program to determine
      that the connection really did establish a PPP interface (the
      first will be ppp0, the second will be ppp1, etc., depending on
      how many simultaneous PPP connections you have. If something goes
      wrong, you can look at the /var/log/ppp.log file to determine what
      happened. You can also view the log as the connection is being
      made, by ``tailing'' it in another window; that is, viewing it as
      pppd logs the connection's status information. To do this, use the
      command (again, as root):

tail -f /var/log/ppp.log

      On some systems the PPP output is directed to /var/log/messages,
      in which case your system may not have a dedicated PPP log file.

  You should be also able to ping one of your ISP's domain names (e.g.,
  mail.isp.com) and receive a response.

  These are the most basic steps for configuring a PPP connection. You
  will also need to take into account what other network connections may
  be present (for example, if there's an Ethernet connection that has
  already been assigned the default route), as well as various security
  measures at your ISP's end. If you're having trouble making the
  dial-up connection, usually the best way to determine what may be
  going wrong is to use Seyon, minicomm, kermit, or some other program
  to dial and log in manually to the ISP, and determine just exactly
  what you have to do to log in, then duplicate that in the PPP scripts.

  Most Linux documentation also has additional instructions for
  configuring PPP connections. Refer to (``[485]Where Can I Get Linux
  Material by FTP?'') (``[486]Where Can I Get the HOWTO's and Other
  Documentation?'')
    _________________________________________________________________

8.8. What Version of Linux and What Machine Name Am I Using?

  Type:

uname -a
    _________________________________________________________________

8.9. How Can I Enable or Disable Core Dumps?

  By using the ulimit command in bash, the limit command in tcsh, or the
  rlimit command in ksh. 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 linux/sched.h--see the
  definition of INIT_TASK, and look also in linux/resource.h.
    _________________________________________________________________

8.10. How Do I Upgrade/Recompile My Kernel?

  See the Kernel HOWTO or the README files which come with the kernel
  release on [487]ftp.cs.helsinki.fi/pub/Software/Linux/Kernel/ and
  mirrors. (See ``[488]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.

make clean dep install modules modules_install

  Also remember to update the module dependencies.

depmod -a

  This command can be run automatically at boot time. On Debian/GNU
  Linux systems, the command is part of the /etc/init.d/modutils script,
  and can be linked appropriately in the /etc/rcx.d/ directories. For
  more information on depmod, see the manual page.

  Make sure you are using the most recent version of the modutils
  utilities, as well as all other supporting packages. Refer to the file
  Documentation/Changes in the kernel source tree for specifics, and be
  sure to consult the README file in the modutils package.

  Remember that to make the new kernel boot you must run lilo after
  copying the kernel into your root partition--the Makefile in some
  kernels have a special zlilo target for this; try:

make zlilo

  On current systems, however, you can simply copy the zImage or bzImage
  file (in arch/i386/boot/ to the /boot/ directory on the root file
  system, or to a floppy using the dd command. Refer also to the
  question, How do I get LILO to boot the kernel image?

  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.
  (``[489]What Mailing Lists Are There?'')

  The Web site [490]http://www.kernelnotes.org/ has lots of information
  and links to other sites that provide information about Linux kernel
  updates.

  Also refer to the questions, ``[491]I Upgraded the Kernel and Now My
  PCMCIA Card Doesn't Work.'' and ``[492]How Do I Get LILO to Boot the
  Kernel Image?''
    _________________________________________________________________

8.11. Can I Have More than 3 Serial Ports by Sharing Interrupts?

  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.
    _________________________________________________________________

8.12. How Do I Update (For Example) the System's Perl Documentation?

  Because program source and documentation files accumulate on machines
  that have been in operation for a long time (like McGee's closet),
  it's a good idea to get acquainted with the ``*nix way of doing
  things'' (TM) to make sure that you know what's on your system. In
  short, let the computer do it for you in the background.

  The following bash shell script uses the programs find, egrep, and sed
  to search directory hierarchies for the text string =head1, which
  signals the start of a Perl POD (Plain Old Documentation) module. It
  then constructs and executes a shell script to generate the formatted
  documentation from those files.

  The programs that do the actual formatting are pod2man and pod2text.
  They are Perl scripts that call Perl library modules. The programs
  pod2latex and pod2html can also be added to the script, if they're
  present on the system. Place the shell script below in a file called
  makepods, and then make the file executable with the shell command:

chmod +x makepods

  Then you should be able to execute it in the current directory with
  the command:

/makepods

snip here
..................................................................
#!/bin/sh
rm -f /tmp/find.tmp
#
#   makepods (C) 1999 by Robert Kiesling
#   This program is free software; it is distributed under the
#   terms of the GNU General Public License, available at
#   http://www.gnu.org/.  This software comes with no warranty,
#   and the author disclaims any responsibility for its (mis)use
#   on your system.
#
#   WARNING:
#   This program can overwrite Perl library files if you are not
#   careful!  You have been warned!
#
#   End of legal.
#   Now back to the program:
#
# List of the top-level directories that you want to search,
# separated by spaces:
#
directories='/usr /var'
#
# Extension that the formatted output files should have.
ext="txt"
#
# Program that does the actual formatting.  Possible values are
# "pod2man" and "pod2text."  Your system may have others...
#
converter="pod2text"
#
# Generate a list of files in the 'directories' hierarchy(s)
# that contain the POD format string '=head1'.
#
for i in  $directories ; do
    find $i -type f -exec grep -l '=head1' {} \; >/tmp/find.tmp
done
#
# Remove from the list the files we're not interested in;
# e.g., man pages, html pages, vim and Emacs scripts....
#
egrep -v -E '*\.([1-9]|html|vim|el?)' /tmp/find.tmp >/tmp/eg1.tmp
#
# Generate a shell script from the commands, so that stdout is in
# the current directory.  In this example, pod2man and pod2text are
# the commands used to format each input file from the list generated
# above, and the output files are given the extension defined by the
# variable "ext."
#
if [ $converter = "pod2man" ] ; then
sed     -e "s/^/$converter --section=$ext /g" \
    -e "s^\(/.*\)^\1 >\1^g" \
    -e "s^>/.*/\([^\.]*\).*$^>\1.$ext^g" </tmp/eg1.tmp >/tmp/sed1.tmp
fi
if [ $converter = "pod2text" ] ; then
sed     -e "s/^/$converter /g" \
    -e "s^\(/.*\)^\1 >\1^g" \
    -e "s^>/.*/\([^\.]*\).*$^>\1.$ext^g" </tmp/eg1.tmp >/tmp/sed1.tmp
fi

# Run the script that we've constructed.
sh /tmp/sed1.tmp

#
# Now we're done.  Clean up after ourselves.
#
rm /tmp/find.tmp /tmp/eg1.tmp /tmp/sed1.tmp

# End of makepods script

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

  Because the shell script searches entire directory hierarchies, it may
  take a while to run.

  If you're the system administrator, the shell script can be made part
  of a cron job to be run weekly, monthly, or at some other interval,
  and inform you by E-mail of any errors that occurred. If the makepods
  script is in /usr/local/sbin/, for example, and you want the formatted
  documentation to be saved in a subdirectory of /usr/local/doc/, then
  the following shell script can be called by cron if you save it (on
  this system) in /etc/cron.d/Weekly/:

#!/bin/sh
cd /usr/local/doc/perl/formatted-pods
/usr/local/sbin/makepods 2>/tmp/mpds.err
mail -s 'Error output of makepod ' root </tmp/mpds.err
rm -f /tmp/mpds.err

  Remember to run chmod +x to make this shell script executable as well.
  This is an example only; it is not the only way that cron jobs can be
  configured. Please consult your local documentation, YMMV (your
  mileage may vary), the author assumes no responsibility for its use,
  misuse, or abuse, etc.
    _________________________________________________________________

8.13. How Do I Configure Emacs to Start with My Default Settings?

  Create a file in your home directory named .emacs with the Emacs Lisp
  commands that you want to run every time Emacs starts up. You won't
  see the file in the directory listing. (The leading '.' tells ls not
  to display it, unless you use the -a command line switch with ls.)

  Any kind of Emacs Lisp statement will work in the .emacs file,
  including entire defuns. Emacs uses lisp variables and statements
  extensively, and many of the editing functions are written in Emacs
  Lisp. For example, to enable word wrapping whenever you edit a file
  that ends with .txt, add the following statement. This is from the
  Emacs Texinfo help document ( F1-i, then m Emacs Return):

(add-hook text-mode-hook
       '(lambda () (auto-fill-mode 1)))

  This adds a statement that calls a hook function whenever a text
  editing mode is entered for that buffer. The value of text-mode-hook,
  which is a variable, to auto-fill-mode, which is a function.

  If you want to turn off the menu bar at the top of each Emacs frame,
  add this statement:

(menu-bar-mode -1)

  And if you want to include an Emacs Lisp program that someone has
  written, like msb.el (an enhanced, pop-up buffer menu), make sure the
  lisp file is in a directory where Emacs can find it (usually it will
  be named Site-lisp), and add these statements in the .emacs file:

(require 'msb)
(msb-mode 1)

  Most tasks have several possible solutions in Emacs Lisp. Any task
  that can be programmed in Emacs Lisp is valid in the .emacs file. For
  more information, consult the Texinfo documentation. There is also a
  FAQ list for Emacs (refer to What other FAQ's are there for Linux? ).
    _________________________________________________________________

8.14. How Do I Make a Rescue Floppy?

  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.
    _________________________________________________________________

8.15. How Do I Remap My Keyboard to UK, French, Etc.?

  For recent kernels, get /pub/Linux/system/Keyboards/kbd-0.90.tar.gz
  from [493]ftp://metalab.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 [494]ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/.
    _________________________________________________________________

8.16. How Do I Get NUM LOCK to Default to On?

  Use the setleds program, for example (in /etc/rc.local or one of the
  /etc/rc.d/* files):

for t in 1 2 3 4 5 6 7 8
do
setleds +num < /dev/tty$t > /dev/null
done

  setleds is part of the kbd package ("How do I remap my keyboard to UK,
  French, etc.? "). Alternatively, patch your kernel. You need to
  arrange for KBD_DEFLEDS to be defined to (1 << VC_NUMLOCK) when
  compiling drivers/char/keyboard.c.
    _________________________________________________________________

8.17. How Do I Set (Or Reset) My Initial Terminal Colors?

  The following shell script should work for VGA consoles:

for n in 1 2 4 5 6 7 8; do
    setterm -fore yellow -bold on -back blue -store > /dev/tty$n
    done

  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 /etc/inittab with references to /sbin/mygetty.

#!/bin/sh
setterm -fore yellow -bold on -back blue -store > $1
exec /sbin/mingetty $@

  [Jim Dennis]
    _________________________________________________________________

8.18. How Can I Have More Than 128Mb of Swap?

  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 512MB. The 128MB 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 mm/swapfile.c has all of the gory details.

  [Peter Moulder, Gordon Weast]
    _________________________________________________________________

9. Miscellaneous Information and Questions Answered

9.1. How Do I Program XYZ Under Linux?

  Read the manuals, or a good book on Unix and the manual pages (type
  man man). There is a lot of GNU Info documentation, which is often
  more useful as a tutorial. Run Emacs and type F1-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 project 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
  [495]metalab.unc.edu/pub/Linux/docs/man-pages/.
    _________________________________________________________________

9.2. What's All This about ELF? glibc?

  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 /lib for a file named, ``libc.so.5.'' 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 ls, and
  run file on it:

-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

  There is a patch to get 1.2.x to compile using the ELF compilers, and
  produce ELF core dumps, at
  [496]ftp://tsx-11.mit.edu/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.

  The GNU glibc2 libraries are essentially more recent versions of ELF
  libraries that follow most of the same processes for dynamic linking
  and loading. Upgrade information is contained in (``[497]How Do I
  Upgrade the Libraries without Trashing My System?'')
    _________________________________________________________________

9.3. How Do I Determine What Packages Are Installed on My System?

  For distributions that use RPM format packages, use the command:

# rpm -qa

  You need to be logged in as root. You can save the output to a text
  file for future reference, a command like:

# rpm -qa >installed-packages

  For Debian systems, the equivalent command is:

# dpkg -l
    _________________________________________________________________

9.4. What Is a .gz file? And a .tgz? And .bz2? And... ?

  .gz (and .z) files are compressed using GNU gzip. You need to use
  gunzip (which is a symlink to the gzip command that comes with most
  Linux installations) to unpack the file.

  .taz, .tar.Z, and .tz are tar files (made with tar) and compressed
  using compress. The standard *nix compress is proprietary software,
  but free equivalents like ncompress exist.

  .tgz (or .tpz) is a tar file compressed with gzip.

  .bz2 is a file compressed by the more recently introduced (and
  efficient) bzip2.

  .lsm is a Linux Software Map entry, in the form of a short text file.
  Details about the LSM project and the LSM itself are available in the
  subdirectory on [498]ftp://metalab.unc.edu/pub/Linux/docs/.

  .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
  [499]ftp://ftp.debian.org//).

  .rpm is a Red Hat RPM package, which is used in the Red Hat and
  similar distributions.

  The file command can often tell you what a file is.

  If you find that gzip complains when you try to uncompress a file, you
  probably downloaded it in ASCII mode by mistake. You must download
  most things in binary mode--remember to type ``binary'' as a command
  in FTP before using, ``get,'' to download the file.
    _________________________________________________________________

9.5. What Does VFS Stand For?

  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.

VFS: Disk change detected on device 2/0
    _________________________________________________________________

9.6. What is a BogoMip?

  ``BogoMips'' is a combination of Bogus and Mips. MIPS stands for
  (depending on who you ask) 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.

  According to the BogoMips mini-HOWTO, the rating for your machine will
  be:

  Table 1. Common BogoMips Ratings
  System BogoMips Comparison
  Intel 8088 clock * 0.004 0.02
  Intel/AMD 386SX clock * 0.14 0.8
  Intel/AMD 386DX clock * 0.18 1 (definition)
  Motorola 68030 clock * 0.25 1.4
  Cyrix/IBM 486 clock * 0.34 1.8
  Intel Pentium clock * 0.40 2.2
  Intel 486 clock * 0.50 2.8
  AMD 5x86 clock * 0.50 2.8
  Mips R4000/R4400 clock * 0.50 2.8
  Nexgen Nx586 clock * 0.75 4.2
  PowerPC 601 clock * 0.84 4.7
  Alpha 21064/21064A clock * 0.99 5.5
  Alpha 21066/21066A clock * 0.99 5.5
  Alpha 21164/21164A clock * 0.99 5.5
  Intel Pentium Pro clock * 0.99 5.5
  Cyrix 5x86/6x86 clock * 1.00 5.6
  Intel Pentium II/III clock * 1.00 5.6
  Intel Celeron clock * 1.00 5.6
  Mips R4600 clock * 1.00 5.6
  Alpha 21264 clock * 1.99 11.1
  AMD K5/K6/K6-2/K6-III clock * 2.00 11.1
  UltraSparc II clock * 2.00 11.1
  Pentium MMX clock * 2.00 11.1
  PowerPC 604/604e/750 clock * 2.00 11.1
  Motorola 68060 clock * 2.01 11.2
  Motorola 68040 Not enough data (yet).
  AMD Athlon Not enough data (yet).
  IBM S390 Not enough data (yet).

  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 (``[500]When I Add More Memory, the System Slows to a
  Crawl.'')

  For values people have seen with other, rarer, chips, or to calculate
  your own BogoMips rating, please refer to the BogoMips Mini-HOWTO, on
  [501]ftp://metalab.unc.edu/. (``[502]Where Can I Get the HOWTO's and
  Other Documentation?'')

  [Wim van Dorst]
    _________________________________________________________________

9.7. What Online/Free Periodicals Exist for Linux?

  There are a number of recent additions to the list of periodicals
  devoted to Linux and free software:

    * geek news. [503]http://geeknews.cjb.net/. Headlines for articles
      about Linux, like the comp.os.linux.announce and Techweb postings,
      and general interest, like Associated Press stories.
    * Linux Gazette. [504]http://www.linuxgazette.com/. This is the
      longest-running of the on-line periodicals, and the only one that
      publishes source code.
    * Linux Today. [505]http://www.linuxtoday.com. News and opinion
      related to the Linux community, updated daily.
    * Linux Weekly News. [506]http://www.lwn.net. News about the Linux
      community, updated weekly.
    * Slashdot. [507]http://www.slashdot.org. News about the free
      software community and culture.
    * Freshmeat. [508]http://www.freshmeat.net/. Notices of new and
      updated software for Linux and other free OS's.

  Please send additions to this list to the FAQ maintainer.

  [Jim Dennis, Robert Kiesling]
    _________________________________________________________________

9.8. How Many People Use Linux?

  Linux is freely available, and no one is required to register with any
  central authority, so it is difficult to know. Several businesses
  survive solely on selling and supporting Linux. Linux news groups are
  some of the most heavily read on Usenet. Accurate numbers are hard to
  come by, but the number is almost certainly in the millions.

  However, people can register as Linux users at the Linux Counter
  project, which has been in existence since 1993. In August, 1998, the
  project counted more than 70,000 users.

  Visit the Web site at [509]http://counter.li.org/ and fill in the
  registration form. If you don't want to use the Web, send E-mail to
  [510]mailto:[email protected] with the subject line, ``I use
  Linux at home,'' or ``I use Linux at work.''

  The current count is posted monthly to comp.os.linux.misc, and is
  always available from the Web site.

  [Harald Tveit Alvestrand]
    _________________________________________________________________

9.9. How Many People Use Linux? (Redux.)

  In 1999, International Data Corporation released its first commercial
  forecast of Linux sales. The report quantifies Linux vendor sales in
  1996, 1997, and 1998, and forecasts through the year 2003.

  To obtain the report, contact IDC at [511]mailto:[email protected].
  Their Web site is [512]http://www.itresearch.com/.
    _________________________________________________________________

9.10. How Should I Pronounce Linux?

  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
  [513]ftp.funet.fi/pub/Linux/PEOPLE/Linus/SillySounds/. If you have a
  sound card or the PC-speaker audio driver you can hear them by typing

cat english.au >/dev/audio

  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).
    _________________________________________________________________

9.11. Where Is the Linux Food Page?

  It's at [514]http://members.xoom.com/gnulix_guy/geek-gourmet/. It
  contains recipes for dishes like Fusili Chicken Marinara, Speedy
  Guacamole, and Idiot-proof pilaf, as well as hints for cooking things
  in a hurry. At the time of this writing, no recipes for penguin,
  though.
    _________________________________________________________________

9.12. Where Can I Find Out about Free Software Projects?

  The Free Software Bazaar lists current openings to do work on free
  software projects, and tells how to sponsor free software projects and
  how to make money writing free software. Its URL is
  [515]http://www.csustan.edu/bazaar/.
    _________________________________________________________________

10. Frequently Encountered Error Messages

10.1. Modprobe Can't Locate Module, XXX, and Similar Messages.

  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.

alias <module-name> off

  And use the name of the module that appears in the error message.

  [J.H.M. Dassen]
    _________________________________________________________________

10.2. Unknown Terminal Type ``linux'' and Similar.

  In early kernels the default console terminal type has changed from
  ``console'' to ``linux.'' You must edit /etc/termcap to change the
  line reading:

console|con80x25:\

  to

linux|console|con80x25:\

  (there may be an additional ``dumb'' in there--if so it should be
  removed.)

  To get the editor to work you may need say

TERM=console

  (for bash and ksh), or

setenv TERM console

for csh or tcsh.

  Some programs use /usr/lib/terminfo instead of /etc/termcap. For these
  programs you should upgrade your terminfo package, which is part of
  ncurses.

  The same is true for X terminal displays. If your distribution sets
  the TERM to something strange like xterm-24-color, you can simply
  reset it to a generic value from the command line:

# TERM="xterm"; export TERM
    _________________________________________________________________

10.3. INET: Warning: old style ioctl... called!

  You are trying to use the old network configuration utilities. The new
  ones can be found on
  [516]ftp.linux.org.uk/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.
    _________________________________________________________________

10.4. ld: unrecognized option '-m486'

  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.
    _________________________________________________________________

10.5. GCC says, ``Internal compiler error.''

  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 F1-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 (``[517]Make Says, ``Error 139.'''')
    _________________________________________________________________

10.6. Make Says, ``Error 139.''

  Your compiler (GCC) dumped core. You probably have a corrupted, buggy,
  or old version of GCC--get the latest release or EGCS. Alternatively,
  you may be running out of swap space--see (``[518]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 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 (``[519]How Do I
  Upgrade/Recompile My Kernel?'') 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
  [520]http://www.bitwizard.nl/sig11/.
    _________________________________________________________________

10.7. Shell-Init: Permission Denied when I Log in.

  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.
    _________________________________________________________________

10.8. No Utmp Entry. You Must Exec ... when Logging in.

  Your /var/run/utmp is screwed up. You should have

> /var/run/utmp

  in your /etc/rc.local or /etc/rc.d/*. See, (``[521]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.
    _________________________________________________________________

10.9. Warning--bdflush Not Running.

  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
  (``[522]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.
    _________________________________________________________________

10.10. Warning: obsolete routing request made.

  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. (``[523]How Do I Upgrade/Recompile My
  Kernel?'')
    _________________________________________________________________

10.11. EXT2-fs: warning: mounting unchecked file system.

  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
  (``[524]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

VFS: mounted root ... read-only

  at boot time. You must arrange to mount the root file system read/only
  to start with, check it if necessary, and then remount it read/write.
  Almost all distributions do this. If your's doesn't, read the
  documentation that comes with 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.
    _________________________________________________________________

10.12. EXT2-fs warning: maximal count reached.

  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. (``[525]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.
    _________________________________________________________________

10.13. EXT2-fs warning: checktime reached.

  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. (``[526]EXT2-fs
  warning: maximal count reached.'')
    _________________________________________________________________

10.14. df Says, ``Cannot read table of mounted file systems.''

  There is probably something wrong with your /etc/mtab or /etc/fstab
  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

rm -f /etc/mtab*

  Some old Linux distributions have an entry for the root partition in
  /etc/mtab made in /etc/rc* by using rdev. That is incorrect--the newer
  versions of mount do this automatically.

  Some old distributions also have a line in /etc/fstab that looks like:

/dev/sdb1   /root   ext2   defaults

  The entry for /root should read simply /.
    _________________________________________________________________

10.15. fdisk Says, ``Partition X has different physical/logical...''

  If the partition number (X, above) is 1, this is the same problem as
  in 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 (``[527]How Can I Get Linux to Work with My
  Disk?'')
    _________________________________________________________________

10.16. fdisk: Partition 1 does not start on cylinder boundary.

  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.

    * Create partition 1 in the normal way. A `p' listing will produce
      the mismatch complaint.
    * Type u to set sector mode and do p again. Copy down the number
      from the End column.
    * Delete partition 1.
    * 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.
    * Type u to reset cylinder mode and continue with other partitions.

  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.
    _________________________________________________________________

10.17. fdisk Says Partition n Has an Odd Number of Sectors.

  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.
    _________________________________________________________________

10.18. A Mtools Utility Says It Cannot Initialize Drive XYZ.

  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 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!
    _________________________________________________________________

10.19. At the Start of Booting: Memory tight

  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. (``[528]How Do I
  Upgrade/Recompile My Kernel?'')
    _________________________________________________________________

10.20. My Syslog says, ``end_request: I/O error, ....''

  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 home brew systems. If you install an IDE drive, always
  use new ribbon 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 Ts'o]
    _________________________________________________________________

10.21. ``You don't exist. Go away.''

  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).
    _________________________________________________________________

11. The X Window System

11.1. Does Linux Support X?

  Yes. Linux uses XFree86 (the current version is 4.0, which is based on
  X11R6). You need to have a video card which is supported by XFree86.
  See the XFree86 HOWTO for more details. Most Linux distributions
  nowadays come with an X installation. However, you can install or
  upgrade your own, from
  [529]"ftp://metalab.unc.edu/pub/Linux/X11/Xfree86-*" and its mirror
  sites, or from [530]http://www.xfree86.org/.
    _________________________________________________________________

11.2. How Do I Get the X Window System to Work?

  The answers to this question can, and do, fill entire books. If the
  installation program wasn't able to configure the X server correctly,
  Linux will most likely try to start the X display, fail, and drop back
  into text-only terminal mode.

  First and foremost, make certain that you have provided, as closely as
  possible, the correct information to the installation program of your
  video hardware: the video card and monitor. Some installation programs
  can correctly guess a ``least common denominator'' screen
  configuration, like a 640-by-480 VESA-standard display, but there are
  many possible video hardware configurations that may not be able to
  display this standard.

  The X Window System configuration file is called (usually)
  /etc/XF86Config, /etc/X11/XF86Config, or
  /usr/X11R6/lib/X11/XF86Config.

  If you need to manually configure the X server, there are several
  possible methods:

    * Try to use the XF86Setup program, which can help identify the
      correct X server and monitor timings for the video hardware.
    * Make sure that the X server has the correct options. If you log in
      as the superuser, you should be able to use X --probeonly to get a
      listing of the video card chipset, memory, and any special
      graphics features. Also, refer to the manual page for the X
      server. (E.g.; man X) Also, try running the X server and
      redirecting the standard error output to a file so you can
      determine what error messages the server is generating; e.g., X
      2>x.error.
    * With that information, you should be able to safely refer to one
      of the references provided by the Linux Documentation Project.
      ("Where can I get the HOWTO's and other documentation? ") There
      are several HOWTO's on the subject, including a HOWTO to calculate
      video timings manually if necessary. Also, the Installation and
      Getting Started guide has a chapter with a step-by-step guide to
      writing a XF86Config file.

  Also, make sure that the problem really is an incorrect XF86Config
  file, not something else like the window manager failing to start. If
  the X server is working correctly, you should be able to move the
  mouse cursor on the screen, and pressing Ctrl-Alt-Backspace will shut
  down the X server and return to the shell prompt in one of the virtual
  terminals.
    _________________________________________________________________

11.3. Where Can I Get a Ready-Made XF86Config for My System?

  If you can't seem to get X working using the guidelines above, refer
  to the 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 not 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. If you have a laptop, look at the Linux Laptop Web page
  (``[531]How Do I Know If My Notebook Runs Linux?'') Many of the
  installation notes also have the XF86Config file for the display. If
  you have a desktop machine, there are a few sample XF86Config files at
  [532]ftp://metalab.unc.edu/. Refer also to the XFree86 FAQ
  [533]http://www.xfree.org/FAQ/ and the monitor timings list
  [534]http://www.xfree.org/#resources/, and in the /usr/X11R6/lib/X11/
  directory of your X distribution.
    _________________________________________________________________

11.4. What Desktop Environments Run on Linux?

  Linux with XFree86 supports the KDE, GNOME, and commercial CDE desktop
  environments, and extended window managers like WindowMaker. Each uses
  a different set of libraries and provides varying degrees of MS
  Windows-like look and feel.

  Information on KDE is available from [535]http://www.kde.org/. The KDE
  environment uses the Qt graphics libraries, available from
  [536]http://www.qt.org/. The desktop uses its own window manager, kwm,
  and provides a MS Windows-like look and feel.

  The GNOME home page is [537]http://www.gnome.org/. The environment
  uses the free GTK libraries, available from [538]http://www.gtk.org/,
  and the Enlightenment window manager, available from
  [539]http://www.enlightenment.org/.

  The commercial CDE environment uses the Motif libraries and window
  manager, mwm. Several vendors have made the source code of Motif
  available and provided binary packages for Linux distributions.
  Download and installation information is available at
  [540]http://www.opengroup.org/openmotif/.

  A free version of Motif, called LessTiF, is available from
  [541]http://www.lesstif.org/.

  WindowMaker, [542]http://www.windowmaker.org/ is a window manager that
  has many desktop environment-like features. It provides support for
  GNUstep, [543]http://www.gnustep.org/ a clone of the commercial
  NeXTStep environment.
    _________________________________________________________________

11.5. xterm Logins Show Up Strangely in who, finger.

  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.
    _________________________________________________________________

12. How to Get Further Assistance

12.1. You Still Haven't Answered My Question!

  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 [544]mailto:[email protected].

  Read the appropriate Linux Documentation Project books--see
  (``[545]Where Can I Get the HOWTO's and Other Documentation?'')

  If you're a Unix or Linux newbie, read the FAQ for
  comp.unix.questions, news.announces.newusers, 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 FAQ's, like all
  FAQ's, be found on [546]rtfm.mit.edu in /pub/usenet/news.answers/ (the
  [547]mailto:[email protected] 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. Also try man -k subject and apropos
  subject --they often list useful and relevant manual pages.

  Check the Info documentation (type F1-i, i.e. the F1 function key
  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--it 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. "( What to put in a request for help. )"
    _________________________________________________________________

12.2. What to Put in a Request for Help.

  Please read the following advice carefully about how to write your
  posting or E-mail. Making a complete posting will greatly increase the
  chances that an expert or fellow user reading it will have enough
  information and motivation to reply.

  This advice applies both to postings asking for advice and to personal
  E-mail sent to experts and fellow users.

  Make sure you give full details of the problem, including:

    * 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
      --version option.
    * Which Linux release you're using (Red Hat, Slackware, Debian, or
      whatever) and what version of that release.
    * The exact and complete text of any error messages printed.
    * Exactly what behavior you expected, and exactly what behavior you
      observed. A transcript of an example session is a good way to show
      this.
    * The contents of any configuration files used by the program in
      question and any related programs.
    * 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*.''
    * Details of what hardware you're running on, if it seems
      appropriate.

  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.

  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 E-mail sent to you personally
  without the sender's permission.
    _________________________________________________________________

12.3. I Want to Mail Someone about My Problem.

  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 likely asking for help from unpaid volunteers, so you have no
  right to expect an answer.
    _________________________________________________________________

13. Acknowledgments and Administrivia

13.1. Feedback Is Invited.

  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. My E-mail address
  is [548]mailto:[email protected].

  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.
    _________________________________________________________________

13.2. Formats in Which This FAQ Is Available.

  This document is available as an ASCII text file, an HTML World Wide
  Web page, Postscript, and as a USENET news posting.

  HTML is generated from SGML source using the Jade DSSSL interpreter by
  James Clark. Text versions are generated using lynx, which is part of
  most Linux distributions. Hard-copy versions are further formatted
  with JadeTeX, by Sebastian Rahtz.

  The Usenet version is posted regularly to news.answers, comp.answers,
  and comp.os.linux.misc. It is archived at
  [549]ftp://rtfm.mit.edu/pub/usenet-by-hierarchy/comp/os/linux/misc/.

  If you would like to receive the archived version of the FAQ by
  E-mail, send the following in the body of an E-mail message to
  [550]mailto:[email protected]:

send faqs/linux/faq

  Text, HTML, and SGML versions are available from the Linux archives at
  metalab.unc.edu, and from [551]http://www.linuxdoc.org/, but they may
  be out of date, owing to lack of time on the LDP maintainers' parts.

  The up-to-date text and HTML versions are available at
  [552]http://www.mainmatter.com and directly from the FAQ maintainer,
  [553]mailto:[email protected].
    _________________________________________________________________

13.3. Authorship and Acknowledgments.

  This FAQ is compiled and maintained by Robert Kiesling,
  [554]mailto:[email protected], 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
  the former Linux Documentation Project HOWTO maintainer, 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!
    _________________________________________________________________

13.4. Disclaimer and Copyright.

  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.

  These conditions are in addition to the regular LDP distribution
  license, at [555]http://www.linuxdoc.org/manifesto.html/

  Exceptions to these rules may be granted. I would be happy to answer
  any questions regarding this copyright. E-mail me at
  [556]mailto:[email protected]. As the license below says, these
  restrictions are here to protect the contributors, not to restrict you
  as educators and learners.

References

  Visible links
  1. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN15
  2. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1298
  3. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN277
  4. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3759
  5. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3844
  6. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN13
  7. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN15
  8. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN31
  9. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN46
 10. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN71
 11. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN90
 12. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN161
 13. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN166
 14. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN171
 15. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN177
 16. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN184
 17. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN198
 18. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN204
 19. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN206
 20. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN213
 21. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN226
 22. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN249
 23. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN257
 24. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN259
 25. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN277
 26. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1040
 27. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1179
 28. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1280
 29. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1298
 30. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1572
 31. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1585
 32. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1591
 33. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1602
 34. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1607
 35. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1630
 36. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1635
 37. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1637
 38. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1657
 39. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1672
 40. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1691
 41. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1697
 42. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1704
 43. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1711
 44. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1716
 45. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1729
 46. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1734
 47. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1754
 48. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1775
 49. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1785
 50. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1800
 51. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1831
 52. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1833
 53. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1844
 54. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1855
 55. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1866
 56. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1876
 57. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1889
 58. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1914
 59. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1922
 60. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1927
 61. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1941
 62. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1965
 63. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1983
 64. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2020
 65. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2026
 66. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2030
 67. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2042
 68. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2049
 69. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2052
 70. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2059
 71. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2061
 72. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2073
 73. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2094
 74. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2115
 75. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2121
 76. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2133
 77. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2178
 78. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2199
 79. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2218
 80. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2228
 81. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2247
 82. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2258
 83. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2276
 84. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2290
 85. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2320
 86. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2334
 87. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2342
 88. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2347
 89. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2352
 90. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2354
 91. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2358
 92. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2364
 93. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2373
 94. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2387
 95. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2394
 96. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2405
 97. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2414
 98. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2422
 99. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2429
100. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2438
101. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2447
102. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2478
103. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2490
104. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2518
105. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2522
106. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2540
107. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2545
108. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2554
109. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2625
110. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2627
111. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2659
112. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2705
113. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2720
114. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2728
115. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2752
116. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2776
117. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2891
118. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2896
119. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2910
120. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2953
121. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2957
122. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2989
123. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3022
124. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3029
125. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3040
126. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3053
127. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3070
128. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3079
129. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3081
130. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3095
131. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3113
132. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3124
133. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3169
134. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3178
135. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3320
136. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3358
137. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3372
138. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3380
139. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3392
140. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3397
141. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3402
142. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3404
143. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3415
144. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3449
145. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3458
146. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3466
147. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3476
148. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3489
149. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3493
150. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3506
151. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3517
152. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3524
153. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3549
154. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3557
155. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3562
156. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3586
157. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3593
158. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3619
159. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3624
160. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3635
161. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3640
162. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3649
163. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3658
164. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3660
165. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3668
166. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3696
167. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3721
168. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3748
169. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3757
170. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3759
171. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3797
172. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3829
173. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3834
174. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3836
175. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3844
176. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3868
177. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3878
178. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN90
179. http://www.transmeta.com/
180. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN277
181. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN184
182. http://ps.cus.umist.ac.uk/~rhw/kernel.versions.html
183. http://www.linuxdoc.org/
184. http://www.mainmatter.com/
185. http://heather.cs.ucdavis.edu/~matloff/linux.html
186. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1298
187. ftp://ftp.dosemu.org/dosemu
188. http://www.dosemu.org/
189. ftp://metalab.unc.edu/pub/Linux/docs/HOWTO
190. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1734
191. ftp://tsx-11.mit.edu/pub/linux/BETA/ibcs2/README
192. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN277
193. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2115
194. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1607
195. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN166
196. http://www.dgmicro.com/mca
197. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1040
198. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN277
199. http://www.linux.org.uk/Linux8086.html
200. http://www.ctv.es/USERS/xose/linux/linux_ports.html
201. http://www.linuxhq.com/dist-index.html
202. http://www.clark.net/pub/lawrencc/linux/faq/faq.html
203. http://www.linux-m68k.org/
204. ftp://sunsite.auc.dk/pub/os/linux/680x0/redhat/
205. http://www.feist.com/~rjflory/linux/rh/
206. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1591
207. file://localhost/export/sunsite/users/gferg/faq/ftp.phil.uni-sb.de/pub/atari/linux-68k
208. http://www.debian.org/MailingLists/subscribe
209. http://www.debian.org/MailingLists/subscribe
210. http://www.linuxppc.org/
211. ftp://ftp.linuxppc.org/linuxppc
212. http://www.cs.nmt.edu/~linuxppc/
213. http://w3.one.net/~johnb/imaclinux
214. http://www.imaclinux.net:8080/content/index.html
215. http://www.azstarnet.com/~axplinux/
216. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1591
217. ftp://ftp.fnet.fr/linux-mips
218. ftp://ftp.linux.sgi.com/pub/mips-linux
219. mailto:[email protected]
220. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1591
221. http://www.arm.uk.linux.org/
222. http://www.geog.ubc.ca/sparclinux.html
223. ftp://vger.rutgers.edu/pub/linux/Sparc
224. http://sunsite.mff.cuni.cz/linux/ultrapenguin-1.0/
225. http://www.linux.sgi.com/
226. http://www.linux-usb.org/
227. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1040
228. ftp://rtfm.mit.edu/pub/usenet/news.answers/law/copyright
229. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1602
230. http://www.unix-systems.org/what_is_unix.html
231. http://www.pzcommunications.com/main.htm
232. http://www.ftc.gov/acoas/papers/finalreport.htm
233. http://www.ftc.gov/bcp/menu-internet.htm/
234. http://www.nytimes.com/library/tech/reference/index-privacy.html
235. http://www.epic.org/
236. http://www.debian.org/
237. http://www.hex.net/~cbbrowne/linuxy2k.html
238. http://www.debian.org/y2k/
239. http://www.fsf.org/software/year2000.html
240. http://www.redhat.com/support/errata/
241. http://www.calderasystems.com/company/y2k/problem.html
242. ftp://sourceware.cygnus.com/
243. http://www.tip.net.au/~edlang/linux/linux2.2pr.html
244. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1591
245. http://features.linuxtoday.com/stories/8191.html
246. http://www.linuxdoc.org/
247. ftp://ftp.funet.fi/pub/OS/Linux/doc/HOWTO/
248. ftp://tsx-11.mit.edu/pub/linux/docs/HOWTO/
249. ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/
250. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1298
251. mailto:[email protected]
252. mailto:[email protected]
253. mailto:[email protected]
254. http://www.linuxdoc.org/
255. http://metalab.unc.edu/pub/Linux/docs/HOWTO/mini/
256. ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/translations/
257. mailto:[email protected]
258. ftp://metalab.unc.edu/pub/Linux/HOWTO/HOWTO-INDEX
259. http://wallybox.cei.net/~tjbynum/HOWTO/projects
260. http://howto.tucows.org/
261. http://www.linuxdoc.org/
262. http://www.freek.com/lasg/
263. http://www.linuxdoc.org/nlm/
264. http://www.powerup.com.au/~squadron/
265. http://www.stuwww.kub.nl/people/b.vannunen/linux-man.php3
266. http://www.tahallah.demon.co.uk/programming/prog.html
267. http://www.let.rug.nl/~kleiweg/
268. http://www.tux.org/html/
269. http://humbolt.geo.uu.nl/Linux-MM/
270. http://www.linuxports.com/
271. http://members.aa.net/~swear/pedia/index.html
272. http://www.best.com/~aturner//RedHat-FAQ/faq_index.html
273. http://www.mainmatter.com/
274. http://www.linuxdoc.org/
275. http://www.li.org/
276. http://www.linux.org/
277. http://www.linuxbox.com/~taylor/4ltrwrd/
278. http://www.aboutlinux.com/
279. http://members.xoom.com/rpragana/
280. http://linux.davecentral.com/
281. http://pocket.fluff.org/~mrw/linux/ext2.txt
282. http://visar.csustan.edu/giveaway.html
283. mailto:[email protected]
284. http://www.smartstocks.com/linux.html
285. http://www.stormloader.com/jrusso2/index.html
286. http://www.justlinux.com/
287. http://www.linuxartist.org/
288. http://www.cse.unsw.edu.au/~conradp/linux/cartoons/
289. http://www.linuxchix.org/
290. http://www.slip.net/~brk/linuxedpp.htm
291. file://localhost/export/sunsite/users/gferg/faq/www.bynari.com/collateral/case_studies.html
292. http://linuxinside.org/
293. http://www.linuxlinks.com/
294. http://humbolt.geo.uu.nl/Linux-MM/
295. http://kusma.hypermart.net/
296. http://www.e-oasis.com/linux-tp.html
297. http://www.torque.net/linux-pp.html
298. http://sound.condorow.net/
299. http://www.linuxstart.com/
300. http://www.patoche.org/LTT/
301. http://www.linuxpr.com/
302. http://www.atnf.csiro.au/~rgooch/linux/
303. http://www.dgmicro.com/mca/
304. http://www2.prestel.co.uk/hex/scanners.html
305. http://www.vaxxine.com/pegasoft/portal/
306. http://www.searchlinux.com/
307. http://peloncho.fis.ucm.es/~inaky/uusbd-www/
308. http://www.vlug.com/
309. mailto:[email protected]
310. http://www.iki.fi/mjr/linux/cola.html
311. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3759
312. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1585
313. http://homes.arealcity.com/swietanowski/LinuxFAQ/
314. http://members.home.net/scieng/
315. http://www.ccs.neu.edu/software/contrib/gnus/
316. ftp://ftp.funet.fi/pub/OS/Linux/
317. ftp://metalab.unc.edu/pub/Linux/
318. ftp://tsx-11.mit.edu//pub/linux/
319. ftp://ftp.kernel.org/pub/linux/kernel/
320. ftp://ftp.debian.org/pub/debian/
321. ftp://ftp.redhat.com/
322. ftp://ftp.freesoftware.com/
323. http://smalllinux.netpedia.net/
324. ftp://ftp.sun.ac.za/pub/linux/sunsite/
325. ftp://ftp.is.co.za/linux/sunsite/
326. ftp://ftp.cs.cuhk.hk/pub/Linux/
327. ftp://sunsite.ust.hk/pub/Linux/
328. ftp://ftp.spin.ad.jp/pub/linux/
329. ftp://ftp.nuri.net/pub/Linux/
330. ftp://ftp.jaring.my/pub/Linux/
331. ftp://ftp.nus.sg/pub/unix/Linux/
332. ftp://ftp.nectec.or.th/pub/mirrors/linux/
333. ftp://mirror.aarnet.edu.au/pub/linux/
334. ftp://sunsite.anu.edu.au/pub/linux/
335. ftp://ftp.monash.edu.au/pub/linux/
336. ftp://ftp.univie.ac.at/systems/linux/sunsite/
337. ftp://ftp.fi.muni.cz/pub/UNIX/linux/
338. ftp://ftp.funet.fi/pub/Linux/sunsite/
339. ftp://ftp.univ-angers.fr/pub/Linux/
340. ftp://ftp.iut-bm.univ-fcomte.fr/
341. ftp://ftp.ibp.fr/pub/linux/sunsite/
342. ftp://ftp.loria.fr/pub/linux/sunsite/
343. ftp://ftp.dfv.rwth-aachen.de/pub/linux/sunsite/
344. ftp://ftp.germany.eu.net/pub/os/Linux/Mirror.SunSITE/
345. ftp://ftp.tu-dresden.de/pub/Linux/sunsite/
346. ftp://ftp.uni-erlangen.de/pub/Linux/MIRROR.sunsite/
347. ftp://ftp.gwdg.de/pub/linux/mirrors/sunsite/
348. file://localhost/export/sunsite/users/gferg/faq/ftp.rz.uni-karlsruhe.de/pub/linux/mirror.sunsite/
349. ftp://ftp.ba-mannheim.de/pub/linux/mirror.sunsite/
350. ftp://ftp.uni-paderborn.de/pub/Mirrors/sunsite.unc.edu/
351. ftp://ftp.uni-rostock.de/Linux/sunsite/
352. file://localhost/export/sunsite/users/gferg/faq/ftp.rus.uni-stuttgart.de/pub/unix/systems/linux/MIRROR.sunsite/
353. ftp://ftp.uni-tuebingen.de/pub/linux/Mirror.sunsite/
354. ftp://ftp.kfki.hu/pub/linux/
355. ftp://linux.italnet.it/pub/Linux/
356. ftp://ftp.unina.it/pub/linux/sunsite/
357. ftp://giotto.unipd.it/pub/unix/Linux/
358. ftp://cnuce-arch.cnr.it/pub/Linux/
359. ftp://ftp.flashnet.it/mirror2/metalab.unc.edu/
360. ftp://ftp.nijenrode.nl/pub/linux/
361. ftp://ftp.LeidenUniv.nl/pub/linux/sunsite/
362. ftp://ftp.nvg.unit.no/pub/linux/sunsite/
363. ftp://sunsite.icm.edu.pl/pub/Linux/metalab.unc.edu/
364. ftp://ftp.rediris.es/software/os/linux/sunsite/
365. ftp://sunsite.rediris.es/software/linux/
366. ftp://ftp.cs.us.es/pub/Linux/sunsite-mirror/
367. ftp://ftp.etse.urv.es/pub/mirror/linux/
368. ftp://ftp.etsimo.uniovi.es/pub/linux/
369. ftp://ftp.luna.gui.es/pub/linux.new/
370. ftp://ftp.metu.edu.tr/pub/linux/sunsite/
371. ftp://unix.hensa.ac.uk/mirrors/sunsite/pub/Linux/
372. file://localhost/export/sunsite/users/gferg/faq/ftp.maths.warwick.ac.uk/mirrors/linux/sunsite.unc-mirror/
373. ftp://ftp.idiscover.co.uk/pub/Linux/sunsite.unc-mirror/
374. ftp://sunsite.doc.ic.ac.uk/packages/linux/sunsite.unc-mirror/
375. ftp://ftp.io.org/pub/mirrors/linux/sunsite/
376. ftp://ftp.cc.gatech.edu/pub/linux/
377. ftp://ftp.freesoftware.com/pub/linux/sunsite/
378. ftp://ftp.siriuscc.com/pub/Linux/Sunsite/
379. ftp://ftp.engr.uark.edu/pub/linux/sunsite/
380. ftp://ftp.infomagic.com/pub/mirrors/linux/sunsite/
381. ftp://linux.if.usp.br/pub/mirror/metalab.unc.edu/pub/Linux/
382. ftp://farofa.ime.usp.br/pub/linux/
383. mailto:[email protected]
384. mailto:[email protected]
385. mailto:[email protected]
386. ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/Installation-HOWTO
387. ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/Distribution-HOWTO
388. mailto:[email protected]
389. mailto:[email protected]
390. http://www.onelist.com/
391. mailto:[email protected]
392. http://www.dejanews.com/
393. http://altavista.digital.com/
394. http://www.reference.com/
395. ftp://metalab.unc.edu/pub/Linux/docs/linux-announce.archive
396. file://localhost/export/sunsite/users/gferg/faq/src.doc.ic.ac.uk/usenet/
397. http://www.leo.org/archiv/unix/linux/
398. http://www.rootshell.com/
399. http://bmrc.berkeley.edu/people/chaffee/fat32.html
400. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN46
401. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1298
402. http://www.netspace.net.au/~reiter/e2compr/
403. http://debs.fuller.edu/e2compr/
404. ftp://metalab.unc.edu/pub/Linux/libs/
405. ftp://metalab.unc.edu/pub/Linux/patches/diskdrives/
406. ftp://metalab.unc.edu/pub/Linux/utils/compress/
407. ftp://metalab.unc.edu/pub/Linux/system/filesystems/dosfs/
408. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2910
409. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2910
410. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2910
411. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2910
412. file://localhost/export/sunsite/users/gferg/faq/metalab.unc.edu/pub/Linux/system/network/samba/
413. http://www.samba.org/
414. file://localhost/export/sunsite/users/gferg/faq/samba.anu.edu.au/samba/
415. file://localhost/export/sunsite/users/gferg/faq/metalab.unc.edu/pub/Linux/utils/disk-management/
416. ftp://metalab.unc.edu/pub/Linux/docs/faqs/Wine-FAQ/
417. http://www.linuxnfs.sourceforge.org/
418. ftp://ftp.us.kernel.org/
419. ftp://ftp.varesearch.com/pub/kernel/latest/patches/
420. ftp://linux.mathematik.tu-darmstadt.de/pub/linux/people/okir/
421. http://www.dcs.ed.ac.uk/home/jec/programs/xfsft/
422. http://www.linuxdoc.org/
423. http://www.amanda.org/
424. ftp://ftp.gnu.org/pub/gnu/parted/
425. ftp://metalab.unc.edu/pub/Linux/system/filesystems/defrag-0.70.tar.gz
426. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN277
427. mailto:[email protected]
428. http://linux.msede.com/lvm/
429. http://pweb.de.uu.net/flexsys.mtk/
430. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3070
431. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3524
432. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3524
433. http://devlinux.org/namesys/
434. ftp://ftp.gnu.org/pub/gnu/
435. http://egcs.cygnus.com/
436. http://java.sun.com/products/jdk/1.2/download-linux.html
437. http://www.transvirtual.com/products/
438. http://www10.software.ibm.com/developerworks/opensource/jikes
439. http://www.java.sun.com/products/hotjava/
440. http://www.netscape.com/
441. http://tsx-11.mit.edu/pub/linux/packages/GCC/
442. ftp://metalab.unc.edu/pub/Linux/docs/linux-software-map/
443. http://www.boutell.com/lsm/
444. ftp://ftp.ix.de/pub/ix/Linux/docs/Projects-Map.gz
445. http://lfw.linuxhq.com/
446. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2115
447. mailto:[email protected]
448. ftp://tsx-11.mit.edu/pub/linux/ALPHA/pentium-gcc/
449. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2910
450. ftp://tsx-11.mit.edu/pub/linux/packages/GCC/
451. file://localhost/export/sunsite/users/gferg/faq/tsx-11.mit.edu/pub/linux/packages/GCC/src/
452. ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/
453. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3095
454. ftp://ftp.gnu.org/pub/gnu/
455. sipb.mit.edu:/pub/pthread/
456. ftp.ibp.fr:/pub/unix/threads/pthreads
457. http://www.mit.edu:8001/people/proven/home_page.html
458. ftp://metalab.unc.edu/pub/Linux/devel/lang/ada/gnat-3.01-linux+elf.tar.gz
459. ftp://ftp.cs.washington.edu/pub/qt-001.tar.Z
460. ftp://ftp.cs.fsu.edu/pub/PART/
461. ftp://larch.lcs.mit.edu/pub/Larch/lclint/
462. http://larch-www.lcs.mit.edu:8001/larch/lclint.html
463. ftp://kermit.columbia.edu/
464. http://www.columbia.edu/kermit/
465. http://www.cablemodeminfo.com/
466. http://www.mirabilis.com/download/
467. ftp://tsx-11.mit.edu/pub/linux/sources/usr.bin/shadow/
468. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2414
469. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2910
470. ftp://metalab.unc.edu/pub/Linux/system/Recovery/
471. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1591
472. http://www.topica.com/lists/linux-thinkpad/
473. http://www.bm-soft.com/
474. mailto:[email protected]
475. http://www.cs.utexas.edu/users/kharker/linux-laptop/
476. http://peipa.essex.ac.uk/tp-linux/
477. http://www.torque.net/linux-pp.html
478. ftp://cb-iris.stanford.edu/pub/pcmcia/
479. ftp://metalab.unc.edu/pub/Linux/kernel/pcmcia/
480. http://www.linuxdoc.org/
481. http://vector.co.jp/vpack/browse/person/an010455.html
482. ftp://rtfm.mit.edu/pub/usenet/
483. ftp://metalab.unc.edu/pub/Linux/system/admin/time/
484. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2373
485. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1298
486. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN277
487. file://localhost/export/sunsite/users/gferg/faq/ftp.cs.helsinki.fi/pub/Software/Linux/Kernel/
488. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1298
489. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1591
490. http://www.kernelnotes.org/
491. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2554
492. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2545
493. ftp://metalab.unc.edu/
494. ftp://metalab.unc.edu/pub/Linux/docs/HOWTO/
495. file://localhost/export/sunsite/users/gferg/faq/metalab.unc.edu/pub/Linux/docs/man-pages/
496. ftp://tsx-11.mit.edu/pub/packages/GCC/
497. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2133
498. ftp://metalab.unc.edu/pub/Linux/docs/
499. ftp://ftp.debian.org/
500. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2405
501. ftp://metalab.unc.edu/
502. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN277
503. http://geeknews.cjb.net/
504. http://www.linuxgazette.com/
505. http://www.linuxtoday.com/
506. http://www.lwn.net/
507. http://www.slashdot.org/
508. http://www.freshmeat.net/
509. http://counter.li.org/
510. mailto:[email protected]
511. mailto:[email protected]
512. http://www.itresearch.com/
513. ftp://ftp.funet.fi/pub/Linux/PEOPLE/Linus/SillySounds/
514. http://members.xoom.com/gnulix_guy/geek-gourmet/
515. http://www.csustan.edu/bazaar/
516. file://localhost/export/sunsite/users/gferg/faq/ftp.linux.org.uk/pub/linux/Networking/PROGRAMS/NetTools/
517. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3476
518. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2429
519. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2910
520. http://www.bitwizard.nl/sig11/
521. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2478
522. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2910
523. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2910
524. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1298
525. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1298
526. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN3549
527. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN1833
528. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2910
529. ftp://metalab.unc.edu/pub/Linux/X11/Xfree86-*
530. http://www.xfree86.org/
531. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN2627
532. ftp://metalab.unc.edu/
533. http://www.xfree.org/FAQ/
534. http://www.xfree.org/#resources/
535. http://www.kde.org/
536. http://www.qt.org/
537. http://www.gnome.org/
538. http://www.gtk.org/
539. http://www.enlightenment.org/
540. http://www.opengroup.org/openmotif/
541. http://www.lesstif.org/
542. http://www.windowmaker.org/
543. http://www.gnustep.org/
544. mailto:[email protected]
545. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html#AEN277
546. file://localhost/export/sunsite/users/gferg/faq/rtfm.mit.eduin/pub/usenet/news.answers/
547. mailto:[email protected]
548. mailto:[email protected]
549. ftp://rtfm.mit.edu/pub/usenet-by-hierarchy/comp/os/linux/misc/
550. mailto:[email protected]
551. http://www.linuxdoc.org/
552. http://www.mainmatter.com/
553. mailto:[email protected]
554. mailto:[email protected]
555. http://www.linuxdoc.org/manifesto.html/
556. mailto:[email protected]

  Hidden links:
557. file://localhost/export/sunsite/users/gferg/faq/00_Linux-FAQ.html