Upgrading through yum, and how I feel about KDE 4

The Fedora Project wiki says that it’s possible to update to a new release using the Yum package manager, but that it isn’t recommended.  Normally, I’d heed the advice of those wiser than me and do an upgrade from DVD media.  Unfortunately, when I set up my desktop/server at home, I didn’t think my partitions through very well, so I figured a live upgrade was my best shot at not nuking /home.  My first step was to do a full backup of everything onto an external drive.  Protip: 28GB tarballs are awful — find a better way to do your backups.

After a few deep breaths, I started following the instructions at http://fedoraproject.org/wiki/YumUpgradeFaq.  The instructions are well-written, and I was able to follow them with nearly no problem.  When I got to the actual upgrade part, I got a few dependency errors, related to the redhat-artwork package.  Seriously?  Artwork is the holdup?  Well redhat-artwork refused to be anything but what was currently installed, so I figured I’d just un-install it and see what happened.  Normally, dependency hell prevents you from installing software; this time it prevented me from un-installing the package.  Well that’s just plain unacceptable.  After trying a few different combinations of packages to uninstall, I finally surrendered with `rpm -e –nodeps redhat-artwork`.  From there on out, the upgrade went smoothly.

So what’s so great about going from Fedora 7 to Fedora 9?  Well the main driving force was the fact that Fedora 7 was no longer getting new software, so if I wanted yum to automagically get Firefox 3 and Wine 1.0, then I needed a newer release.  I considered going to 8 and then to 9, but that seemed like a whole lot of extra work.  As it turns out, it didn’t really matter (although that may have helped my redhat-artwork issue, but maybe not).  Apart from that, there are two things I noticed right off the bat.  First, sudo now gives a more verbose prompt:

[1016 bcotton@boone /var/log ]$ sudo echo "wow Check out that informative prompt."
[sudo] password for bcotton:
wow Check out that informative prompt.

Have you ever been typing along and then you go to sudo and you forget what you need to do?  Now you get a friendly reminder.  It’s the little things like that, you know?

Of course, there’s also the second thing I noticed:  KDE 4.  When KDE 4 was released a few months ago, it was rather loudly touted on the internets.  I was interested to try it, but not interested enough to install it by hand, so I was initially rather excited to see KDE 4 when I logged in. The excitement didn’t last very long.  I am not a fan.

KDE 4 represents a significant change from KDE 3, including a much more eye-candyish look.  It is certainly a snazzy desktop, but the default UI settings aren’t all that great.  The default K-menu requires several more clicks to get to the application you want.  Toolbar widgets can’t be dragged into place, you have to right-click, select “Start Move of $widget”, lead it where you want it to go with the mouse, and then right-click and select “Stop Move of $widget”.  There are also fewer widgets (which will probably change as more people start using and developing for KDE 4), but it does support OS X widgets (at least the HTML ones).  It also seems to be less configurable than KDE 3.  This is apparently on purpose, since the code base isn’t as mature, so hopefully future releases will improve things.  I’m not displeased enough to switch to Gnome, but this will take some getting used to.

Reading is a basic tool in the living of a good life

The title is a quote from Joseph Addison, according to the good folks at the Richmond Public Schools.  Addison was a 17th and 18th century poet, but were he around today, he might have said it is a basic tool in being a good sysadmin.  If you don’t spend a good portion of your work week reading, you’re either doing it wrong or you’re overworked.  So what should you read?  Why, a little bit of everything, of course.

Each morning, I read through my log reports.  I get a lot of important information from a LogWatch report generated by my central log server.  I can see who logged in from where, and where failed logins (read: SSH attacks) came from.  A list of packages that got updated is given, as well as miscellaneous messages that I might want to know about.  Of course, I could look at the report for each individual host, but a centralized server makes life much easier.

Keeping up on the news is important, too.  Technology news is important too, but general news of the world.  Why?  Well, because I like to know what’s going on.  I guess you could do without it, but why?  Fark.com, Slashdot, and Reddit are all good places to get both nerdy and non-nerdy information, as well as discussion by people who (sometimes!) can bring more information to the table than the article itself will provide.

Since this is a blog, I am morally required to mention that blogs are absolutely necessary for sysadmins.  There’s probably a blog or several from the vendor of your OS of choice, as well as your critical applications. Plenty of other sites have blogs, too, but what may be the most interesting are the personal blogs of your peers.  When you’re a new sysadmin, you probably don’t know much outside of your own environment.  Reading what others are doing is a quick and easy way to help expand your horizons.  I have to mention specifically Matt Simmons’ Standalone Sysadmin blog.  I found it by accident a few weeks ago, and have since become an avid reader.  Having worked in academia all of my professional life, I often don’t see things from the perspective of someone working in the private sector.

