Archive for November, 2006

inodes, or “Why is my disk full, but it isn’t?” »

System administrators need a solid background in the fundamentals of operating systems. Unfortunately, good defaults and better tools mask the need for that until something breaks. On top of that there is very little recognition of the theory behind how operating systems work and its use in practical, day-to-day system administration.

This morning my team was faced with a puzzling problem. A file system which had 34% free space was no longer allowing new files to be created in it, but pre-existing files were still being appended to? How does that work? The junior admin who was the first responder was puzzled. Could it be a permission problem? Maybe a reboot will fix it…

Inodes are one of those things a system administrator might go his whole life not worrying about. More seasoned UNIX admins will remember playing tricks with the number of inodes to squeeze more space from a small disk, not to mention the whole hard link thing. It is somewhat depressing to have to explain hard links, but in the last year I’ve done it at least twice. The gargantuan, inexpensive disks available now make hard links somewhat irrelevant, and it seems that symbolic links just make more sense to people. I agree, for what it’s worth. The symbolic link’s arrow says precisely what’s going on.

Operating systems also have much better defaults now, so creating inodes just happens magically. Heck, even the default output from ‘df’ does not have inode counts, at least in Linux. There just isn’t anything to force the issue with new system administrators, so they don’t even know they exist until they are forced to. And the forcing is usually under pressure.

File system concepts appear first at the “Junior System Administrator” level of the SAGE “Job Descriptions for System Administrators.” It lists as a required skill:

Fundamental understanding of an operating system; for example, understands job control, soft and hard links or shortcuts, distinctions between the kernel and the user environment.

I was fortunate that my educational experience took me through a computer science program that teaches a solid operating systems course at the undergraduate level. Many of my colleagues have picked up system administration out of other careers, or through degree programs that do not require, or have, an operating systems course. Looking at MIT, for example, their course that teaches operating system fundamentals is 6.828, which is graduate-level.

Looking through the SAGE “Recommended Reading” list I see nothing that strikes me as providing any fundamental knowledge of operating systems. One book is described as “provides a clear, concise, practical guide to the real-world issues that anyone responsible for a Unix system faces daily.” To move from junior system administrator to senior system administrator requires less practical and more theory, though. Especially when it comes to such “practical” exercises like tuning:

A solid understanding of an operating system; understands paging and swapping, inter-process communications, devices and what device drivers do, filesystem concepts (inode, clustering, logical partitions), can use performance analysis to tune systems.

Where does a system administrator get the knowledge to do these things?

I do not have an answer for this, though I’ve been searching all day for a good guide to these things. All I know is that the best system administrators know this stuff, and they know it because they have to. I know that I have a book, Operating System Concepts, on a shelf behind me that I read when I was a novice system administrator. I still use that when I need a good way to explain what is stored in an inode, how process scheduling algorithms work, or a good description of semaphores. If I had to identify one book that has been instrumental to my work as a system administrator it would be that one. I have never seen a book like it in a recommended reading list for system administrators. It needs to be.

This morning, it took a senior system administrator to run “df -i” and fix a problem. Concurrently, one junior admin saw the mystery of inodes revealed to him. I just wish he, and so many others, would have known it to begin with.

[tags]lopsa, sage, sysadmin[/tags]

links for 2006-11-10 »

Leagues of System Administrators »

When I think of system administration I think of the folks I just spent three days with.

LOPSA’s Phoenix Sysadmin Days was fun. LOPSA is the “League of Professional System Administrators.” The gathering in Phoenix was their first conference-style gathering since they formed. I was asked to do a presentation on virtualization for it. I hadn’t really done a presentation of that magnitude before, and I have to say my audience was quite forgiving. :-) Thanks guys! It was interesting to get a message from my friend Nate, who caught Chris St. Pierre’s blog entry on the topic. Thanks for the press, Chris.

I’m hoping that in the next year I can continue to be involved in LOPSA, especially as they continue to hold “sysadmin days” around the country. If you are a system administrator you should definitely consider joining. LOPSA isn’t a technical organization, per se, but instead dedicated to advancing the profession. For instance, the talks given over the last two days weren’t intended to be “how to” types of talk, but instead share strategies and discuss higher-level topics (like professionalism). We can all handle the “how” of our jobs, but it’s the “why” that needs more discussion.

I have quite a few notes from the last couple of days, but since I’ve moved almost 2000 miles since I woke up this morning I’m going to get some sleep first. :-)

links for 2006-11-08 »

links for 2006-11-07 »

links for 2006-11-05 »

links for 2006-11-04 »

General Rambling »

  • 2004 J. Lohr Estates Seven Oaks Cabernet Sauvignon is pretty good. I’m trying to keep better track of the wines I like when I stumble across them.
  • Along the lines of keeping track of personal information better, I started a wiki for myself. I’m using the free personal license for Confluence right now. I’m toying with the idea of doing a wiki for my extended family to capture some of the information that is spread fairly unevenly around the family members (birthdays, etc.).
  • If you’re in the Madison, WI area Strollers Theatre’s Richard III opened at the Bartell Theatre last night, and is getting good reviews.
  • I was a total dumbass one week ago today and wasn’t thinking as I ran some random attachment that was in a spam message. I ended up rebuilding my PC to escape all the unremovable spyware, which sucks because I was going to rebuild when Vista ships in 30 days. However, it did get me prepared to rebuild again, including finding all my media and serial numbers for stuff.

    So what does a sysadmin like me use for apps? Adobe Photoshop, Adobe Acrobat Professional, Agent Ransack (for desktop search), Hummingbird Exceed, Apple iTunes, Sun Java J2SE 5.0, JetBrains Omea Pro, Microsoft Excel, Word, Project, PowerPoint, and Visio, Microsoft Streets & Trips, Mozilla Firefox, Ahead Nero, Psi, Symantec Antivirus, Van Dyke SecureCRT, Van Dyke SecureFX, VMware VI3 client, and WinRAR.
  • I spent some time this week debugging VMware/RHEL problems. One of the problems we’ve been having is ext3 journal aborts on our RHEL 4 VMs. It looks like Tom Sightler figured it out. This is why OSS rules. Thanks Tom!
  • I’m speaking at LOPSA’s Phoenix SysAdmin Days on Monday. I’m talking for three hours about virtualization (probably more like two hours and then open discussion, Q&A, etc.). My presentations generally try to follow Guy Kawasaki’s 10/20/30 rule: 10 slides, 20 minutes, 30 point font. This might be interesting in that regard, as I’m down to 70 slides. I’m a little nervous about it because it’s the biggest talk I’ve given. We’ll see how it goes.