Can only start my server with root

From the youtube tutorials and from the wiki, you’re recommended to use a non-root user to start servers. root is a special user in Linux. When you create a server (and run the server) as root, the underlying files are owned by root. As you’d expect, files owned by root, the superuser, shouldn’t be able to be accessed indiscriminately by non-root users; this is why you cannot do anything as non-root.

To illustrate this a different way, would you want user bob to be able to open and change files in /root? Probably not, and either does Linux or MineOS.

So to rectify this, identify all the servers you created and change their ownership to your non-root user (or you can delete them). If you’re not sure what the paths of your server are, check the server status page.

Finally, you’d use the chown function. You’d do this as root (because the files are owned by root) and you would then give the permission to another user:

chown -R bob:bob /var/games/minecraft/servers/myserver
chown -R bob:bob /var/games/minecraft/archive/myserver
chown -R bob:bob /var/games/minecraft/backup/myserver

Alternatively, you could use this method:

cd /usr/games/minecraft
chown bob:bob /var/games/minecraft/servers/myserver
node ./mineos_console.js -s myserver sync_chown

The first is preferred because it more explicitly demonstrates what’s required to work; the latter is simply another way it might be done or scripted.