Orienting Yourself to Debian
Debian is a little different from other distributions. Even if you're
familiar with Linux in other distributions, there are things you
should know about Debian to help you to keep your system in a good,
clean state. This chapter contains material to help you get oriented;
it is not intended to be a tutorial for how to use Debian, but just a
very brief glimpse of the system for the very rushed.
Debian Packaging System
The most important concept to grasp is the Debian packaging system.
In essence, large parts of your system should be considered under the
control of the packaging system. These include:
/usr (excluding /usr/local)
/var (you could make
/var/local and be safe in there)
/bin
/sbin
/lib
For instance, if you replace /usr/bin/perl, that
will work, but then if you upgrade your perl
package, the file you put there will be replaced. Experts can get
around this by putting packages on ``hold'' in
aptitude.
One of the best installation methods is apt. You can use the command
line version apt-get or full-screen text version
aptitude. Note apt will also let you merge
main, contrib, and non-free so you can have export-restricted packages
as well as standard versions.
Application Version Management
Alternative versions of applications are managed by update-alternatives. If
you are maintaining multiple versions of your applications, read the
update-alternatives man page.
Cron Job Management
Any jobs under the purview of the system administrator should be in
/etc, since they are configuration files. If you
have a root cron job for daily, weekly, or nightly runs, put them in
/etc/cron.{daily,weekly,monthly}. These are
invoked from /etc/crontab, and will run in
alphabetic order, which serializes them.
On the other hand, if you have a cron job that (a) needs to run as a
special user, or (b) needs to run at a special time or frequency, you
can use either /etc/crontab, or, better yet,
/etc/cron.d/whatever. These particular files
also have an extra field that allows you to stipulate the user under
which the cron job runs.
In either case, you just edit the files and cron will notice them
automatically. There is no need to run a special command. For more
information see cron(8), crontab(5), and
/usr/share/doc/cron/README.Debian.