Why is Linux reporting “free” memory strangely?
I recently bought a cloud VPS (CentOS 5.8 x64) with 1024MB RAM from one of the hosting providers. It's managed and has whm/cpanel and stuff installed. The server was just set up for me yesterday so I haven't used it in any way other than logging in and performing 'free -m' to check out the RAM. The results got my attention:
total used free shared buffers cached Mem: 1024 886 137 0 24 272 -/+ buffers/cache: 588 435 Swap: 1023 0 1023
It's pretty appalling to see only 137MB RAM is free to be used by my websites that I haven't added any yet. So the 886MB used is all system overhead.
I re-booted the system and performed 'free -m' again and it's almost identical results.
My question is, should I worry about this?
I have another VPS with 1.5GB RAM from another provider currently with 20 websites or so. It's also managed with whm/cpanel and Apache, etc. It's not a busy one but moderately burdened. Yet, the 'free -m' results have always been very nice, with 1GB free RAM available every time I checked it. It assures me the system has enough RAM so that it doesn't tap on the swap space which would be a performance nightmare.
So is this normal for a brand new VPS to have so little free RAM even after a fresh reboot? Would I run into problems after adding 20 or so websites that are currently fine on a 512MB server (the $19.95 plan at Linode.com, with Apache, MySQL, PHP)?
Any insights will be greatly appreciated! Thanks!