Linux Newbie Administrator Guide

(LNAG)


Version 0.201, 2004-07-22 by Stan, Peter and Marie Klimas
The latest version of this guide is available at http://linux-newbie.sunsite.dk.
Copyright (c) <1999-2004> by Peter and Stan Klimas. Your feedback, comments, corrections, and improvements are appreciated. Send them to linux_nag@canada.com This material may be distributed only subject to the terms and conditions set forth in the Open Publication License, v1.0, 8 or later http://opencontent.org/openpub/ with the modification noted in lnag_licence.html.


Introduction

We are relative Linux newbies (with Linux since Summer 1998). We run mostly RedHat and Mandrake -> the solutions might not be directly applicable to other Linux distributions (although most of them probably will be). Hope this helps; we try to be as practical as possible. Of course, we provide no warranty whatsoever. If you spotted a bad error or would like to contribute a part on a topic of your choice, we would like to hear from you.

General description of this Guide

A complete reference for new Linux users who wish to set up and administer their own Linux home computer, workstation and/or their home or small office network. The answers are meant to be simple, with just sufficient detail, and always supported with a readily usable example. The work is still in progress, but we hope the Guide can be helpful already. We welcome your corrections, advice, criticism, links, translations, and CONTRIBUTIONS. Pls note that there are no ad banners on our pages.

Conventions:

<> = single special or function key on the keyboard. For example <Ctrl> indicates the "control" key.

italic = name of a file or variable you probably want to substitute with your own.

fixed width = commands and filenames.


Table of Contents

1 For the Undecided (Linux Benefits) 1

1.1 Fundamentally, why Linux? 1

1.2 Is Linux for me? 1

1.3 Linux is difficult for newbies. 2

1.4 What are the benefits of Linux? 2

1.5 What are the differences between Linux and UNIX? 5

1.6 What are the differences between Linux and MS Windows? 5

1.7 I don't believe in free software, etc. 6

1.8 "There ain't no such thing as a free lunch" 6

1.9 I need warranty and security. With commercial software, I can sue if things go wrong. 7

1.10 I need standards. Big software corporations (Microsoft) provide standards. 7

1.11 I Need MS Windows for Reading Writing MS Word Documents 9

1.12 MS Windows popularity insures that it is "here to stay". 9

1.13 But LINUX may fork into many different systems ... 9

1.14 Linux lacks a central development blueprint (or roadmap) 10

1.15 Linux is a cult 10

1.16 The total cost of ownership (TCO) of Linux is high 11

1.17 Linux is idealistic "dreaming"; it is business that rules the world nowadays 11

1.18 Linux may be found to violate somebody else's "intellectual property" (IP) 12

1.19 Linux sux etc. 13

2 Before Linux Installation 13

2.1 Which Linux distribution should I use? 13

2.2 Which Linux Distribution should I select for my old computer(s)? 16

2.3 What are the Linux hardware requirements? 16

2.4 Will my hardware work under Linux? 18

2.5 How do I download Linux? 19

2.6 How do I get a Linux CD? 19

2.7 I have Linux Installation CDs but no install floppy. What do I do? 20

2.8 What do I need to read before installation? 21

2.9 Can I have MS Windows and Linux installed on the same computer? 22

2.10 How do I partition my hard drive? 22

2.11 1.10 The MS Windows partition occupies my whole harddrive. Can I shrink/split it without a re-install? 25

2.12 How do I start the installation? 26

2.13 Is the Linux installation difficult? 26

2.14 Which packages should I install? 26

2.15 Which GUI desktop should I install, KDE or GNOME? 27

2.16 I finished the installation. How do I log-in for the very first time? 27

2.17 How do I crash Linux? 28

2.18 Can I use Graphical User Interface (GUI) all the time? 29

2.19 How do I upgrade a Linux distribution? 29

3 Linux Resources, Help and Some Links 30

3.1 Any Linux reading materials? 30

3.2 Is there a help command? 31

3.3 Any dictionary of terms? 32

3.4 Web Search 32

3.5 Newsgroups 32

3.6 Any Linux Internet links? 33

3.7 Source code--the ultimate resource 34

4 Basic Operations FAQ 34

4.1 Basics 34

4.2 Users, passwords, file permissions, and security 44

4.3 Job scheduling with "&", "at", "batch", and cron 52

4.4 Shell 54

4.5 Package installation and rpm package manager 61

5 Linux Newbie Administrator FAQ 63

5.1 Startup Issues (LILO and GRUB) 63

5.2 Accessing my drives 66

5.3 Working with X-windows 77

5.4 Basic Configurations 85

5.5 Networking 91

6 Linux Shortcuts and Commands 105

6.1 Notes for the UNIX Clueless 105

6.2 Linux essential keyboard shortcuts and sanity commands 106

6.3 Help commands 109

6.4 System info 110

6.5 Basic operations 114

6.6 File management 115

6.7 Viewing and editing files 116

6.8 Finding files 117

6.9 Basics of X-windows 118

6.10 Network apps 119

6.11 File (de)compression 121

6.12 Process control 122

6.13 Some administration commands 123

6.14 Hard Drive/Floppy Disk Utilities 128

6.15 Management of user accounts and files permissions 129

6.16 Program installation 131

6.17 Accessing drives/partitions 133

6.18 Network administration tools 133

6.19 Music-related commands 135

6.20 Graphics-related commands 136

6.21 Small games 138

7 Some Essential Linux Applications 138

7.1 Best Linux Applications 138

7.2 Word processing 140

7.3 Spreadsheet 145

7.4 Databases 147

7.5 CAD 147

7.6 Web browsers: Mozilla, Konqueror, Galeon, and Lynx 148

7.7 Writing CD-R/Ws: cdrecord and cdparanoia 148

7.8 Automating creation of graphs with gnuplot 153

8 Learning with Linux 154

8.1 Linux Advanced Text Processing Tools 154

8.2 Simple Programming under Linux 163

8.3 Math Tools 172

8.4 Miscellaneous 175

8.5 Running MySQL 176


1 For the Undecided (Linux Benefits)

1.1 Fundamentally, why Linux?

If you truly enjoy working with computers, Linux is the operating system of your dreams. It is more fun than any other computer operating system around. Linux is a computer hobbyist's paradise.

However, the reason why Linux is truly revolutionary is that it is Open Software. Our science and technology work owing to the free availability of information, peer review, and the capabilities to pick up ideas and modify or extend. Open Software is an implementation of the scientific method into the field of software development. The freedom to pick-up, modify and extend, that comes with the Linux licence, offers a promise that the software development under Linux licence will continue in the way that science does.

The making of horseshoes, good glass, or measuring time were once closely guarded trade secrets. Science and technology exploded 500 years ago thanks to the sharing of knowledge by the means of printing, and thus breaking the monopoly of the few on the know-how. Why were the science and technology relatively stagnant before the printing era? Because the "trade secret" approach to growth has its limits: the development continues until the rate of learning equals the rate of forgetting. Moving the know-how to the public domain (printed on paper) shifted the position of the equilibrium to a higher level, which, after 500 years of turbulent development, we are still to achieve. For interested, I can present equations, borrowed from chemical equilibrium field, that describe this in a more formal way. The main point is that printing increased the audience, and allowed passing information across space and time.

In the early days of printing, many of those who dared to share were assassinated for revealing "trade secrets." Linux is for the computer age what Gutenberg was for writing. Hopefully there will be no assassinations this time :-) . Linux does clash, violently at times, with those who claim the "ownership" of information, trying to push time back 500 years.

Open Source Linux has also implications for computer security. Imagine a plane based on secret "scientific laws", built to an unreviewed design, a plane at internals of which nobody but the manufacturer could inspect. Would you believe that this unique, completely proprietary plane, obviously built by clever and well-financed marketers in their basement, is any safer than one built in the open world, under the eyes of thousands of critical engineers and curious hobbyists with no association to the manufacturer? Then why would you trust a secret computer program? Open-source Linux is ideally suited for a mission-critical application--its security and power are based on robust solutions which are reviewed with no restrictions whatsoever, and continuously improved upon.

1.2 Is Linux for me?

Only you can answer this question. Linux is a mature, powerful, secure and extremely versatile UNIX-like operating system. The power and versatility come with a price--you may need to be computer-literate in order to set-up and maintain Linux. Linux is relatively easy to use once the operating system and applications are set up properly. So, your mother will also be able to use Linux, if you set up an easy graphical account for her and put the proper icons/menus on her GUI desktop. Linux is secure, so your mother will not be able to damage the system no matter how hard she tries--unless it's with a hammer :-) .

