Run command as not-root
Hi everyone
At work, I have to run a command in an AWS instance. In that particular instance only exists the root user. The command should not be executed with root privileges (it executes mpirun, which is not recommended to run as sudo or the machine might break), so I was wondering if there is a way to block or disable the sudo privileges while the command is running. As mentioned, the only user existing there is root, so I suppose “sudo -u” is not an option.
Does anyone know how to do it? Thanks in advance!
Use root to create new user, then run app as new user.
@astray yeah, that could be an option, but if more users exist in that machine then other processes might fail as that instance is part of a bigger cluster that has several processes running. It might not be a big deal, but checking that may still need some work. I’d prefer a way to do it without creating new users, if it exists
If a different user doesn’t exist then you obviously can’t run the command as that different user. The only solution here is to create a new user account.
Also your image is improperly configured which is something you should fix first.
@elscallr I agree about the instance configuration, fixing that is the real solution
My question was not about running something as another user, but about hiding the superadmin privileges from a single command I’d execute without switching users. However it is clear that something like that doesn’t exist so I’ll do the right thing and set everything to work with a new user
You’ll thank yourself for it later. Things like this take a little longer up front but putting them off has a way of making you have to work around it again and again until, when you get around to correcting it, it takes far more time to undo the workarounds than it would’ve taken to correct it the first time.