Unix Sysadmin Aphorisms

This is a collection of Unix systems adminstration aphorisms. I decided to write and collect these to help ease the way for new sysadmins. As it turns out, some of these are good reminders for experienced admins, too, since I know I've forgotten the rule about making large files small with cat /dev/null > file when strapped for space.

My original inspiration for these is the huge collection of GO proverbs which help beginners remember strategic tips and guidelines of good play. Unfortunately, proverbs like "the monkey jump is worth eight points" aren't necessarily clear to the novice Go player, any more than "use cat /dev/null into a large file to free space" is clear to the beginning Unix admin. So, my second source of inspiration is the annotated version of the Ten Commandments for C Programmers, though I didn't want to go for the biblical tone. The wisdom contained in RFC-1925 can profitably be applied to Unix sysadmin as well. Note that the last one, 12, is a restatement of a quote by Antoine De Saint-Exupery about perfection in general.

When I first got the idea of collecting concise bits of Unix wisdom I of course sent out mail to various mailing lists I'm on. My description of the problem generated a lot of discussion and a lot of new proverb ideas. Many of those have been absorbed into this list, some unchanged. Most however have been edited by me for content or style. In particular, I try to make these things as aphoristic as possible. An aphorism should be short, concise and may quite possibly be a little odd in some way to make it memorable.

Many of these aphorisms do not currently meet my own expectations for an aphorism. Feel free to let me know if you can think of a more concise way to state any of them, or if you have suggestions for new ones. I'm also responsible for the commentaries, unless otherwise specified, and suggestions are welcome there as well.

Please note that the commentaries are for the most part my own work and opinions. Some Unix admins will certainly disagree with me on some points, though I'll try to point out where controversy exists.

Many thanks to the lisa-ht and uw-unix list participants who responded to my original, strange email about this topic with such gusto. Thanks also to Tim and Peter for an interesting discussion over Mojitos about the implications of this collection. All errors and deficiencies are of course my own.

The man page has an EXAMPLES section. Commentary

Do you really need perl for this problem? Commentary

Does the user think it's fixed? Commentary

Swap is three times real memory. Commentary

Don't rewrite cat -n Commentary

What have you changed? Whom did you tell? Commentary

What was the return code? Commentary

Where does your symbolic link point today? Commentary

Don't HUP RPC. Commentary

Users want to work, not to hear about Unix admin. Commentary

Who's using this computer right now? Commentary

A web browser is a user. Commentary

Linux puts everything somewhere else. Commentary

Backticks are fundamental to shell, poison to perl. Commentary

RPC treats every network interface like a computer Commentary

Does it really have to run as root? Commentary

Why are you still root? Commentary

It's not finished until you can close the rack door. Commentary

It's not finished until it's documented. Commentary

Documentation isn't done until someone else understands it. Commentary

security = 1/convenience Commentary

Friday afternoon is a good time not to change production systems. Commentary

Someone had this problem before. Commentary

Make sure you can go backward before you go forward. Commentary

Email alone is not communication. Commentary

There's no such thing as a temporary fix. Commentary

Renormalize, renormalize, renormalize. Commentary

Is it really your responsibility to fix this machine? Commentary

Your way of thinking isn't the only way of thinking. Commentary

cron is not a shell script tool. Commentary

Don't rm big files, cat them. Commentary

The best time to version control a config file is before you modify it. Commentary

Every config file has a history. Commentary

Think twice. Hit enter once. Commentary

666: permissions of the devil. Commentary

`t' is for sticky; `t' is for /tmp Commentary

When everything breaks, don't forget to take breaks. Commentary

Keystrokes kill. Automate. Commentary

Fess up. Commentary

Preserve precious permissions with cp -p. Commentary

New eyes have X-ray vision. Commentary

Just because you can, doesn't mean you should. Commentary

Know the problem before choosing the solution. Commentary

Sometimes it's just the sum of the parts. Commentary

kill -9 is the last resort, not the first Commentary

An unsolvable problem is really a fact. Commentary

Avoid TLAs. Commentary

Generated on Wed Dec 5 13:24:39 2007.