Linux is quite different from MS Windows, so do not expect that if you can get around MS Windows, then Linux will be straightforward for you. You may need to learn. On the other hand, if you come from UNIX, Linux will be easy for you. If you don't know much about computers or you don't enjoy them, chances are Linux administration is not for you. If you don't know your hardware, Linux installation may be a challenge.

1.3 Linux is difficult for newbies.

This may be true. But the real question is: do you really want to learn it? None of the authors has a computer science background, yet we use Linux everyday and we love it.

1.4 What are the benefits of Linux?

Linux can give you:

If you wanted to learn first-hand about the General Public License, check these famous GNU documents:

http://www.gnu.org/copyleft/gpl.html

http://www.gnu.org/gnu/linux-and-gnu.html

http://www.gnu.org/philosophy/categories.html#TheGNUsystem

In a nutshell, the GNU General Public Licence (GPL) allows anybody to:

What the GPL license *does not* allow code recipients to do is to take somebody elses software licenced under GPL, modify the software, and then distrubute a this modified version of the software under a propriatory licence. Speaking plainly, the GPL licence just forbids stealing existing (somebody else's) software for incorporation into a closed, commercial-only product. However, you may incorporate GPL software in a commercial computer program if you obtain permission from the copyrigtht holder. GPL is certainly not more restrictive or imposing than a "typical" propriatory licence. GPL is a licence that grants the recipient right which he otherwise does not have, but takes away none. Excluded from the use of GPL are persons who have violated the GPL.

In general, copyright laws regulates 5 rights: to copy the work, to make derivative works, to distribute the work, to perform the work, and to display the work.

Here is a table which contrasts the licence of Linux with that of MS Windows (put together by a RedHat lawyer, based on http://www.groklaw.net/article.php?story=20031231092027900):


Linux MS Windows98

Right to copy the work Yes No

Right to make derivative works Yes No

Right to distribute the work Yes, under the same licence No

Right to perform the work Yes Yes

Right to display the work Yes Yes


The GPL license under which Linux is distributed is probably the most important part of it. It is designed to perpetuate the freedom of information. Other important open-source projects include science and law (hardly a joke). The Linux method is really nothing new--it is simply the application of the scientific method to software: you get information free, you add your ideas and make your living, and finally, you leave it free. However, some big corporations and their lawyers seem to be trying hard to change this, to push us back in time, to the dark ages, when information was kept "proprietary." Hence, you see in newspapers some famous Linux-connected persons involved in all kinds of struggles.


To get a flavour for the value of Linux, here are some prices for commercial software as listed at www.amazon.com. All prices are in $USA, as listed on 2001-02-03, with discounts. Roughly equivalent Linux software is included on almost any Linux CD set (but with no restrictions on the number of clients). In addition, the hardware for Linux is typically significantly less expensive, since Linux can run all services on a single server:


Microsoft Windows 2000 Server (5-client)--$848.99; Microsoft Exchange 2000 Server (5-client)--$1,279.99; Microsoft Outlook 2000 (1-client)--$94.99; Systems Management Server 2.0 (10-Cals)--$994.99; Proxy Server 2.0--$886.99; Microsoft SQL Server 2000 Standard Edition (5-client)--$1,229.99; Microsoft SQL Server 2000 Standard Edition (1-user License)--$4,443.99; Microsoft BackOffice Small Business Server 4.5 NT (Add-On 5-CAL)--$264.99; Windows NT Server Prod Upgrade From BackOffice SBS Small Bus Server (25-client)--$558.99; Microsoft Windows 2000 Advanced Server Upgrade (25-client)--$3,121.99; Microsoft FrontPage 2000--$129.99; Microsoft Internet Security and Acceleration Server --$664.99; Site Server Commerce 3.0 (25-client)--$4,092.99; Visual C++ 6.0 Professional Edition with Plus Pack--$525.99; Microsoft Visual Basic Enterprise 6.0 with Plus Pack--$1,128.99; Microsoft Visual Sourcesafe 6.0 CD--$469.99; Microsoft Office 2000 Standard (1-client)--$384.99; Adobe Photoshop 6.0--$551.99; Microsoft Plus Game Pack--$19.99.


Linux (and thousands of other programs distributed under GPL) is often described as "free software". The word "free" has two quite different meanings in the English language, and it sometimes leads to misconceptions about the free nature of Linux. These two meanings follow the Latin adjective "liber" and the adverb "gratis," and they are often illustrated with the phrases "free speech" and "free (of charge) beer." Most Linux software is free in both senses, but it is only the first sense which is essential to Linux.

1.5 What are the differences between Linux and UNIX?

Command-line-wise, almost none, although this has been changing (for better or worse). Linux has a much larger market appeal and following than any commercial UNIX. GUI-wise there are also no major differences--Linux, as most other UNIXes, uses an X-Windowing system.

The major differences:

1.6 What are the differences between Linux and MS Windows?

Mouse-click-wise, almost none, once Linux is properly installed. Linux installation can be a challenge though, whereas MS Windows comes, most likely, pre-installed with your computer.

The major differences:

1.7 I don't believe in free software, etc.

And do you believe in the Internet? The Internet and Linux share underlying ideas and have common roots. Do you remember the disbelief about the Internet a few years ago, the endless, seemingly unbeatable arguments that free Internet cannot exist? "Who pays for that, anyway?"

The reality is simple. Cooperation and good will can benefit many at the same time: your gain is not my loss. The Internet works fine and is expanding at a rapid pace. So does Linux.

Here is the opinion of an IBM executive: "The reason we are so excited about Linux is we believe Linux can do for applications what the Internet did for networks" (http://linuxtoday.com/news_story.php3?ltsn=2000-08-17-001-04-PS-EL). IBM just (May 2002) spent 1 billion dollars making Linux run on all their hardware platforms (mainframes, workstations, PCs, laptops).

We may add that Linux seems to do to the operating system the same what IBM's open PC specification did to the computer hardware.

1.8 "There ain't no such thing as a free lunch"

"The economic paradigm which makes this true depends upon scarcity of resources. Software resources are only scarce because we all keep software proprietary and secret. But not Linux! When I give you my software, it may create an opportunity cost for me, but I get to keep it even after I've given it to you. It is a free lunch only rivaled in history by the loaves and the fishes." (Brett Bazant <bbazant@shaw.wave.ca> (http://linuxtoday.com/cgi-bin/showtb.pl?tbsn=12450&sn=5418).

And here is a quote from Thomas Jefferson explaining, in the year 1813, that intellectual property (IP) does not exists. There is only a limited monopoly to profit for the author, which is society-given on the conditions that the monopoly strikes the balance for the common benefit:

"If nature has made any one thing less susceptible than all others of exclusive property, it is the action of the thinking power called an idea, which an individual may exclusively possess as long as he keeps it to himself; but the moment it is divulged, it forces itself into the possession of every one, and the receiver cannot dispossess himself of it. Its peculiar character, too, is that no one possesses the less, because every other possesses the whole of it. He who receives an idea from me, receives instruction himself without lessening mine; as he who lights his taper at mine, receives light without darkening me. That ideas should freely spread from one to another over the globe, for the moral and mutual instruction of man, and improvement of his condition, seems to have been peculiarly and benevolently designed by nature, when she made them, like fire, expansible over all space, without lessening their density in any point, and like the air in which we breathe, move, and have our physical being, incapable of confinement or exclusive appropriation. Inventions then cannot, in nature, be a subject of property. Society may give an exclusive right to the profits arising from them, as an encouragement to men to pursue ideas which may produce utility, but this may or may not be done, according to the will and convenience of the society, without claim or complaint from anybody." ["The Writings of Thomas Jefferson". Edited by Andrew A. Lipscomb and Albert Ellery Bergh. 20 vols. Washington, Thomas Jefferson Memorial Association, 1905. Quoted after: "The Founders' Constitution" Volume 3, Article 1, Section 8, Clause 8, Document 12, http://press-pubs.uchicago.edu/founders/documents/a1_8_8s12.html, The University of Chicago Press.]

1.9 I need warranty and security. With commercial software, I can sue if things go wrong.

Don't count on suing. Things go wrong on many MS Windows NT machines every day, and there are no damages awarded by courts. Read your MS Windows license agreement to find out that there is no guarantee whatsoever that ANYTHING will work. Trying to sue would be a waste of your money.

Linux also provides no guarantees, although it is far more secure than any version of MS Windows (assuming comparable functionality is installed on both). If you are really security-sensitive , you can use high-security tools built by companies that rely on the availability of the source code to design and test their security features (e.g., Kryptokom in Germany provides high-security firewalls). The "security in obscurity" implemented in MS Windows has repeatedly been demonstrated to be a naive approach.

"Risk aversion is what dictates you use Linux and other open products, rather than NT. The risks with NT are entirely out of your control, and there is nobody you could sue if anything goes wrong. Why people still believe the myth that Windows in any form offers any bit of accountability "more" than Linux remains a complete riddle to me." (David Kastrup, Research Engineer, Bochum, Germany, "Internet Week," http://www.techweb.com/se/directlink.cgi?INW19990329S0050).

1.10 I need standards. Big software corporations (Microsoft) provide standards.

Perhaps that's what people would expect from large corporations, but the reality is rather different. Once, big companies loved inventing nuts that could be undone only by their own service shops. Did these nuts become standard? Hardly. They didn't because there was no public benefit involved, and they couldn't because they were patented. Luckily, now we have open and free standards for nuts. A "proprietary standard" is such a ridiculous oxymoron that it is hard to believe that educated people can believe in it. (Currently, marketing types use the term "de facto standard" or "industry standard" to cover up the ugliness of the lack of standards.)

The era of proprietary standard nuts seems over. But the idea lives on in the computer field. For example, the "standard" MS Word file format has changed numerous times over the recent years. This keeps happening probably for a good business reason: as soon as other companies "reverse-engineer" the current Word format, Microsoft changes it. There are even sub-formats (an MS "fast-save" anybody?). The "standard" is completely closed--Microsoft does not publish any specifications. How can the user benefit from this in a longer term? What is the Microsoft guarantee that MS Word 6.0 file format will still be legible in the year 2020? None I could find.

"... Microsoft's standards are both proprietary and arbitrary- the stealth incompatibility of Office 97 file formats with older versions of Office or the subversion of Open standards like XML with proprietary extensions that require Internet Explorer 5, MS Active server and so on, are sober reminders of what the company does to a market." (Xavier Basora, http://www.osopinion.com/Opinions/XavierBasora/XavierBasora47.html).

"... Microsoft's monopoly doesn't guarantee that your current MS Office will work with any previous or future MS Office. This is in spite of any number of Microsoft apologists arguing that the benefit of Microsoft's monopoly has been a standard for productivity applications." (Wesley Parish, http://www.osopinion.com/Opinions/WesleyParis/WesleyParish10.html).

To add to the confusion, companies typically do not "standardize" on file formats but on the applications that are supposed to produce them. It is like standardizing on a manufacturer of nuts instead of on nuts. How is this supposed to work if the file manufacturer keeps changing the specification to drive their sales?

"We need standardized, open file formats so that users can exchange documents between platforms. The actual word processing software used to generate these documents shouldn't even be an issue." (Ted Clark, http://linuxtoday.com/news_story.php3?ltsn=2000-09-29-004-06-OP-MR-0010).

There are a few text/document oriented file formats that are quite definitely more standard than MS Word file format: ASCII, XML (with non-propriatory stylesheets), HTML, SGML, LaTeX, TEX, PostScript, pdf, dvi ... and all of them have excellent support under Linux. The MS Word file format can also be read/written very well under Linux by OpenOffice (and a number of other applications) to cover your current needs. Advanced, "universal," open-source document formats (XML-based) are developed by an independent organization. The story is similar with other proprietary computing "standards" (*.giff vs. *.png anyone? *.mp3 vs. *.ogg?).

Linux, by its very nature, is based on true, published and free standards because "open source" makes the full specifications available to everybody (competitors or not). We believe that the urge for open standards is the very driving force behind Linux. Many people feel that they cannot afford to trust their algorithms and data to a commercial entity, let alone a single one that has repeatedly demonstrated its untrustworthiness.

Have a look at a draft of this Argentinean law for a taste of the future. It sounds like the Argentineans may be the first to decide that their public records cannot be held hostage by a commercial entity: "... Public National Organizations mentioned in article 1 of this law, will not be allowed to use programs that store data in non-public format ...". Several other countries are also contemplating or enacting legislations requiring storage of public data in public file formats. (Source of the quote: http://slashdot.org/articles/01/04/28/010216.shtml)

There is a strong perception in the Linux community that there is a serious problem with the computing "standards" championed by large software vendors. This includes their standards for storing our "static" data , as well as the processing algorithms embedded in our computer codes. Can we afford to trust somebody decide for us when, how, and at what cost we can access our own work? This problem is ignored and even aggravated by people who are paid to take care of it. Linux is a grass-root answer to this problem.

Here is an example from Life, as narrated by "The Economist" (http://www.economist.com/business/displayStory.cfm?story_id=2054746):

"IN MAY, the city of Munich decided to oust Microsoft Windows from the 14,000 computers used by local-government employees in favour of Linux, an open-source operating system. Although the contract was worth a modest $35m, Microsoft's chief executive, Steve Ballmer, interrupted his holiday in Switzerland to visit Munich and lobby the mayor. Microsoft even dropped its prices to match Linux—a remarkable feat since Linux is essentially free and users merely purchase support services alongside it. But the software giant still lost. City officials said the decision was a matter of principle: the municipality wanted to control its technological destiny. It did not wish to place the functioning of government in the hands of a commercial vendor with proprietary standards which is accountable to shareholders rather than to citizens."

My favourite example of how Microsoft, instead of promoting standards, keeps confusing them. For decades, there has been one standard way to write all-numeric date and time in the country I live. This standard is accepted in most countries of the world. MS Excel offers, conveniently in a drop-box, almost any possible permutation to format date/time, except the one required by the international standard. I guess, there is no lesson learned from the billions spent on the "Year 2000 issue".

1.11 I Need MS Windows for Reading Writing MS Word Documents

In a large corporate environment, you may have little choice--they locked themselves by cheerful productions of non-portable forms, templates, visual basic-driven web pages and other MS Office-bound "tools". Perhaps a more adequate name for propriatory software would be "lock-in software"?

In a smaller environment, you can use OpenOffice.org suit (OO) that runs on Linux, MS Windows, Mac, Solaris (and more), with full file-level compatibility. It can be downloaded and installed for free (no restrictions whatsoever) so nobody should really complain about the file format (some control freaks still will). Just to make sure, OpenOffice can import and export MS Word and Excel documents of reasonable complexity very well. The native file format in OpenOffice is fundamentally much better than Microsofts (plus it is non-propriatory). Feature-by-feature, OpenOffice can do almost anything MS Office can, plus some extras. Depending on whom you ask, the ease of use varies between "50% more difficult" to "20% easier" (measured on a sample of experienced MS Office users). Very complex documents are best transfered as *.pdf, and OO can make them on the fly.

So, probably you do not need MS Office any more. Download your OO for MS Windows and/or Linux at: http://www.openoffice.org/

Latest MS marketing joke: "Wait, don't install OpenOffice. Microsoft is ALREADY working on a file format that is based on the same principle as that OpenOffice is using. Microsoft will even extend the file format to make it even BETTER." Well, we do not need a better format. We need a open-standard file format.

1.12 MS Windows popularity insures that it is "here to stay".

This is likely true. Nintendo is probably also "here to stay." However, I like computing; therefore, I choose a computer with a powerful operating system, not a lowest-common-denominator piece designed for "everybody."

Linux is quite positively here-to-stay because of its open-source nature (Linux cannot possibly be put out-of-business). It is a standard selected for countless projects that are not going to go away, and some of them are quite "mission-critical." Try the International Space Station, for which Linux is the operating system (http://www2.linuxjournal.com/lj-issues/issue59/3024.html).

Plus, never underestimate the strength of the Linux community. Linux is "here to stay" at least for the computer avant-garde. Many Linuxers do not even want Linux to become very popular because they fear it could "dumb down" the elite Linux platform.

1.13 But LINUX may fork into many different systems ...

This is a typical argument of the type spread by experts in the marketing tactics known as "fear, uncertainty and doubt" (FUD) [about the competing product]. The "forking" argument was once commonly used by various "analysts" and the mainstream computer press to explain to the undecided why Linux is not worth their attention.

"Forking" in this context means "branching a computer program," so as to create parallel "subversions" of the program, and consequently fragment Linux and presumably reducing its usefulness.

There is very little (if any) evidence of harmful forking of any software included with a typical Linux distribution. Where forking did occur, it has always turned beneficial. Quite possibly, this is because although there are no artificial barriers to fork software under Linux, there are also no artificial barriers to merge the best pieces back.

The theoretical background on how forking software can be good for its development might have been actually given quite some time ago by the German philosopher Georg Wilhelm Friedrich Hegel (1770 -1831), with his concept of dialectic development. E.g., in "Phenomenology of Spirit", Hegel concludes: "... the schism incipient in a party, which seems a misfortune, expresses its fortune rather."

1.14 Linux lacks a central development blueprint (or roadmap)

Linux has no central steering committee, design specifications, etc. It has many leading bodies for the many ongoing, and often competing projects. Some of the projects work on integration, overall consistency, etc. The value of their concepts is verified in practice.

Following Hegel's (and Parmenides) thought, one may expect that what is rational comes into existence in Linux, and what became a permanent part of Linux did so because it was rational (Hegel's original is "What is rational is real and what is real is rational"). The same cannot be expected to be the end-product of development of a system build to a rigid blueprint prepared by a committee.

1.15 Linux is a cult

The Linux community has repeatedly been labeled "religious zealots" by journalists whose well-established computer magazines received massive feedback after they had published highly unfair articles on Linux. So yes, the Linux community is numerous, literate, and willing to express its opinions. And many computer journalists/magazines know that Linux means less money for them (users pay less for their computing and the associated advertisement, while expecting more). Does this explain the "zealots"?

Face it, you salespeople pretending to be journalists. There is hardly any integrity left in the computing press. How many words on Linux did your PC Magazine (or any other IT magazine) publish by 1999-01-01? Wasn't Linux at least an interesting technology by that time? It surely was, yet you conspired to keep your readership in the dark, selling your journalistic integrity for a few dollars. And now, after Linux has surfaced in the mainstream (non-computer) media, you keep writing misleading articles about it saying "yah, but it will/cannot/may ...." whatever (trying the "fear, uncertainty and doubt" tactics to kill it). And adding "Microsoft is already ...", continuing to write about the vaporware and the future paradise in the face of the increasingly stealthy, unstable, pricey, architecturally unsound computer platform, whose greatest achievement has been exhorting unheard-of-before money by denying inter-operatibility, and killing any existing or proposed standard (by "embracing" and then proprietary-extending it). Whom do you serve? Surely not your readers.

I worded it as strongly as I could. Am I a zealot? Or am I just trying to voice my disapproval for the self-serving actions of the computer "powers-that-be"?

You think "self-serving" is OK in business? How pathetic must your business be then! I always thought that business was a social contract in which we exchange good values, for a mutual benefit. As I read history, societies use to hang / guillotine / electrocute those members who really persisted in their self-serving business. Well, times have changed. A bit for the better, a bit for the worse :))

To be fair, there seems to be a number of hard-core devotees around any computer program/platform, and Linux might have accumulated a fair share of them. Oh, well, you may be religious about whatever you like. I can assure you, most Linux users I interacted with are rational.

1.16 The total cost of ownership (TCO) of Linux is high

Nobody really knows how to calculate the "total cost of ownership" of a general piece of software, no matter how clever terms they use. So a good lawyer + accountant can prove whatever point they are paid to make. They appear to regularly do so.

For example, does your calculation of the "total cost of ownership" of MS Word include the cost of exiting the platform? If not, do you really believe, that MS Word will be your documentation platform *forever*?

Let me try a simple estimate of how much the average total cost of the ownership of MS Windows is. Let's add the fortunes accumulated by all the MS Windows software makers. Add all the salaries of all generic Windows programmers, consultants, support and training personnel, IT management, etc. Add the cost of the hardware for MS Windows. Now, add the losses in productivity customers must surely have suffered while the software corporations were presenting them with "new features" so as to make them upgrade and/or achieve their current lock-in status. Divide this sum of money by the number of years (whatever time frame you selected), and the number of MS Windows users (only in the countries in which software is normally paid for). Here is the TCO of MS Windows. However you count it, it will be many thousands of good US dollars per average joe per year. You didn't pay that much money? Well, you must have, it has just been hidden from you (probably in the price of seemingly unrelated products and taxes). Yes, developed countries waste billions of dollars on software every year.

How much did Linux cost? Hardly anything. The number of users is much lower, too, but you will be hard pressed to come up with $10 per user per year.

Yet, in my opinion, the total cost is not what matters the most. What value did I receive for my money? You would have to calculate the total value of ownership (TVO?), then subtract from it the total cost of ownership (TCO) to obtain the "net benefit of the ownership" (or "return on investment"). Well, I cannot see how I would be making a good investment by purchasing the latest version of MS Windows or Office, by putting myself deeper into a single-platform dependency. My Linux based email, web browser and word processor work as well as anything available on MS Windows.

I guess accountants typically talk about the TCO for software "necessary for doing business," and thus skip the issue of the value, benefit, and the return on investment. There is really no value in the mainstream software, it is just the necessity for doing business these days. Well, Linux satisfies my computing necessities at zero monetary cost, and the personal pleasure and learning value are great.

1.17 Linux is idealistic "dreaming"; it is business that rules the world nowadays

Think of Linux as a consortium. Businesses/individuals get together to address a common computing need or problem. They may chip in labour or money, hire a technical leader or team, or otherwise cooperate to make Linux address their requirements. The solution is totally theirs for keeps, and it does not have to cost a lot--they can re-use the pre-existing Linux software pieces. They may even cooperate to overcome the advantage that a big "industry leader" may have and use against their interests.

Linux is the end-product of activities of many such loose "consortiums" who "scratch their needs." So Linux is a business, but it is not necessarily about centralized production and marketing of software. It is a de-centralized, small-scale development performed close to the end-users, so that they have access to reasonably-priced software that matches their need, solves their problems, sells their hardware or service, and which is totally theirs to keep: the licence never expires, and the user will never be cut off.

1.18 Linux may be found to violate somebody else's "intellectual property" (IP)

This is a serious and timely issue (July 2003). The most powerful Linux adversary (Microsoft) stated in their internal memorandum (leaked to the press) that they should try the legal route to deal with Linux ("The discussion of IP rights needs to be tied to concrete actions"). The entertaining (and "scary") Microsoft series of blueprints on how to deal with Linux have been leaked and published as so-called Holoween Documents (http://www.opensource.org/halloween/).

So yes, there is some probability that Linux might be sued out of existence in the United States because of political pressure.

Linux developers are not copiers or thieves. They produce thousands of lines of computer code every day. The Linux licence is based on the respect for the "intellectual property", i.e., the exclusive right of the author to distribute her creation. Nevertheless, misappropriation of code into Linux can happen. Considering the amount and complexity of code in a typical GNU/Linux distribution and the rate of development, it is likely going to happen, sooner or later. A dishonest developer may "lift" code from somebody else and submit it to any of the number of public Linux-related projects, pretending that the code is his own. This IP problem is not limited to Linux. Cases of misappropriation of code happen to close-software companies as well (e.g., it happened to Microsoft) and, no doubt, will happen again.

As far as potential for misappropriation of code is concerned, the major difference between the "open source" and "propriatory, closed software" is that a misappropriation is trivial to detect in the former, and almost impossible in the latter. It the obligation of any IP owner to protect their IP and report potential (involuntary) infringements so it can be promptly remedied, and their potential losses minimized.

Linux developers are not negligent. They continuously submit all the Linux source code for public review and comment so as to detect and prevent any IP violations. Well-organized Linux archives are maintained. The open development method of Linux follows that employed by science, and it is likely a more dilligent practice for protection of other authors' rights than almost any IP control system conceivable for implementation in a closed-software house. Thus, Linux management of IP rights can rightly be called as "among the best in the industry" if not "the best".

Linux has an excellent IP record. Certainly, it is not known to harbor misappropriated code. Is it then legally-safe for me to use Linux? I feel, it is for me. In case a misappropriation of code into Linux is ever found, I can be certain that any infringing code will be immediately expelled from Linux and "clean" version will become available for me to upgrade. It has always been a specific goal of the Linux community at large to produce code uncontaminated with any propriatory code.

The whole issue should be placed into a broader context. There appears to be a recently increasing tendency to go overboard with "intellectual property" which clashes with notions of basic justice, decency and common sense. It seems that some dishonest corporations try to impose nebulous "licensing" to keep extracting, indefinitely, money while delivering no new value. In some cases, IP is becoming a tool with which some major corporations try to tax the average joe (and business startups), not unlike emperors used to tax salt. Linux is an answer to this unhealthy trend, an answer which is based on respect to the existing copyright laws. Therefore, Linux clashes with those who wish to extract money while delivering no value. I do not see a fundamental problem with IP in Linux but there is certainly a conflict of interests and hence attacks on Linux.


To summarize, Linux licence is based on respect to the current copyright laws. For all what is known, Linux is free of "intellectual property" infringement. It employs the best due diligent practices to make sure it remains free of any such infringements. However, due to the revolutionary nature of source code development, Linux is being attacked with nebulous IP claims and smeared by some paid "experts" with various IP "worries". So yes, publicity is expected as Linux big names are dragged through U.S. courts but it does not affect me.

If worst comes to worst and the intellectual property laws became so restrictive as to impede the progress of Linux and other open software, I would expect that it will be the laws that crumble. This is because the politicians seem to forget the intellectual property does not really exist (as Jefferson knew) and have been put in place only for further development and common benefit. Linux was born from genuine frustration about the quality and cost of software produced by the past methods, and such frustration cannot be contained by naked force without political repercussions.

1.19 Linux sux etc.

If you don't like Linux, then do not use it. You are not doing anybody a favor by using Linux. GNU/Linux is free and powerful software, but only for those who like or need it. There are alternative operating systems for you to choose from and they may better match your requirements. Although most Linuxers enjoy the growth and welcome new users, some are not very happy about it because "the crowd and commerce can spoil the hackers' paradise we created." Therefore, you really aren't doing anybody a favour by using Linux.

In this context, it may be worthwhile to briefly summarize Linux strengths and weaknesses: Linux is owned by its fans (your piece of ownership comes free with your free subscription to the fan club), definitely very powerful and feature-rich, highly configurable, as flexible as you want it to be (comes with complexity), low on the cost of hardware, comes with any networking bell-and-whistle known to man, requires a computer literate administrator, some essential desktop applications are still behind commercial offerings on other platforms (e.g., spreadsheet and word processing), a number of excellent end-user applications come "standard" and free with the operating system, the graphical user interface is very nice but still not as polished as Apple or MS offerings, Linux is highly standard (POSIX UNIX), open file formats used all along, thousands of programs available for free download (although the ease of use and quality of these varies vastly). And most of all, Linux is enjoyable!

2 Before Linux Installation

2.1 Which Linux distribution should I use?

Linux distribution is a coherent collection of free software with the Linux kernel (operating system) at its center. To run Linux, you normally need a Linux distribution on a CD.

The differences between the various Linux distributions ("distros") are minor: the installation program, choice of the bundled applications and tools, arrangement of a few things on the hard drive. Regardless of your choice of distro, most of Linux is still at the same, and standard hard drive locations are used for essential items. Whichever distribution you decide to install, you will end up with essentially the same Linux.

We mostly use Mandrake Linux (sometimes called MDK) or Fedora (formery known as "Red Hat Linux" "RedHat" or RH) and for the following reasons:

  1. They are both very popular (both an advantage for a newbie and a testimony to their quality).

  2. They are both general-purpose distributions.

  3. They both come with relatively easy setup programs.

  4. Both Mandrake and RedHat contributions to Linux are "open software" (this means that all the software written by the packaging corporations and included on the distribution CDs is licensed under the General Public License, GPL, so that it can be legally copied, given away, reused, etc.).

  5. Both Mandrake and Fedora can be obtained cheaply or free if you don't care for commercial support. This is a consequence of (4).

  6. Mandrake was once originally based on RedHat, so both distributions are quite similar. Software packages for RedHat often work on Mandrake (and vice versa) without problems. However, Mandrake is a bit more automatized and makes a somewhat nicer desktop than RedHat. At the same time, Mandrake sometimes is not as rock stable as RedHat.

In short, as a newbie, you can safely bet on "Mandrake" or "Fedora" unless you like something else or have specialized needs, or your environment suggests using something else (e.g., if you have an experienced guru nearby, or a bunch of friends who are using Linux, you may want to use the same distribution - makes getting help a whole lot easier).

The most recent distributions we recommend (December 2003) is Mandrake 9.2, and "Fedora Core 1" (the predesessor of Fedora was "RedHat 9.0"). These are both excellent distributions. Be sure to specify the most recent version if ordering your software from a dealer--many dealers like to clear their inventory by sending you an older version (this applies not only to Linux). Generally, development under Linux is fast, and you don't want to waste your time with older distributions. The authors of this guide have no connection to Mandrake or RedHat (or any other Linux distributor) whatsoever.

Our recommendation of Mandrake and Fedora for newbies does not mean that other distributions don't offer benefits or unique features which may surpass Mandrake or RedHat in specific areas. We do believe that we benefited from exposure to a different distribution because it helped us understand Linux better.

We tried Debian and we liked it very much. It was probably as easy as RedHat, but Debian seems less common (hence, being newbies, we picked up Mandrake or RedHat). The great benefit of Debian is that it is 100% non-commercial (put together by volunteer hackers, the true Linux way) and it probably most strictly adheres to Linux standards (it probably sets the standards too). Another great benefit is that Debian crams on their numerous distribution CDs thousands of tools and applications--easily much more than any other distribution. All these tools/apps are nicely "packaged" (for ease of installation) and tested for compatibility. This makes Debian distro look monumental, safe, conservative, and always somewhat outdated. So yes, we would not have a problem recommending Debian as a great general-purpose Linux distribution. Debian calls itself "The Universal Operating System" for a good reason. At any time, Debian carries 3 versions. (1) The "stable" version (sometimes called "potato"), and we would not recommend it, unless you are really paranoid on stability and don't mind quite outdated packages. (2) The Debian "testing" version (sometimes called "woody") is probably as stable as the latest RedHat, and more stable than your current Mandrake. It is much more up do date than Debian "stable". Debian Woody is the version we like. (3) If you don't mind occasional trouble, you can also the the third branch called "unstable", which is likely quite up-to-date.

S.u.S.E Linux distribution (http://www.suse.com) is very popular in Europe. It surely looks German--a solid, general-purpose distro with an easy setup and an excellent reputation. Many users swear by SuSe. We couldn't find cheap Suse CDs though but it appears you can download it (I cannot find a link). Their product includes propriatory additions that will satisfy enterprise-level need to interface some popular propriatory applications (MS Exchange, Cross-over office, etc).

Slackware seems to be favorite among "hard-core hackers" who like customizing scripts. We would have trouble recommending Slackware for Linux newbies unless the newbie likes to feel cool. Our reviewer Bill Staehle says: "The real 'reason' for a newbie to avoid Slackware is that it is much more command line oriented, and lacks some of the 'cutsie slick and drool' tools that the other distributions have." We received feedback from Linux newbies who use Slackware and it works very well for them. It seems that Slackware is relatively simple and cool because of the lack of automation. Therefore, with a bit of effort, a computer-literate administrator can actually understand what is going in her operating system (this is not something I can always say about Mandrake, or MS Windows for that matter).

Knoppix Linux (http://www.knoppix.net) is another distribution worth consideration. The main point of Knoppix is that it is a "live distro", i.e., it can be booted from a CD, without installation. This is excellent for trying Linux (if you like it, you can also install Knoppix on the hard drive). It is also makes a perfect disaster-recovery tool (distro on a CD is also safe because no malicious program can do anything to your executables, and non-invasive for the local storage as required for post-mortem analyses). Knoppix is also useful if you have to work under Linux on sombody elses computer: you insert Knoppix CD into the CDdrive, and perhaps exteral storage on the usb port (for personal storage), and you are all set to work in your own environment. When done, you take your chips home. You can mount the local computer resources if you have to. Interesting tool.

Gentoo seems to have some strong following. In Gentoo (hearsay, never used it), they have a cool installation/upgrade system which does anything from sources (a local compilation is required). Long compilations can be joy to watch but, well, they can take time. The resulting executables are taylored to your hardware so they are perhaps smaller or faster than those on a more-standard "already cooked" (binary) Linux distribution.

Corel was once working on their own Linux distribution apparently geared towards a nice and easy platform to run the Corel suite of office applications: WordPerfect wordprocessor, QuattroPro spreadsheet, Corel Presentations, Paradox database, CorelDraw artist package.... The Corel Linux was based on the Debian distribution. It looked initially very promissing, but it is unclear to me what Corel has done with it (was paid by Microsoft to drop it?). In brief, Corel Linux is dead now, and I would never recommend it to anybody because it it a dead-end. The only reason to mention it here is that Corel Linux once received lots of publicity, so you may still hear about it. It seems like a sad story, particularly for Canadians.

Caldera was once another well-known distribution. It was said to be aiming at corporate users, had a fancy (and pricey) configuration tools, and other corporate goodies. In Aug.2000, Caldera purchased SCO Unix (the original trademarked ancient UNIX) which gave them an even more "corporate" look in my eyes. Caldera did not seem to care too much about home Linux users, so I never considered it for my home use. In early 2003, Caldera (renamed SCO) evidently swiched to different, perhaps more profitable, business model ("fire programmers, hire lawyers"). I will surely stay clear of anything that might bear the name SCO or Caldera on it because I do not like the idea of paying US$1399 for the right to run Linux on a single-processor computer or being sued. Caldera/SCO Linux distro certainly does not have any future.

There are "localized" versions of Linux for specific countries or languages (Korean, Chinese, Japanese, Hungarian, French, ... )--they likely contain (on default) all the hacks and docs (documentation) that the users in these countries want to see. Says Bill Staehle: "You may want to mention the Conectiva Linux distribution, loosely based on RH from Brazil. As such, it is in Portugese, and is also available in Spanish. Try: http://www.conectiva.com.br/". I heard several good things about Conectiva, so if Portugese or Spanish was my language, I would probably give it a try.

There are also "special purpose" distributions, e.g. the "real-time" editions of Linux (might be useful if you are in for automation, robotics, fast speed data acquisition, etc.), very small distros (if you like the idea of running Linux from a single floppy which can be useful for system security or recovery), Linux for embedded systems (if you wanted to customize Linux as a small "special purpose" device, which could be good for the next-generation stereo, MP3 player, palm computer, or a fancy cellular phone), parallel computing and clustering systems (might be great if you plan to do your own weather forecasting :-) or at least nuclear explosion simulations :p ), etc. Here the differences will be larger, but these distributions are not meant to be "general purpose". As a newbie, you likely don't want to start with any of these, although you might be tempted to. (They surely show Linux strength and viability--Linux runs on toys, even a wrist watch, as well as computer clusters that make the currently fastest systems in the world.)

The distribution you need is of course specific to the hardware platform you have. This means that for your PC hardware containing an Intel 386 processor, or Intel 486, or Intel Pentium, or Intel 586, or Intel 686, or Cyrix, or K6, AMD, or similar, you need the binary distribution called "Intel" or "386" or x86. [Unless you are prepared to start with your own compilation of the Linux source code, which is not typical for a newbie :-)] . This happens because there are binary distributions for other hardware platforms too: PowerPC, Alpha, Apple, IBM mainframe, "Intel StrongARM", Transmeta, and perhaps a dozen more--you don't want to get those binaries for your PC clone; they surely will not work on a PC machine with an "Intel" or "AMD" processor inside. If you have no-Intel hardware, you may want to search the Internet to find who supports it (chances are Debian does, they seem to support even the most exotic ones. Then, you need to obtain "Debian ARM" or "Debian Motorola 680x0"or "Debian PowerPC" or "Debian SPARC ", ...).

In short, although newbies get confused with the multiple Linux distributions, there are reasons to have different distros. They should be viewed as a Linux strength rather than weakness. Linux is simply filling all application and hardware platform niches. The drawback is that there are some "funny" distribution to avoid if you plan your serious business to depend on Linux.

This guide concentrates on RedHat and Mandrake for the PC (Intel) platform. Many of the answers will work fine on other distributions or platforms, but we did not try them.

2.2 Which Linux Distribution should I select for my old computer(s)?

Quick answer: Debian, Slackware, or perhaps BasicLinux (current version), or an older version of RedHat, Mandrake, or SuSE. Justification: RedHat, Mandrake, SuSE, Caldera, and TurboLinux are optimized/suitable for hardware current at the date of their release. They may be difficult or impossible to install on older machines mostly due to the memory contraints and speed. Debian and Slackware are suitable for most older hardware as well. At the begining of installation on older hardware, watch for the initial prompt to start the installation in the "text mode".

2.3 What are the Linux hardware requirements?

"Out-of-box" Linux should run on a 386SX-based PC with 8 MB of memory, but such a low-end computer is practical for text-only applications (no X-window) and will likely have trouble with installation. A 486 with 16 MB memory and 600 MB free (unpartitioned) hard drives worked fine for me under X-windows but I did not expect it to fly (I got rid of it in 2002). My 586-133 MHz with 64 MB of memory runs acceptable under Linux with X or without. My 1.33 GHZ "Athlon" (AMD processor) with 256 MB of memory is a real pleasure to run with an instantaneous response even when running many large applications concurrently. I would not buy today a computer with less than 256 MB of memory (Dec.2001).

My 486-33 MHz with 8 MB memory and 1 GB hard drive had too little memory to run adequately stand-alone under GUI, but was still useful in my home network environment running as an X-terminal (a 486-class machine also performs just adequately stand-alone if it has at least 16 MB of memory but sometimes memory for old computers is hard to obtain and high-priced). (Pls note that Mandrake requires a Pentium processor.)

If you are willing to jump a few extra hoops, you should be able to install and run Linux on as little as 4 MB of memory, but this is probably not worth the effort for the general purpose home Linux machine. I would say: get at least 32 MB of memory, and if possible 128 or 512 MB --more memory can make a difference in performance when running several large GUI applications concurrently. Memory is generally inexpensive these days (but prices can vary from month to month). Please note that many current distribution have problems running their installation programs on older computers with a small amount of memory (although once installed, Linux will typically run just fine). If you require more help on installing Linux on a low-memory computer, try: http://7thguard.net/files/DebianHOWTO.txt

Networking is where Linux really shines, so consider getting 10-base-T Ethernet cards--they are not very expensive and will be perfect to connect your two or more home computers together. Also, look around for old Ethernet cards which MS Windows deems obsolete--they can be bought for a really low price and they will work great under Linux. The 10-base-T system uses "giant phone" (RJ45)-type connectors and normal (not cross-over) "Ethernet" cables. All the computers are connected, from the socket on the Ethernet card, to a small box called the hub. The hub has an extra connection (called "uplink") which I will use if I ever have a permanent "over-Ethernet" connection to the outside world. Here is a schematics for a straight-forward home network arrangement:

-----------

| The_Hub |-[uplink]---[to_External_Network_over_Ethernet]

-----------

| | |

PC1 PC2 PC3_with_modem---External_Network_over_PPP


Here, I show a local private network consisting of PC1, PC2 and PC3, connected through a hub. Since I do not have "External_Network_over_Ethernet" on my home hub "uplink", PC3 provides my connection to the outside world (over a modem). Therefore, PC3 is called the "gateway" for all computers on my local private network (except PC3 itself). I enable the firewall software on PC3 PPP network interface, and let PC3 know how to dial out and connect to the outside. The outside world can only see PC3. As far as they can tell, PC1 and PC2 do not exist. My local ethernet network is "trusted" because only trusted people have physical access to PC1, PC2 and PC3. ("PPP" stands for "Point-to-Point Protocol" and it is a standard for communicating over phone lines.)


You can, of course, build a more complicated network with Linux. A PC can have 2 (or more) ethernet cards. It may then work as bridge between 2 (or more) networks. The PC will act as a gataway for all traffic between between the 2 networks. The networks do not have to be known to the outside world ("local private networks") and sit behind a firewall enabled on a gateway computer. The outside world will only know about 1 computer of mine, the "gateway" to the external network. Other computers will still be able to communicate with the outside world, but all the traffic will appear outside to originate from one, very busy computer--the gateway.

To connect just two computers, a cross-over cable for direct Ethernet-card to Ethernet-card connection is sufficient ("networking for the poor") but the connection through the hub is more straight-forward. To connect more than 2 computers together, you need a hub (~US$30 to US$80) and normal (not cross-over) cables. (If you have extra Ethernet cards, you may also consider installing more than 1 Ethernet card on a computer to make it a router. Then you use direct connections to other computers using the cross-over cables, and save the expense of a hub. This adds a configuration complexity to your system, yet in some situations can be technically advantagous.)

Here is another suggestion on setting up a different kind of network, using a very much older type hardware, which uses coaxial cables (like for the cable TV). For this, no hub is necessary. Because this networking scheme is older, it can be assembled using cards and parts that are sometimes available for free:


(edited for space) From: John.Edwards@brunel.ac.uk Subject: Linux Guide-a suggestion


Hi. Many older 10Mbps network cards (and some newer ones as well) have a BNC connector and you can usually pick up old co-axial cabling when companies upgrade to UTP. Add a T piece for each machine and a 50-ohm terminator at each end (about 1 pound or $1.50 each) and you have a home network that will happily support more machines than you probably have room for. And most importantly--no expensive hub (or cheap hub that can cause trouble). There are other advantages to co-ax as well, it's tougher to break and more resistant to noise from other equipment.


Disadvantages: There is a limit of 185 meters per network segment of thin co-ax, 30 machines per network, and you're stuck at 10Mbps, but I don't see any small home network needing more than that. Also if one cable goes down then the whole network stops, this shouldn't happen often unless someone unplugs a cable section. You can disconnect the T piece from a PC without harming the rest though.


Quick diagram, T for a T piece and Term for a terminator:


Term-T-----T-----T-----T-Term

| | | |

PC PC PC PC


The various parts connect together using BNC connectors similar to a TV & video connector but with a bayonet that secures the two sockets together. For more details see the /usr/doc/HOWTO/Ethernet-HOWTO

The most straigh-forward and modern, however, is to get one 10-base-T ethernet card for each of your computers and a one hub to connect them all.

2.4 Will my hardware work under Linux?

Not every piece of PC hardware is supported under Linux, but most are, particularly the more standard, older, and popular ones. This applies to SCSI adapters, CDROMs, writable and rewritable CDs (CD-R and CD-RW), video cards, mice, printers, modems, network cards, scanners, Iomega drives, etc.

The most notable exceptions are the so-called Winmodems (=MS Windows modems also called "software modems"). Avoid these like fire--they are a bit less expensive than full modems, but they are crippled (some processing is done by the main computer CPU instead of by the modem), and there is little chance you will have a Winmodem running on Linux right away (for more info on Winmodems, see http://www.idir.net/~gromitkc/winmodem.html). External modems are never "Winmodems" so if in doubt, purchase an external modem (external modems are more expensive, but they don't drain your PC power supply, are easily portable between machines, look better, and show modem activity). Additional points to consider with modems: "Older externals using a Rockwell Protocol that don't work too well. Also, the newer USB modems are not currently (March 2001) well supported. See the winmodem page." [source: B.Staehle].

Another area of potential problems is the video card. If you have a recent "cutting edge" 3D or uncommon card, you may want to check its compatibility at http://www.Xfree86.org.

Zip drives of all kinds are supported fine.

I wouldn't count on Linux supporting a parallel port (non-SCSI) scanner, no matter if the manufacturer claims TWAIN (="Technology Without An Interesting Name", no joke here) compatibility.

So the short answer is yes, in all likelihood your standard PC will run Linux with no problems. You don't invest much when trying Linux, so probably the easiest way to make sure is to attempt an installation on your existing hardware. There are Linux hardware compatibility lists at http://hardware.redhat.com/hcl/genpage2.cgi and http://metalab.unc.edu/LDP/HOWTO/Hardware-HOWTO.html if you want to check your newer or less popular hardware.

When purchasing new hardware, I would always check its Linux compatibility on the above lists. You can also ask your supplier if the hardware is supported under Linux, but I would take the answer with a grain of salt--too many companies have incompetent sales personnel/technical support. When purchasing a new computer, I would consider a system with Linux pre-installed. A number of major suppliers offer systems (particularly large ones) with Linux, but many don't. You can always get a system with Linux-preinstallled from a smaller vendor.

If you are an adventurous person, as I am, I would pay no attention to the remarks above, chances are 90-10 that the hardware will work.

If a piece of hardware of yours is (apparently) not supported in your current Linux distribution, don't give up. Chances are that: (1) It is supported, but you don't know how to set it up. (Solution: stay around with Linux for a few weeks, don't waste your time, when you get some understanding of how your system works, then you may be able to set it up.) (2) You have to go through a more complex setup to support the hardware (for example some cryptic command or a kernel re-compile, which is not as difficult as it seems). (3) An updated (different?) distribution already supports it "out-of-box" (you can usually order it for US$1.99). (4) There is already an upgrade somewhere on the Internet, you have to find it, download it, and figure out how to install it. (4) The upgrade will be available next month--Linux development goes really fast!

Another area that can be problematic is laptops, because laptops typically contain quite unusual hardware that requires the support of the original vendor. See http://www.linux.org/hardware/laptop.html for a help with installation. IBM laptops appear a safe bet as far as Linux compatiblity is concerned. To purchase a Linux laptop, you may also try http://www.linuxcertified.com/linux_laptops.html

2.5 How do I download Linux?

Do yourself a favor and do not download Linux. Buy an installation CD instead. Linux can be downloaded completely from the Internet, but it is a very large and sophisticated operating system. The download may take hours or days of download time, and you may encounter problems and frustrations, e.g., due to errors in the downloaded files.

If you do have a speedy Internet connection (definitely not a 56k-modem, but perhaps cable modem) and you are not a complete newbie, a Linux download may be an option to you after all. Try http://www.linuxiso.org/ for ready-to-burn CD images (the ISO format) of your selected Linux distribution. To avoid problems, check the downloaded ISO image prior to burning using the MD5 sum using (on Linux):

md5sum the_name_of_the.iso

This command will take some time (a few minutes?) to complete a check of a typical (640 kByte) CD image. (MS Windows does not contain a utility to check the md5sum, but such a utility can be downloaded for free.)

The utility md5 generates a 32-character string which depends on the file contents. If even one bit in the file has changed, the string is going to be different. Once the above command generates that signature string (the "md5 sum"), compare this string with that listed on the web page from which you downloaded the file. Please note that data can be corrupted during large downloads, so checking the sum is really a good idea else you risk problems with installation.

2.6 How do I get a Linux CD?

Many possible ways. (1) Buy the "RedHat" or Mandrake CDs from Linuxmall (http://www.LinuxMall.com), or Cheapbytes (http://cart.cheapbytes.com/cgi-bin/cart )--last time I checked, "the unofficial" RedHat GPL was US$2.99 or something like that for a 2 CD package + shipping and handling. They will mail you bare CDs. You get no printed manual, no support, no boot diskette, but the price is right, and the manual and tools to make a boot diskette are on the first (installation) CD. I purchased several packages from "Cheapbytes" and they always arrived fast, were of good quality, and there were no problems with my credit card charge (the authors have no connection to "cheapbytes" whatsoever). (2) Buy the boxed "official Red Hat" or "Mandrake" from the same place on the Internet or from your favorite software supplier; prices start at around US$40--you will get the printed manual, e-mail or telephone installation support (60 days?), the boot diskette, additional CDs with "bundled" commercial applications, and perhaps other goodies (free updates?). If your time is worth lots of money, you may opt for more advanced technical support at higher price. (3) Copy the installation CDs from your friend. This is perfectly legal and ok--Linux is free. If you have a Linux CD, don't be shy to loan it to your neighbor. (4) Check your library, local bookstore, or http:/www.amazon.com. Several Linux handbooks come with an attached CD containing a full Linux distribution. This is a good way to start with Linux because it is definitely a good idea to have a nice Linux handbook. With Linux' countless utilities, I need a handbook all the time. The drawback is that the books often include versions of Linux which are quite dated. Perhaps consider the "official" Linux with a handbook? (5) Visit a Linux "installfest" when one is organized in a place near you. Local Linux "gurus" will install Linux on your computer free (bring the computer) and you will likely be able to get a Linux CD too (why don't you bring some empty CD-R to the fest?). Check for the Linux User Group on the net to see when the nearest to you plans an installfest. Good way to meet other Linuxers too.

Here is a more comprehensive list of places to obtain Linux CDs with their location, so you can find something near to you (after B.Staehle) : http://www.ixsoft.de (low price CDs in Europe); http://linuxservice.de (another source in Germany); http://www.polo.demon.co.uk/emporium.html (The Linux Emporium); http://www.linux-emporium.co.uk; http://definite.ukpost.com/ (Definite Linux Systems); http://www.mallind.demon.co.uk/ (GPL + official distros); http://www.amush.cx/linux/ (GPL distributions in UK only); http://www.linux123.co.uk/ (GPL + official distros in .uk); http://www.kihi.com.au/bowtie/ (Bowtie Software - cheap CDs in OZ); http://EverythingLinux.com.au/ (cheap CDs in OZ); http://www.lsl.com.au/ (cheap CDs in OZ); http://www.arles.ns.ca (official distros and BSD in .ca); http://www.affinity-systems.ab.ca/ (Official distros - hardware in .ca); http://www.warpedsystems.sk.ca (GPL + official distros, custom built system CA); http://www.softcopy.on.ca/ (cheap CDs in CA); http://www.libranet.com (Libranet Linux Vancouver, BC, CA); http://www.linuxwarehouse.co.za/ (low cost and official in South Africa); http://linuxcentral.com (Clinton Township MI 48035); http://www.lsl.com (Chesterfield, MI 48047, USA); http://www.cheapbytes.com (Lodi, CA 95241, USA); http://www.infomagic.com (Flagstaff AZ 86004, USA); http://www.tummy.com/krud/ (Fort Collins, CO 80525, USA); http://www.pieceby.com/ (Hudson, NH 03051, USA); http://www.linuxmall.com (Aurora, CO 80046-0190, USA); http://www.linux-now.com (Clarion, PA 16214, USA); http://www.xcomputing.com (San Francisco, CA 94134, USA); http://www.ccsoft.cc/linux/ (Santa Rosa, CA 95401, USA); http://www.storeanywhere.com/ (Brooklyn, NY 11235, USA); http://www.linuxcomponents.com (Owings Mills, MD 21117, USA).

2.7 I have Linux Installation CDs but no install floppy. What do I do?

If your computer can boot from the CD drive (older computers cannot), you don't need a boot diskette to install Linux. Have a look at your BIOS setup; the boot sequence can often be set up there (the default is often floppy followed by hard drive). My computer has the CD drive specified as the first boot device in the BIOS yet still cannot boot from the CD drive. So the BIOS setup does not necessary reflect the capability of your machine. If you can boot from the CD drive, just insert the RedHat CD into the CD drive and reboot the computer to enter the RedHat Linux installation program.

If you don't know how to access your BIOS setup, read this paragraph. The BIOS setup can typically be entered at boottime by pressing the proper key at the right moment (often when a prompt is briefly displayed). Most often, it is the <Del> key. Here is a list of key combinations used by popular BIOSes: Acer notebooks: <F2> during Power-On Self-Test (POST). American Megatrends (AMI): <Del> during Power-On Self-Test. Award: <Del>, or <Ctrl><Alt><Esc>. Compaq: <F10> after the square appears in the top right corner of the screen during boot-up. Dell: <Ctrl><Alt><Enter>. DTK: <Esc> during Power-On Self-Test. IBM Aptiva 535: <F1> while the square with the wavy lines is displayed in the upper right corner during power-on. IBM PS/2: <Ctrl><Alt><Del>, then <Ctrl><Alt><Ins> when the cursor is in the top right corner Mr. BIOS: <Ctrl><Alt><S> during Power-On Self-Test. Packard Bell: For some models, <F1> or <F2 > during Power-On Self-Test. Phoenix: <Ctrl><Alt><Esc> or <Ctrl><Alt><S>, or <Ctrl><Alt><Enter>.

If your computer cannot boot from the CD drive, make an install boot diskette from under DOS or the MS Windows DOS mode. (You have go to to "Shutdown" and "Restart in MS-DOS mode", not just run a DOS window).

It is important that you have a perfectly good floppy (without even one bad cluster). The program that makes the diskette does not check if the floppy was written properly. Also, don't count on the DOS FORMAT utility finding a faulty floppy--it probably won't. If I were you, I would make two or three boot floppies at once--you may be surprised how many diskettes have problems. For me, the third floppy worked! If your install diskette does not boot, make another one--it definitely should boot.

Here are the commands. To make the boot floppy run:

F:\dosutils\rawrite.exe -f F:\images\boot.img -d a: -n

To make the supplemental (optional) diskette run:

F:\dosutils\rawrite.exe -f F:\images\supp.img -d a: -n

This assumes your CDROM is the DOS "F:" drive, and your floppy is "A:", adjust the commands if the drive letters are different on your system.

The commands above run the utility "rawrite" and specify the input file ("disk image", after the option "-f") and the destination drive (after the option "-d"), and suppresses the prompt to insert a floppy (option "-n"). You may find it easier to run rawrite without any argument--it will interactively prompt you for the input image (pick the file name as in the commands above) and the destination drive letter.

From under Linux, you can make a boot floppy as follows.

If the floppy needs low-level formatting, you can format it under Linux using:

fdformat /dev/fd0H1440

Mount the RedHat CDROM:

mount /mnt/cdrom

cd /mnt/cdrom/images/

Write the floppy image to the floppy:

dd if=boot.img of=/dev/fd0

[The ``dd'' command copies files. The above command specifies that the input file ("if") is ``boot.img'' and the output file ("of") is /dev/fd0, which is the first floppy drive, i.e. the floppy drive number zero (if you want to write to your second floppy drive, use /dev/fd1). ]

To verify that the disk image was written to the floppy correctly, you can use one of the following four ways:

[1st way]

cmp boot.img /dev/fd0

[2nd way]

diff boot.img /dev/fd0

[3rd way]

md5sum boot.img

md5sum /dev/fd0

[compare if the two returned md5 checksums are identical]

[4th way]

sum boot.img

sum /dev/fd0

[compare if the two returned sums are identical]

2.8 What do I need to read before installation?

It is VERY helpful to get some UNIX orientation if you don't have any. Buy a good Linux manual or dust your old Unix handbook. Almost all UNIX concepts apply in Linux, and almost all UNIX commands will run fine under Linux. I find manuals for MS Windows useless (click this, click that, look at the screenshot), but manuals for Linux/UNIX are typically great (give you an understanding of the system, a lasting benefit).

You may want to learn about your hardware: how many and what size hard drives you have, the type, number, order and size of all partitions on each drive, where your DOS/Windows partitions are, which one is the DOS/Windows boot partition (if you plan to have dual boot), what type of mouse you have, what video card and with how much memory, what monitor (max synchronization frequencies), etc.

Go to BIOS setup to see the number and geometry of your hard drives. Run DOS "fdisk" to display your hard drive(s) partition table(s), and print it. Watch your system boot to learn about the type of your video card and the amount of video memory. Boot MS Windows, go to the control panel-devices and write down the sound card, modem, network card types and settings (name, type, IRQ, i/o address, DMA channel). Read the label underneath your mouse to see the type of mouse you have. (Next time you buy a mouse, get a Linux-ready 3-button Logitech or similar--Linux makes good use of all three buttons.) Dust off your monitor manual to find out the maximum synchronization frequencies (vertical and horizontal) that your monitor supports. Never use frequencies out of the monitor specification--this may damage your monitor.

You may want to browse the RedHat or Mandrake manual. If you don't have the printed copy, an html version is on your CD so you can read it using any web browser, e.g. Netscape for Windows. Look here(lnag_help.html#reading_materials) to see how to access this manual and some additional reading material which is on your Linux CD.

2.9 Can I have MS Windows and Linux installed on the same computer?

Yes, you can. Many Linuxers use a dual boot. This is typically achieved by installing MS Windows on one hard-drive partition and Linux on another partition. Linux comes with a boot manager called GRUB (some, particularly older distributions may contain another boot manager called LILO). The boot manager will let you select, at boot time, the operating system you boot. Install MS Windows first and Linux only afterwards or else the MS Windows installation program will disable your access to Linux. Have a Linux boot floppy ready if you need to re-install MS Windows--MS Windows will surely disable your access to Linux and you will have to boot Linux from the floppy and then re-run the command lilo to be back in business. The best is to use MS Windows 95 because it interference with Linux is unsophisticated and workarounds are well known. Installation of the latest MS Windows offering is sure to introduce trouble into your dual booting system (obviously on purpose), e.g., insist on its own boot manager that will surely refuse to run Linux. Although it is amazing that a convicted monopolist (Microsoft) can keep interferring with another operating system, one may need to learn to live with it.

From under Linux, you will be able to read from and write to your MS Windows drive partitions so that the data exchange between MS Windows- and the Linux-based program is seamless. You will also be able to use your existing MS Windows-based resources: sound files, backgrounds, pictures, fo