As I was driving home tonite from dinner with Eric, I was thinking…what 10 things should every linux admin know. I am not going to qualify each one with the statement “in my opinion”…it is implied.
I came up with these:
1. Scripting
Every linux admin ought to know enough scripting to automate repetative tasks. You have 2 choices, learn Shell/Sed/Awk or Perl.
2. Vi(m)
Stop complaing. Every linux admin worth his salt ought to be able to use Vi (or alternatively ViM). It will be on every *NIX machine you ever log into, you don’t have to be a wiz at it, but you should have basic Vi editing skills.
3. Databases
You don’t have to be a DBA, but you should know enough to query a RDBMS from the command line to see how it is doing what it is doing. You should also know enough so that you can set up an application that uses a DB for the backend.
4. ssh (and redirects)
You should know how to use ssh, and redirects for tunneling other applications. Hopefully (unless there is a reason for it) the admin at the other end has every port closed but 22. At 2 am when you are remote from your boxes you will still be able to look at your LDAP server.
5. Keyboard shortcuts
Not just ones for the shell either. You should learn the keybindings for any application you use at least weekly. It will make you more efficent.
6. Compile C apps
You don’t have to know how to write C, but in the event that there is neither a README or an INSTALL file, you should know “./configure && make && make install”.
7. Look at logs
Before you utter a word upon failure of an application, look at the logs. Chances are the answer is right there waiting.
8. Generosity/Humility
If someone asks, tell them everything you know about a particular subject. Conversley, when in the company of someone who knows more than you, ask enough questions to learn what search terms will be needed later to learn about that subject.
9. Read
RTFM is some of the worst advice I have ever heard. Man pages are not for study they are for reference so you don’t have to hold all the switches and conf file locations and syntax in your head. Buy books, lots of them, and read them.
10. Open things
One of the things that helps me tackle tough problems is taking a really good look. Open the conf files, open the code and take a look. Sometimes a conf file comment is all you need to win through and make something work, don’t just fill in values and expect programs to start. If it’s not clear at first, that’s ok…it’s nothing staring at it till you cry won’t fix.
…think I missed one or got one wrong? That is what the comments are for :)