Solución 1:
yo uso su - targetuser -s /bin/bash
de una cáscara de raíz.
Para la ejecución directa de comandos, use -c
:
su - targetuser -s /bin/bash -c "/bin/echo hello world"
Solución 2:
Usa sudo. Esto funcionará incluso si el usuario no tiene un shell real.