UnixWorld Online: Tutorial Article No. 004 Getting Acquainted with Linux Linux is one of the best examples of a successful collaborative Internet project. by Richard Reich Visionaries predict that great collaborative projects will flow from the global Internet. But PC users disposed to prefer Unix over Microsoft operating systems are already familiar with one example of successful international cooperative work: the Linux operating system. The global Internet plays an on-going, crucial role in the development of Linux. System features are implemented at numerous places by many different people. The system--all of it, complete and up-to-date--is freely available on the Internet, as well as in the form of less timely, but more convenient, CD-ROM distribution packages. Bugs and inadequacies are found and diagnosed rapidly by the global user community, all of whom have access to the source code. Linux Basics Linux is a freely-distributed, protected-mode, 32-bit, multitasking Unix-like operating system that runs on Intel 386, 486, and Pentium processors. It's being implemented on other platforms as well, including the DEC Alpha, on which it is nearly ready. The system is generally considered to be of high quality. This PC operating system began life as a small program initially written by Linus Torvalds, a student in Helsinki, Finland, with subsequent contributions by many others. Linus remains the integrator of all changes and additions to the Linux kernel, the main operating system component that defines its basic facilities. Although there is a core group of major contributors among Linux workers (http://www.caldera.com/credits.html), the open development philosophy adopted by Linus accepts competent work from anyone, anywhere. Linux also owes its success to the way it is distributed: it's free, but not in the public domain. Initially, Linus prohibited any charges for the system--not even a fee for copying. However, he decided soon after to distribute Linux under the Free Software Foundation's General Public License (GPL) (ftp://prep.ai.mit.edu/pub/gnu/GPL). The GPL places no restrictions on what can be charged for the software, but does require that the source code be made available at a reasonable price and that no additionally restrictive contract can be imposed on subsequent distribution. Source code availability means that bugs will be found and repaired quickly and improvements in features and performance can be initiated by anyone. The GPL, because it permits charging for distribution, has encouraged many companies to offer CD-ROM versions of Linux and the competition among them keeps the CD-ROM distributions up-to-date and of adequate quality. Distributors often attempt to differentiate their products by adding huge amounts of precompiled free software along with the basic Linux programs. Installation packages, though still not absolutely bullet-proof, are also continually improved by the Linux system packagers. Linux distributions include the GNU programs (ftp://prep.ai.mit.edu/pub/gnu/) from the Free Software Foundation (FSF). These give Linux a high quality set of compilers (gcc, g++), libraries and utilities (Emacs, Ghostscript) that facilitate software development. The XFree86 (http://www.xfree86.org/XFree86/) implementation of the X Window System provides a standard graphical user interface, but at the cost of bulking up the system in terms of memory and CPU requirements. Also available in a Linux version is the Andrew System (http://www.cs.cmu.edu/afs/cs.cmu.edu/project/atk-ftp/web/andrew-home.html) from Carnegie Mellon University, containing among other things, a useful multimedia document editor and a very capable mail user agent. Adding these packages and others to the Linux kernel results in a full-scale, useful operating system. Several versions of Motif are available for Linux, and a few free Motif clones are in varying stages of development. Linux offers a strong array of standards-based networking support services and tools. The kernel has TCP/IP, LAN, SLIP and PPP protocol implementations, as well as kernel-level hooks for IP accounting, packet filtering and multicasting. Linux versions of the Unix standards are all available: client and server FTP and Telnet, Domain Name Service (DNS), various routing programs, security and firewall tools, mail transfer agents, mailing list servers, news servers and readers, gopher, WAIS, and World Wide Web servers. Linux can act as an X workstation, but strong ``productivity tools''--most notably a WYSIWYG word processor--are not generally available for Linux. (LaTeX fans need not worry though--it's available.) There are a few projects underway to address this; they range from a direct implementation of a Linux-based WYSIWYG word processor to a couple of emulation strategies. A Windows emulator, Wine (http://daedalus.dra.hmg.gb/gale/wine/wine.html), is in development, but it isn't useful, yet. The list of commercial programs that run under Linux is not vast, though it is growing. Caldera, Inc. (http://www.caldera.com), a Utah startup firm, intends to sell Linux with a desktop user interface and IPX connectivity value- added overlay. In addition, they plan to offer customer support at the comfort level of corporate customers. Most interestingly, Caldera is allied with a firm that is building a Windows- compliant API for Linux, allowing Windows software producers a dead simple migration path to Caldera Linux. Although several broad types of Linux distribution (http://sunsite.unc.edu/mdw/HOWTO/Distribution-HOWTO.html) exist, the current popular favorite is the so-called ``Slackware'' distribution, which is available for downloading (ftp://sunsite.unc.edu/pub/Linux/distributions/slackware/) in its vanilla configuration from Sunsite (University of North Carolina at Chapel Hill) and its mirrors. Easier-to-install commerical versions of Slackware are available on CD-ROM. Another distribution that soon will be available to download is Red Hat Commercial Linux. It is the basis of the Caldera release as well as being available on CD-ROM from Red Hat, Inc (http://www.redhat.com). A Few Uses of Linux Linux is very suitable to run various network servers with limited hardware resources. It's especially popular as a DNS machine, or as a bastion Web or FTP server. Any TCP/IP network application that doesn't need Sun or HP horsepower is a Linux candidate. With the XFree86 X11 R6 implementation, Linux can run a cheap, but adequate X server. Because of the availability of source code and its unbeatable price, it's a good system for a Unix classroom setting. In general, if a need can be met with an old 386 or 486, the system to think of is Linux. (Linux shouldn't be thought of exclusively as a poor man's Unix. It can be found in some impressive applications. For example, Lycos, one of the well-known Web indexing-spider sites, uses a couple of Linux machines, among others.) What's the Whole Story? Linux is in continual development. The system is generally very solid, but the temptation to upgrade your system to the latest version can be dangerous. Fortunately, many people are eager to run the latest versions of everything and they will provide adequate warning of serious problems to the more wary. For the time being, support for Linux is entirely on a volunteer basis, just as is its development. (Caldera may change this, but probably at a price.) Most of the Linux CD-ROM distributors have good intentions with regard to support, but the economics of their business does not generate the unit revenue necessary to manage full-blown technical support. It is important to keep the support issue in mind, but also be aware that the online, Internet-based support of Linux is usually excellent. Linux and its companion programs rarely reach release stage with serious bugs, and most of the exceptions are found and repaired very rapidly. (The benefits of universally available source are demonstrable.) Linux newsgroups are a ready source of help and advice at all levels of expertise. Linux supports a broad array of hardware (http://sunsite.unc.edu/mdw/HOWTO/Hardware-HOWTO.html) and does not require a lot of CPU horsepower for general use, but it never hurts to have it available. Depending on configuration, Linux requires at least 4MB for practical use. Multi-user configurations or development systems will do well with at least 16MB. For a single-user or small network gateway/multi-server setup, 8MB will likely suffice. Disk space requirements are determined by many factors, but 80 to 100 MB is a comfortable first approximation. A CD-ROM drive, at least during installation, is an obvious requirement if you install from a CD-ROM distribution. Linux Resources Books * Welsh, Matt and Lar Kaufman. Runni ng Linux (http://www.ora.com/gnn/bus/ora/item/runux.html). Sebastopol, CA: O'Reilly and Associates, 1995 (ISBN 1-56592-100-3). * Kirch, Olaf. Linux Network Administrator's Guide (http://www.ora.com/gnn/bus/ora/item/linag.html). Sebastopol, CA: O'Reilly and Associates, 1995 (ISBN 1-56592-087-2). * Tackett, Jack et al. Special Edition Using Linux (http://www.mcp.com/cgi-bin/bag?isbn=0-7897-0100-6&userID=129566528&last=/bookstore). Indianapolis, IN: Que/Macmillan, 1992 (0-7897-0100-6). Magazines Linux Journal (http://www.ssc.com/lj/index.html) is a monthly Linux magazine with a wide range of articles: introductory, technical, business-oriented. Published by SSC, Inc., Seattle, WA. Mailing Lists The current center of Linux mailing list activity is Majordomo@vger.rutgers.edu To obtain a list of all lists maintained there, send e-mail with just the word ``lists'' in the body of the message. To subscribe to a list, send e-mail with ``subscribe list-name'' in the body of the message. Here's a small sampling of the available mailing lists: * linux-admin * linux-announce * linux-config * linux-net * linux-newbie Newsgroups The Linux newsgroups are very busy, reflecting a high level of interest. They currently include: * comp.os.linux.announce Announcements important to the Linux community. (Moderated) * comp.os.linux.answers FAQs, How-To's, READMEs, etc. about Linux. (Moderated) * comp.os.linux.development.apps General Linux applications issues * comp.os.linux.development.system Linux system programming, porting issues * comp.os.linux.hardware Hardware compatibility with the Linux operating system. * comp.os.linux.misc Questions and advice about Linux. * comp.os.linux.networking Linux networking: TCP/IP, LAN, NFS, Samba, etc. * comp.os.linux.setup Linux installation and system administration. * comp.os.linux.x and X Window System Web Pages Linux-related Web pages, naturally, are highly cross-referenced through their links. If you begin with a well-connected page, you will eventually find them all. However, to save a bit of time, here are some of the most interesting pages: * The Linux Organization maintains the Linux Home Page (http://www.linux.org), which provides some general information, as well as pointers to lots more. * Sunsite's Welcome Page (ftp://sunsite.unc.edu/pub/Linux/welcome.html) is the home page of the primary online repository of Linux distributions, source and executable code, and documentation. This site provides an extensive geographical-sorted list of mirror sites, which are recommended because Sunsite can be overloaded. * Sunsite's Linux Meta-FAQ (http://sunsite.unc.edu/mdw/HOWTO/META-FAQ.html) has this table of contents: 1. Introduction 2. Getting Linux 3. Linux FTP sites 3.1 Linux on BBS's 3.2 Linux on physical media 3.3 AFS 3.4 Commercial networks 3.5 Mailservers and such 4. Linux distributions (aka ``releases'') 5. Linux mailing-lists 6. Documentation for various programs 7. More Documentation 8. Keeping track of current releases 9. This Document 10. Legalese * Sunsite's Linux Documentation Project Home Page (http://sunsite.unc.edu/mdw/linux.html) contains all of Linux's online documentation. * Sunsite's Hardware Compatibility HOWTO (ftp://sunsite.unc.edu/pub/Linux/mdw/HOWTO/Hardware-HOWTO.html) is a must-read, although most PC hardware is currently supported. * Sunsite's Linux Distribution HOWTO (http://sunsite.unc.edu/mdw/HOWTO/Distribution-HOWTO.html) is a guide to the various Linux distributions, both freely available and commercial. * Sunsite's Linux Installation and Getting Started Page (http://sunsite.unc.edu/mdw/LDP/gs/gs.html) written by Matt Welsh is a complete online book, the precursor to Running Linux published by O'Reilly and Associates.. * Carnegie Mellon University is home to the Andrew System (http://www.cs.cmu.edu/afs/cs.cmu.edu/project/atk-ftp/web/andrew-home.html), a large, powerful, quite pretty X-based collection of tools: a mailer, multimedia editor, and more. * Caldera's Linux Contributors: The CREDITS File (http://www.caldera.com/credits.html) is an HTML-format list created from the CREDITS file of the Linux 1.2 release, and should be updated regularly. * Yahoo's Linux section (http://www.yahoo.com/Computers/Operating_Systems/Unix/Linux/) has pointers to all the standard--as well as some unusual--Linux Web pages. * XFree86 (http://www.xfree86.org/XFree86/) is the organization that ports X11 to Intel-based systems, such as Linux. * One Linux user's tribute to Linus (http://www.acpub.duke.edu/~mel1/epworth/linus.html) includes some photos (he must wish were never taken) as well as audio clips of Linus saying ``Linux''. User Groups Linux user groups are still rare. The best way to find one locally is to post a question to comp.os.linux.misc or read this group for awhile. Sunsite maintains links to Linux-related user groups (http://sunsite.unc.edu/mdw/linux.html#ug), which currently has over 30 entries from all over the world. Commercial Distributors * Caldera, Inc. (http://www.caldera.com) sells a ``preview'' of their value-added Linux-based system for $29 (plus $10 shipping and handling). * InfoMagic, Inc. (http://www.infomagic.com) offers a wildly popular four-CD-ROM set including a version of Slackware Linux and loads of other goodies (mostly from archive sites). Moo-Tiff, a Linux Motif, is also available. * Morse Telecommunication, Inc. (http://www.morse.net) sells Slackware PRO. * Red Hat, Inc. (http://www.redhat.com) offers Red Hat Commercial Linux. * Yggdrasil Computing, Inc. (http://www.yggdrasil.com) have another alternative to Slackware. Downloading Linux The popular Slackware Linux distribution can be downloaded--with a lot of time and/or bandwidth!--from: * Sunsite (University of North Carolina) (ftp://sunsite.unc.edu/pub/Linux/distributions/slackware/). * Sunsite (Utah Mirror) (ftp://ftp.pht.com/mirrors/linux/sunsite/distributions/slackware/). * Sunsite (Illinois mirror) (ftp://mrcnext.cso.uiuc.edu/pub/linux/distributions/slackware/). Related Software The most recent versions of multi-platform Unix software that is useful with Linux: * NTP (Network Time Protocol) (ftp://louie.udel.edu/pub/ntp/) * BIND 4.9.3 (DNS) (http://www.vix.com/isc/bind.html) * Sendmail (mail transfer agent) (ftp://ftp.cs.berkeley.edu/ucb/sendmail/) ------------------------------------------------------------------------------- Copyright © 1995 The McGraw-Hill Companies, Inc. All Rights Reserved. Edited by Becca Thomas / Online Editor / UnixWorld Online / beccat@wcmh.com [Go to Content] [Search Editorial] Last Modified: Tuesday, 22-Aug-95 15:54:06 PDT