Redhat and RPM

In the interest of learning more about Redhat Linux, I’m doing a little poking around the one Redhat server we have in production. This machine is a dedicated managed server running Redhat Enterprise Linux 3. It was installed by someone here who doesn’t have a very good understanding of Linux or of configuring servers and, as a result, has the entire basic distribution installed, including X, KDE, Gnome, and a whole slew of stuff that will never be used on a server. It has plenty of disk space, so this wouldn’t be a problem, except that every time I update the system I have to take the time to download updates for all this software that we don’t need.

So I want to remove it all. When I try to uninstall any given application, Redhat’s package manager, RPM, is smart enough to tell me if other installed software depends on that package to run. It’s not, however, smart enough to let me automatically remove any of this other software at the same time. My only option is to make a list of these dependencies and remove them all, one at a time, also noting and removing their dependencies in turn. This would take hours, if not days. If I were willing to take the time to do it, that is, which I’m not.

I thought I was just missing an option somewhere, as there’s no way any sane package manager would not have this functionality (for example, what I want to do is trivial on a Debian system). But after spending a little time googling it seems it’s true, there’s no way to do this. The best I can do is tell RPM to ignore the dependencies and remove the specified application anyway, but I’ll still have to do this individually for each and every package I want to remove.