cambiar el usuario dentro de la secuencia de commands de bash

Tengo un script bash simple que funciona muy bien como un usuario regular. Cuando se ejecuta desde postfix, se ejecuta como nobody: nobody que evita que muchos commands funcionen.

¿Es posible que el script cambie a otra count de usuario mientras se ejecuta, para permitir que estos otros progtwigs se ejecuten?

Gracias

Tendrá que configurar sudo para que pueda ejecutar un command específico como nobody que se ejecute como otro usuario.

Normalmente, algo así como (en su file de sudoers ):

 nobody ALL=(userTheScriptShouldRunAs) NOPASSWD: /home/userTheScriptShouldRunAs/test.sh 

A continuación, obtenga el script para ejecutar:

 sudo -u userTheScriptShouldRunAs /home/userTheScriptShouldRunAs/test.sh 

Puede configurar los permissions de un progtwig con el bit setuid :

chown usertorunas nombre de file

chmod ug + s nombre de file

Esto lo hará funcionar como el usuario que posee el file.

Sin embargo, como @Jay me recordó, no funciona para los scripts. Para ejecutar un script como un usuario diferente que necesita para hacer un pequeño progtwig como se explica aquí que puede ser setuid, y llama a su script.