0

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.

Alex
  • 8,471
  • 26
  • 75
  • 99

2 Answers2

6

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.

EEAA
  • 109,363
  • 18
  • 175
  • 245
0

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.

Phil Miller
  • 1,755
  • 1
  • 12
  • 17