Do not fail on storage nodes if rsync of rings fails

This can mean that the ring-compute node is not accessible, that its
rsync service is not enabled or that the ring files are missing.

These errors can only happen if there's an error while applying the
ring-compute role on the ring-compute node, which means that the
proposal will fail to apply anyhow.

However, since the storage role is applied twice, including just before
the ring-compute role, if the ring-compute role fails to apply, then we
will hit this error and we will not be able to get the ring-compute role
re-applied. And therefore we will be stuck here.

For the same reason, we now only start the services if the relevant ring
file is present.

Part of https://bugzilla.novell.com/show_bug.cgi?id=861089

(cherry picked from commit 2aec25ec3212509fc75717a3e3d4a8b4736dc8d2)
Fail if storage node has no disk for swift

Currently, we do not say anything and people think the storage node will
do something while it's not true.

(cherry picked from commit 903f5bed7c981ed3126516d2c73217ef004138c8)
Merge pull request #210 from vuntz/roxy-sync

Add commits that were not pushed to stoney