Welcome, Guest. Please login or register.

Author Topic: Which Linux?!!!!!!  (Read 5596 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline Floid

  • Hero Member
  • *****
  • Join Date: Feb 2003
  • Posts: 918
    • Show all replies
Re: Which Linux?!!!!!!
« on: April 23, 2003, 03:57:20 PM »
The Peon's Guide to Gaining *NIX Proficiency
by Floid

Start with stably-shared Internet access.  Your easiest time will involve the ever-popular DSL/Cable + Router combination, or connection sharing running on an OS you understand.  For dialup users, some companies did make routers with inbuilt modems; scrounge eBay and use Google to find product reviews before you buy.  Yes, *NIX can be used for this task, but this is a guide to gaining proficiency without tearing your hair out.  What you spend now, you will recoup in savings later.

Find a cast-off machine to dedicate to learning on.  If you were once proficient with MS-DOS and its hardware configuration issues, a 486 with an ISA bus may be fine.  If you are not, something from the Pentium era is recommended.  If you are truly not a hardware type, a Pentium II or K6-2 machine meeting the specs outlined below will be advised; these can be had for far less than $200 from vendors such as PCSurplusOnline, Computer Geeks, or Auction Depot.  If you fall in that last category, I would suggest avoiding Compaq Deskpros, as many such models require an on-disk BIOS configuration utility, which will make the process much more confusing; Dells and Gateways are likely safe bets, as may be IBMs.  In fairness to Compaq, most Presarios may also be 'safe enough' for our purposes.  One of those Wal-Mart.com Lindows PCs could be a safe place to start, if you can cope with the idea that you'll be blowing the OS off of it for the time being; they do sell OS-free PCs, but that hardware may not be as guaranteed, especially on the gamers' systems.  If you absolutely cannot stand x86 hardware, or are more familiar with the vagaries of the Mac, an iMac may be the closest thing to a suitable place to start; do prepare yourself for installation headaches.

You will want at least 16MB of RAM, and 2gb of disk.  It may sound counterinituitive, but disk is your greater concern.  This does not hold true for all applications of *NIX, but it does for the purposes of your training system.

When you have procured your system, install a suitable network card.  "Suitable" will vary based on your hardware and your proficiency.  If you are technically capable and going the 486/ISA route, an NE2000 or clone is advised; if it is a modern jumperless variant (cards based on the Realtek RTL8019AS are my favorites), keep a bootable DOS setup disk handy.  If you are using a PCI system, the various revisions of the Linksys LNE100TX stand a fair chance of working across the distributions I'm about to suggest.  Other cards, and/or onboard interfaces may as well, but if you have trouble, add or swap in a supported card.  You can get the ISA cards from PCBay or similar vendors, and Linksys cards are as rare as air these days.  Both should be available under $20.

Once your hardware is assembled, select a barebones distribution.  If you aren't dead-set on Linux, NetBSD and OpenBSD are excellent choices.  If you are, Slackware, Debian, Gentoo, Sourcemage and Lunar-Linux are likely worth considering.  (Keep in mind that the last three may have higher memory and CPU requirements, and the install processes for all the Linuxes will prove generally more complex than what those two BSDs demand, and with the exception of Debian, may require you to own a CD-burner and have a CD-ROM in your impending *NIX box.)

With your hardware assembled, follow whatever procedure is necessary to install the latest stable version of your distribution of choice; I'd suggest a network install, if possible- and yes, it's possible to install at least OpenBSD in one night over a 56k link (but you *will* need to be connected to a LAN to do it; ppp support is too big for the install floppy).  Stick to a single ('root,' or '/') partition or slice, and a swap partition (128MB should provide a very, very large margin of safety with a *BSD) if suggested.  If you get the option to install packages, choose only "lynx" (a text-based web browser), "links" (another text-based browser, if available), "wget" (a tool for fetching files from URLs), and one of "ircII," "ircII-EPIC," or "BitchX" if you are a fan of IRC chatting, which you may be advised to become.

Create an account for yourself.  If given a choice of shell, 'bash,' 'ksh' (or 'pdksh'), or 'sh' (in absence of the others) are safe choices for now.  On a BSD system, add the account to the 'wheel' group when given the option.  Learn some history in the process.  Create another account for testing, so you can learn about the multiuser features of the system.

If something gets hosed in the process, don't be afraid to try again- or to try recovering from your error.  It can take everyone a dozen tries to get right the first time.

When you're fairly certain you've done everything right, congratulations- now it's time to adjust your attitude, and go shopping.

Yep, you heard me right.  Whatever your preconceptions of *NIX are- big, small, scary, mainframe-related, Free Software revolutionary, Microsoft-killing- leave them at the doorstep.  Clear your mind, think back to the day you first sat down at a computer, and realize that *NIX is just another system developed for running programs and managing data.  (If this proves too aggravating, remember that it's also been 'the' system for running programs and managing data, and as such, every OS developed in the past 20 years has been in some way a reaction to it.)  If you need some inspiration, there's always Stephenson's essay - and you heard me right: you're going to be sticking to the command line.

Why?  Because, at heart, *NIX is a terminal-based system.  For now, stick to text mode.  Realize that, back in the days when those first lines of C were written, your console may well have been a teletype.  You've had the foresight to keep your main box around for the everday tasks you rely on- no inconvenient dual-booting, no attempting to force the system to do everything you rely on AmigaOS, Windows, or MacOS for before you have any idea how to use it.  This is archaeology; this is history; this is hacking for the fun of it.  So what if you can't play Quake off the bat?  Dear God, man, you've just put an entire mainframe on your desk!  (...and hey, it might even be faster than a Cray 1.)

So what was this about going shopping?  Well, it's time to hit up the bookstore.  Home in on the books with the critters on the covers, and find the O'Reilly guide to the shell you've selected- they print references for bash and the Korn shell (ksh/pdksh), among others.  Flip through the general UNIX guides, and try to find one that's cheap, has lots of diagrams, and mentions both "BSD" and "Linux" or "GNU" ways of life.  'Running Linux' might be worth a shot if you've decided to run Linux, but it's fairly sparse.  Search out online resources; good distributions tend to have Guides, FAQs, and References that cover the basics of system administration and accomplishing common tasks.  Be prepared to slay a few more trees as you discover what you want to focus in on- as you progress, you might want a good reference guide to Internet Protocol and network administration (for what it's worth, the O'Reilly volume on the topic is somewhat lukewarm), or  to specific tools that interest you.

But anyhow, thusly armed, it's time to start assembling potshards.  Learn to navigate the directory hierarchy (on a BSD, 'man hier' will get you started); pick up some of those funny-named tools like 'grep' and discover what they actually do, how they fit together, and why they become regular verbs to folk who use them often.  Get to know your hardware (at least, the detected state of it) with 'dmesg.'  Learn how to fire up 'lynx' or 'links' and browse the web, and how to use 'vi.'  Toy with your IRC program to make it useful on an 80x25 screen, or find out to tweak your system to use high-density text modes, and maybe even 'svgalib' or kernel framebuffer drivers to display images- and, of course, Acidwarp.  Find out what 'dependencies' really are, and how to deal with them.  Think about the things you used your first computer for, in those first weeks after you unpacked it, and investigate the equivalents available.  Discover the package or ports-management system favored on your distribution, and install just the software you want.

Read up on 'rcs' so you can record the changes you make to your system configuration, and have the chance of undoing them.  Have a go at upgrading your installation-  remember, it's just a pile of programs, scripts, and their configuration files.

Do this in your spare time- there's no rush.  Try to put your learning box somewhere where it'll be convenient to use as an alternative to your usual machine, if you can stretch the cables that far.  After a year of casual exposure, you should find yourself ready to install XFree86- or to move up to a machine that can handle it- and confident enough to turn your install into a useful desktop system- or at least, to deal with the oddities of the prepackaged attempts thereat.