Is /sbin/init owned by root, or by some other user instead ?
Likely its owned by a non-root user, along with files like /bin/mount. Which means when they run (they have the SUID bit set) they run as non-root.
Example below. See how mount and mount.steve have the same contents but mount.steve is owned by steve. So mount.steve fails with the "only root can do that" because it's SUIDing to steve rather than root.
[root@localhost bin]# ls -l mount mount.steve -rwsr-xr-x. 1 root root 44208 Nov 27 2014 mount -rwsr-xr-x. 1 steve users 44208 Jun 30 14:11 mount.steve [root@localhost bin]# ./mount /foo /foo mount: mount point /foo does not exist [root@localhost bin]# ./mount.steve /foo /foo mount.steve: only root can do that (effective UID is 1000) [root@localhost bin]# (I'm new around here, didn't understand the whole comments vs answers thing, thanks for the coaching folks)