Migrating to Linux, Part 2
Welcome to the second article of our three-part series on migrating to Linux from a commercial operating system. Our first installment (in August) discussed many reasons why a non-technical, small office or home office (SOHO) end user might abandon their commercial OS and adopt Linux. This month, we'll explore several pointers SOHO Linux users may find helpful in making their migration safe, comfortable and productive. We'll also investigate some of the software tools, both commercial and Open Source, that SOHO users may find useful. Finally, we'll discuss interfacing and sharing files with our friends, clients and colleagues who have yet to see the light and join the Linux camp.
We assume the reader has one of the many fine Linux distributions installed and working. If you have not yet taken the plunge and installed a Linux system, please read on anyway. Hopefully, every current or potential SOHO Linux user will gain a more complete understanding of what it takes to use Linux in a SOHO environment.
One obstacle preventing SOHO users from considering Linux is the “hacker mystique” surrounding the OS. To many new users, Linux has the image of an expert's paradise, a playground for gurus only. We did much to explode that myth in our first article. Still, for many potential Linux users, the unanswered question remains: how hard and time-consuming is it to maintain a Linux system in a SOHO environment?
Once your system is installed and configured, you may discover that maintaining it is not that hard. You will not have to become an expert in system administration, nor will you necessarily have to spend much time logged in as root performing administrative tasks. In fact, you may end up spending a bigger percentage of your time actually working rather than dealing with the system. Is maintaining a SOHO Linux system any easier than other operating systems? Not necessarily, but many find that once they have developed a core of basic competencies, running their SOHO Linux systems is no harder than maintaining any other OS.
In order to gain confidence in ourselves and our Linux systems, SOHO Linux users need to be proficient in several key facets of system administration. The minutiae of all the various commands and tasks are beyond the scope of this article. Therefore, we will focus on those we feel are most important to SOHO users: maintaining software, performing regular backups and, in case of emergencies, boot/root disk use.
For the SOHO Linux user, basic system administration means all of the work done to keep the machine up and running smoothly, such as installing/upgrading software and removing old files—for more accomplished users, it may mean compiling a custom kernel. Notice that our needs and responsibilities are considerably less than those of an administrator looking after a network of servers and workstations. Here are several key pieces of advice which you may find helpful:
Be self-sufficient—invest in at least one decent Linux manual (see Resources). Locate and bookmark some of the many Linux documentation sites on the Internet. Read all available documentation before posting questions on the newsgroups. These suggestions may seem obvious and elementary, yet anyone who reads the newsgroups knows how many well-documented, easily-solved problems are repeated over and over again, wasting a lot of valuable time and energy for both the posters and those trying to help them. On the other hand, don't try to learn everything—there is just too much to know. Keep your Linux information resources handy and use them as a reference library. Whenever you are stumped or run into a problem, have your resources available and know how to use them. Especially at first, it is better to concentrate on “how do I look it up quickly” rather than trying to memorize individual commands.
Keep an eye on the updates and recent developments going on in the Linux software community, in particular as they pertain to the distribution you are using (see Resources). You will occasionally need to install or upgrade software as bugs and security problems are detected. You don't need to spend hours every day reading about Linux. One reasonable schedule is to spend at least an hour every 10 business days cruising the relevant web sites for recommended software updates and new tools that may help you get your work done. The kind and patient souls who read the newsgroups will thank you for reading about these updates before posting problems.
Once you have your system installed and set up to your liking, do not log in as root unless absolutely necessary. Again, this is an elementary rule that Linux gurus usually follow, but SOHO users need to be wary and avoid this pitfall. It's truly hard to cause a full system crash in Linux—unless you are foolishly mucking about while logged in as root.
Take the time to learn a little about the bash shell. Most Linux manuals have at least some introduction to bash and various shell commands, but a more comprehensive look may be in order. Knowing bash well can save you time. When tinkering with bash, remember point number one above: don't bother memorizing every command, but do keep your manual handy.
After you have learned a bit about the system, made reliable backups and are feeling comfortable with Linux, you may want to try compiling a custom kernel. This exercise will teach you a lot about the way Linux works and may make your machine run a little faster than the generic kernels shipped with most distributions. The guide published in Linux Journal's November 1997 “Kernel Korner” is one of the best concise guides to kernel compilation available. Read it, and if it seems to make sense, go for it. It's a fun and enlightening way to learn more about your system.
Trust Linux and the people behind it. It's a powerful, reliable tool for the small or home office. The thousands of developers worldwide who work on it have seen to that. After all, that's why we are migrating, right?
- My Childhood in a Cigar Box
- Papa's Got a Brand New NAS
- Applied Expert Systems, Inc.'s CleverView for TCP/IP on Linux
- Panther MPC, Inc.'s Panther Alpha
- Returning Values from Bash Functions
- Rogue Wave Software's TotalView for HPC and CodeDynamics
- Tech Tip: Really Simple HTTP Server with Python
- Simplenote, Simply Awesome!
- Debugging Democracy
- NethServer: Linux without All That Linux Stuff