Eliminar/deshacer privilegios de sudo en un archivo .py que se ejecuta dentro de un programa que se ejecuta desde privilegios de sudo

Eliminar/deshacer privilegios de sudo en un archivo .py que se ejecuta dentro de un programa que se ejecuta desde privilegios de sudo

Necesito ejecutar un programa desde privilegios sudo y estoy ejecutando .pyun archivo dentro del programa. Entonces, cuando mi programa se ejecuta sudo, automáticamente llama/ejecuta el .pyarchivo con sudo. Estoy ejecutando un archivo como

./myFile.py arg1 arg2

Mi requisito es que mi programa deba ejecutarse, sudopero cuando ejecuto/llamo .pyun archivo dentro del programa, debería ejecutarse con privilegios normales (sin sudo).

¿Cómo debo proceder?

Respuesta1

Inicie su script Python dentro de su programa con

su -c '<your_python_script>' - <your_user_name>

Ejemplos

$ sudo su -
$ whoami
root
$ su -c 'whoami' - aboettger
aboettger

o como script con el nombrefoo

#!/bin/bash
whoami
su -c 'whoami' - aboettger

exit 0

salida de ejemplo

sudo ./foo
root
aboettger

información relacionada