Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am building a server that has all the libraries (of course, they shouldn't take up Gigs of data). So that I can clone it, and will have it all.

This server is mainly for web/crawling/databases stuff.

What are some Absolutely must-have libraries for future-use?

libjpeg? java-jdk? Can someone please list them off. I want these libraries installed even if I don't use it. But, I can use it in the future.

share|improve this question
IMHO the "for YUM" in your question is misleading. – knweiss Nov 1 '09 at 9:22
up vote 7 down vote accepted

So this is sort of an answer, but probably not what you want to hear.

Don't do it. It may seem appealing at first to have a server "golden image" that "has it all". You don't want to go down that road. Here are a few reasons why:

  1. Each library you install provides another possible avenue for security breaches. Each time you clone this server, you'll need to update the image with all the recent security patches. If you have a bazillion libraries on the server, this process will take longer and be much more involved than it needs to be (think inter-library dependency resolution).
  2. It's nearly impossible to forsee what libraries you'll need for "Project X" you'll be starting in a couple years.
  3. There's a reason your distro has a decent package manager. Use it! If you need libfoo at some point in the future, you're a single command and about 15 seconds away from having it installed.

Are those three enough to convince you to not do this? If not, I can probably come up with several more. Honestly, I can see and understand your reasoning for wanting to do this. In practice, though, it's a bad idea.

share|improve this answer

To expand on ErikA's answer, you could combine reasonable use of your distribution's package management with a pull-based configuration tool like Puppet, cfengine, or bcfg2. This would make it easier to keep all of your systems in an identical configuration, and see when and why they aren't.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.