The simple commitment to share code is probably the single most powerful contributor to the
growth of the open source software movement in general, and Linux in particular. That commit-
ment has also encouraged involvement from the kind of people who are willing to contribute back
to that community in all kinds of ways. The willingness of Linus to incorporate code from others
in the Linux kernel has also been critical to the success of Linux.
The following sections characterize Linux and the communities that support it.
Features in Linux
If you have not used Linux before, you should expect a few things to be different from using other
operating systems. Here is a brief list of some Linux features that you might find cool:
No constant rebooting -- Uptime is valued as a matter of pride (remember, Linux and
other UNIX systems are most often used as servers, which are expected to, and do, stay
up 24/7/365). After the original installation, you can install or remove most software
without having to reboot your computer.
Start/stop services without interrupting others -- You can start and stop individual
services (such as Web, file, and e-mail services) without rebooting or even interrupting
the work of any other users or features of the computer. In other words, you should not
have to reboot your computer every time someone sneezes. (Installing a new kernel is
just about the only reason you need to reboot.)
Portable software -- You can usually change to another Linux, UNIX, or BSD system
and still use the exact same software! Most open source software projects were created to
run on any UNIX-like system and many also run on Windows systems, if you need them
to. If it won't run where you want it to, chances are that you, or someone you hire, can
port it to the computer you want. (Porting refers to modifying an application or driver so
it works in a different computer architecture or operating system.)
Downloadable applications -- If the applications you want are not delivered with your
version of Linux, you can often download and install them with a single command, using
tools such as apt, urpmi, and yum.
No settings hidden in code or registries -- Once you learn your way around Linux,
you'll find that (given the right permissions on your computer) most configuration is
done in plain text files that are easy to find and change. Because Linux is based on open-
ness, nothing is hidden from you. Even the source code, for GPL-covered software, is
available for your review.
Mature desktop -- The X Window System (providing the framework for your Linux
desktop) has been around longer than Microsoft Windows. The KDE and GNOME desk-
top environments provide graphical interfaces (windows, menus, icons, and so forth) that
rival those on Microsoft systems. Ease-of-use problems with Linux systems are rapidly
evaporating.
Freedom -- Linux, in its most basic form, has no corporate agenda or bottom line to
meet. You are free to choose the Linux distribution that suits you, look at the code that
runs the system, add and remove any software you like, and make your computer do
16
Linux First Steps
Part I