First of all, let me explain what "Linux" itself is. It's a UNIX operating system written by a Finnish college student by the name of Linus Torvalds while attending the University of Helsinki, in Finland. Linux refers to the kernel itself, not the entire thing, but has come to be known as an all-inclusive system...
I remember back in 1992 or so, I wanted to get into something new, as far as OS's go, pining for the days on a "real" system like the MicroVAX II I used to work on. DOS somehow wasn't thrilling me, and Windoze, well, it was Windoze.
I've heard a lot of UNIX, and was exposed to "Primos" at college. It was some UNIX shell on top of the OS (on a Prime mini) or students to practice on. We learned about fun things like "ls" and "rm" - this stuff was deep. ;> So, I started to think, well, what's cheap? I ran across Coherent and wanted to pick that up. When I was asking around if anyone had any experience with it, someone eventually mentioned Linux, and of course, that it was free. Other operating systems I was looking to was OS/2 and another rather odd one that disappeared quietly and quickly, but had the ability to "mimic" other operating systems, including DOS and VAX/VMS. I was really into getting a UNIX of my own, though.
There was very little "advertisement" of Linux at that time, which was now in 1993ish. Not to mention, I was barely on the 'Net yet. So, I dug around and finally found a company called Morse Communications, when they were the primary source of Slackware, and ordered Slackware 2.1 (I believe that's it). Anything I could find on Compu$erve at the time got printed and read thouroughly. Nowadays, Slackware is available from Walnut Creek Software at www.cdrom.com.
It was great... Something totally new. Something that rekindled that initial "wow" and "fun factor" with computers. I got it installed eventually (grin) and one day, got my first X window. It was very exciting, I assure you. Maybe you had to be there.
Thus, my fascination was born with Linux. With it, you soon learn to become very logical and how to absorb major amounts of new information. Troubleshooting and actually getting things working back then, especially from a more-or-less UNIX-newbie (but quite familiar with most other OSes) point of view was quite a learning experience. There wasn't much information to go from back then, and there certainly weren't any Linux books in bookstores...
Rather than try and tell you myself, and somewhat redundantly, I refer you to the Linux-FAQ. (ed: link here!)
However, in a nutshell, it's a fully 32-bit operating system that supports Symmetric Multi-Processing (SMP) and pre-emptive mutlitasking and is multi-user. What a load of buzzwords... It runs on just about anything, from a 386/16MHz with 4MB of RAM to the latest Pentium II processors, and also the Alpha, Motorola PowerPC, Sun Sparc and more processors as well. It inlcudes the X window system and just about every type of application you could want or need. It's extremely good at using whatever resources you have, which makes a Linux system very responsive and fast as compared to a comparable Windoze setup. You can use Linux for anything, from a full-blown Internet server such as the one you are viewing these very pages from right now,(running www, ftp, mailing list and other applications) to a day-to-day personal workstation. Forget the hype about Micro$oft NT being a "better UNIX than UNIX" workstation. Linux is the reality, it's here today, and IT IS FREE, folks.
Granted, there are UNIX like shells and even X window servers available for (pick your MS OS) at extra cost, but think about it. You have to pay for the OS itself, be it Win95 or a flavor of NT, but also the "UNIX like" additions (programs) as well. You end up with Windoze (with it's ton of overhead, Bloatware(TM) and bugs) which tries to work like UNIX! Why not get the real thing without the expense and overhead?! Besides, you don't need the latest technology to have a perfectly usable, fast and workable workstation. Not to mention, all the other apps that you'll need down the road... Lastly, there are the oodles of "standards" that Micro$oft would like you to think are awesome, indispensable and theirs when in reality, Linux supports all the standards that made the Internet and computing what it is today, out of the box, without of course, all the security holes and bugs (not to mention proprietariness) of the equivalent MS counterpart.
As you can probably deduce from my rants on these web pages, and those of others on the Internet, Linux is an addictive thing, and almost a way of life. I personally cannot say enough good things about it.
So what does one do nowadays? That's the goal of this web page. To enlighten those of you out there that are curious and kind of new to Linux and UNIX in general. In a nutshell, "how do I learn about this thing?"
I hope to provide a rich set of links to various places on the 'Net to give you a good jumping point in your quest for Linux knowledge. Also, I'd like to introduce to you some very excellent books that I highly recommend.
Go to any good bookstore these days, and you can't help but to find at least a handful of books on Linux. It's a boom market these days because it's caught on so well, and so quickly - for good reason. In my time with Linux, I've seen a myriad of books come out and have managed to build up quite a collection of them. Below is an overview of some of the books that I own, and my thoughts on them. Actually, all in all, I probably made a nice contribution to ORA's income with my purchases alone, with the 5' of books on my shelf!
O'Reilly and Associates (ORA)Other Publishers and Authors
ORA books are practically the UNIX enthusiast's bible(s). They have an immense diversity of UNIX and programming related topics, and day by day, I find I own more and more of them. They are what I would call, almost "perfect" books, at least in my tastes for a practical and useful learning/reference book.
The books are specific to various topics in the UNIX world, and with each edition, feature more Linux - although you can apply them all just fine. Topics include:
- sed & awk
- lex & yacc
- DNS & Bind
- NFS & NIS
- Learning the ___ Shell
(bash, korn, csh & tsch)
- TCP/IP Administration
- Linux Mutlimedia
- Managing Mailing Lists
- Managing Internet Information Services
- Writing Linux Device Drivers
- Managing Projects with Make
- Mastering Regular Expressions
...and the list goes on. Each book is very specific to the topic and very thourough. They are written in a light and airy style by various authors and perform perfectly as both a tutorial and reference work. I highly recommend all of them.
One "theme" in particular that they've got down is the Perl programming language. It's a good all-around language that you can use for a million different things, the least of which certainly isn't system administration and web site scripting via CGI. Here are the books they have at the time of this writing (which coincidentally, I own them all):
- Learning Perl Programming (a great introduction)
- Programming Perl (the quintessential "Camel Book")
- Advanced Perl Programming (really esoteric subjects)
- Programming CGI for the Web (primarily Perl oriented)
- The Perl Resource Kit : UNIX Edition (four books & CD)
The beauty of their design and single-topic coverage makes them easy to update when new versions of the software and/or standards emerge, but you can nicely mix-and-match them. Take for example the above books on Perl. I you add the book Mastering Regular Expressions you can certainly use it with Perl. You'll need to edit your Perl scripts, and if you're a fan of vi then you can get Using vi and of course, you'll be running on top of the Bash shell, so get Learning the Bash Shell which runs on top of Linux, so pick up Running Linux and so on, and so on... As you can see, it's a little addictive...
I just wanted to mention, while mentioning "upgrades" as you can literally upgrade your books from ORA. Simply send them your title page, and they'll give you 25% of the new version. I think this only applies to direct-from-ORA purchases, but I may be wrong.
There are many, many other books on Linux by other publishers and authors out there. Below I'll describe a few that I feel really stand out.
There is a category that I'll describe as "all around Linux intro and reference" books. These are the books that try to provide you with an introduction to Linux, how to get your way around it, and provide you with a good reference work. The books I recommend are one of the following:
- Using Linux, Third Edition
- Linux Unleashed (Slackware or RedHat Editions)
- Running Linux (actually an ORA book)
My personal favorite is a toss-up between Linux Unleashed and Using Linux. I own an older copy of the latter. Since my version, they've gotten more in-depth and in the case of Unleashed, more specific, which comes in a Slackware and RedHat flavor. Personally, I'd strongly suggest the latter here, as I'm a RedHat convert, having used Slackware initially, and for some time. Running Linux is in it's own right a good book, but rather sparse (thin) and somewhat behind the times. Going by the former two then, you can't really go wrong with either. I like the concept of being specific to the distribution of the Unleashed series. Take your pick on these.
Then, there is the category I'll call "technology/etc. specific" such as Linux Databases and Linux Multimedia (yet another ORA book). I own the above books and both are very good in introducing and discussing the topics. Other books are Linux Programming, Running a Perfect Website with Linux and more. Depending on the topic you're looking for info on, I'd recommend each of these. The Progamming book is particularly good for those wishing to break into coding your own apps, and discusses the various languages available under Linux and shows examples of each.
There is certainly no lack of information (practically) on anything you want to know about on the Internet, the last which which is definately not Linux. On the Internet, you can find information on any conceivable topic, including HOWTO's and FAQ's (Frequently Asked Questions). The latter two are invaluable to us Linux-heads. They are specific to Linux, and to various different things you need to do. How to setup your PCMCIA based notebook, how to setup the X server, setting up a PPP/SLIP server, and so on - you name it.
There is also the Linux Documentation Project or simply, LDP. A collection of works delving into details of the kernel, system administration and network administration. Some of these works are also available as books in bookstores. If you have access to the Internet and either, a) don't mind electronic versions or, b) don't mind printing them out, then you can save yourself some cash here. The electronic versions are usually more up-to-date, and of course searchable...
I will include here a ton of links to the above...
Most, if not all Linux distributions already come with the various LDP and HOWTO/FAQ collections that I mentioned above. Check your system and chances are, there's a lot there already, if not on the CD-ROM you installed Linux from. You may even have gotten Linux by buying one of the above mentioned "all inclusive" books.
For the real newbie, here's a hot tip. Most every command available on a Linux system has an associated "man page" to it. Say you wanted information on the "ls" command. Just type at the shell prompt, "man ls" and you will find yourself presented with a complete overview of the command to list directory information, or, ls. Under X, there's a bunch of really nice graphical "man page" displayers. One of my favorites is TkMan which not only displays the regular man pages, but also also integrates various text-searching programs on your system such as Glimpse and grep to allow you to really zoom into to specific details you're looking for.
Also, look under the directory "/usr/doc" sometime. Chances are, you'll find documentation on many, many programs that you've installed onto your system. This is where the real program documentation hides.
Lastly, there's the texinfo command to view GNU info files.
For a hot tip, if you've got text files that you want to read, then try the simplest command, "cat" which will list them out, not much unlike the DOS counterpart, "TYPE". If you, like me, like to actually read what's scrolling by, try "less" which paginates the file to your screen. If the text file in question is gzipped (ends with "gz") then you don't have to uncompress it first... Use the command "zless" to paginate it for you!
There is no shortage of mailing lists dedicated to Linux itself and various topics. I belong to two Linux lists myself, which are SERVER-LINUX and WORKSTATION-LINUX. If you travel the 'Net enough, you're bound to come across dozens of others. In fact, there's a page out there, dedicated to presenting the List of Linux Mailing Lists (ed:Link here)
The other source of all things Linux is Usenet, or the dreaded "newsgroups" out there. Here, is a frontier of the Internet not quite civilized. It's an anarchistic land, fraught with peril and horror. Well, okay, maybe it's not that bad. There are many topics under the "comp.os.linux" domain so look there for more info. The thing with the newsgroups is a high signal-to-noise ratio, flame wars and of course, the ubiquitos SPAM... But here you will find a certain level of responsiveness; you ask a question and bunches of people either answer/help you, or flame you, usually within short order. :)
So, to wrap up this long rant, you can see that there is a great deal of information out there on your favorite (or soon to be) OS. Considering Linux's age, it's rapid growth has demonstrated it's usefulness, power, price and devotion of it's fans in the form of information. This page itself is even proof of said devotion to Linux. If all else fails, go to an Internet search engine like Yahoo or AltaVista sometime where you can do a search on anything. See what comes up!
Well, there you have it. I hope this text helps some of you (or even all of you) out there just getting into, or an old fan of, Linux. Enjoy it, use it and LEARN IT. C'ya.