root
is root
. root
is for all intents and purposes God on that box; all seeing, all knowing and can do whatever s/he likes.
Depending on what you are trying to achieve however, a similar effect may be able to be produced by adding the regular user accounts to the root
group combined with a very restrictive whitelist in sudoers
. Be very aware of what you add to that whitelist though, as @dresende points out there is an almost infinite amount of ways to get a shell out of sudo if you aren't careful. Once you have a shell, you can do whatever you like.
Be aware though, that someone somewhere will need access to the root
account. You can set up the ability to install and manage software or all sorts of things, but I can almost guarantee you that at some point someone will need something chown
d, or even just chmod
ed while they don't have permission to do so normally.
Also, if you have network services such as a webserver which has access to each users files, then you end up with another attack vector for the other people sharing this VPS. The configuration as it is now doesn't allow access, but if the configuration is able to be tweaked by these other users... well, I'm sure you can see where that will head.
Beyond that, there's plenty of system configuration files which are shell scripts. Shell scripts can be modified to do stuff beyond configure services. This is the point, but also a potential weakpoint in a system like you propose. cp -a /home/user1 /home/user2/user1-home
would be devastating in your scheme, and could be inserted, run and deleted without anyone noticing. There are plenty of ways for people to be malicious if that's what they are out to do, with very little slack given.
While I appreciate what you are trying to achieve, from a practical point of view it usually doesn't make sense to have a setup where absolutely no-one has root access. It almost always comes down to a matter of trust and privacy. Most sysadmins will respect peoples privacy. If for whatever reason you can't trust each other, or there is actual sensitive and/or confidential (not just stuff you'd rather people didn't see) information in play, then perhaps you can find a third party to administer the server, or perhaps a shared server is just not the right idea.