There’s another source of information that can be very helpful.  There’s probably a building in your county that your taxes fund and it’s full of dead trees.  That’s right: your public library.  I’ve been visiting the library fairly regularly to check out books for recreational reading.  Today I had a sudden revelation: the library has technical books, too!  So I’ve decided to check out a technical book when I visit.  I’d like to read at least two per month, in order to expand and deepen my knowledge.

So what’s the point of all this?  READ!

Flavor of Love

One of the nice things about Linux is that there are so many different flavors to chose from.  Although you can customize it to meet your exact needs, there a good chance that someone has already made a flavor to suit your tastes.  Which flavor you choose is largely a matter of what you’re trying to do, and your favorite way to do it.  At my workplace, we’re a Red Hat shop.  I happen to be fond of the Red Hat products so that works well for me.  However, I find myself facing a bit of a decision.

In 2003 or 2004, whenever my predecessor set up our Linux environment, he put Fedora Core 1 on the workstations and Red Hat Enterprise Linux 3 and 4 on the servers and the larger desktops (the Dell Precision line can be rather finnicky).  I took my job in September 2006, with things largely unchanged.  Since I work at a University, making major changes during the school year is considered bad form, so I had to wait until summer 2007 to begin doing upgrades.  The downside is that FC1 went out of support in the late winter of 2007, but the good news is that I got nearly a full year to re-build software packages and test configurations.  My fellow sysadmin and I, at the encouragement of my boss, decided to put RHEL4 on all of the machines to simplify support.

In the past year, RHEL has proven itself to be a very stable OS, and Red Hat has been quick to release security fixes.  However, there have been several occasions where an updated application has been needed, but it had dependencies that could not be met via up2date.  For example, the Java web plugin for the x64 architecture only works on Firefox 2+.  As of this writing, RHEL4 still uses Firefox 1.5.0.12 (with security patches worked in by Red Hat).  That, at least, was a simple matter of grabbing the RPM.  Of course, now we’re responsible for making sure the subsequent updates get installed by hand.  Even worse is when a package needs a newer glibc than what is provided.  Here’s a hint friends:  if it requires a newer glibc than your distribution provides, don’t bother!

Next summer, I plan to upgrade again.  But what do I put on the workstations?  RHEL is a solid platform, and works exceptionally well in a server environment.  If all you want to do at your desk is check e-mail, surf the web, and type up TPS reports, RHEL provides a good experience to do that.  If you’re trying to run the latest version of your research applications, I’m not sold that it’s the best solution.  There are advantages and disadvantages to choosing RHEL vs Fedora for the desktop

I run Fedora on my desktop/server at home, and it performs like a champ.  It’s not that Fedora crashes with any regularity, but it isn’t necessarily designed for stability.  RHEL is pretty thoroughly tested, so you can pretty much be guaranteed that when a package gets upgraded, it won’t break things.  Fedora gets you newer packages much quicker, but there’s no promises that foo-3.7 won’t break bar-4.2  Fedora also has new releases more frequently than RHEL, and has a much shorter support life (roughly 13 months versus 5 years) – which forces you to update more often.  Of course, if your software’s dependencies necessitate an upgrade regularly, that’s a moot point.

There’s also the issue of package security.  With RHEL, you’re getting your packages from Red Hat’s servers.  With Fedora, you’re generally getting your packages from mirrors.  Generally, you can consider that to be safe.  However, a story featured on Slashdot today shows that it’s not a guarantee.  Is that a reason to forsake Fedora?  Unless your machines contain hyper-sensitive information, the answer is no.

Actually, the second sentence in the previous paragraph isn’t necessarily true (apart from the fact that you can set up your own proxy for the RHN servers).  Beginning in RHEL 5, the up2date package manager is gone, in favor of yum.  Personally, I think yum is better than up2date (although Debian’s apt may be the best), but that wasn’t the reason Red Hat made the switch.  What yum gives you, though, is the ability to add custom repositories.  Which means you can get outside packages easily, and keep them up to date without having to install the updates by hand every time.  It also means that you can set up your own repository for your local custom software.  You have no idea how excited I am about the idea of using rpms in a yum repository to install software on our machines instead of using rdist.

The differences in configuration between Fedora and RHEL are minor, but generally sufficient enough that you’ll need separate configuration trees.  Does adding another OS to your environment cause you to reach for your Rolaids, or can you comfortably absorb it?  For my own workplace, the latter is the case.  So what have I decided?  I have nine more months until next summer, so I’ll punt for now. 🙂