Como executar como usuário logado em um script sudo (OSX)?

4

Existe uma maneira de alternar contextos como esse?

O script no meu caso específico é um script postinstall do instalador, que requer privilégios sudo apenas para algumas das tarefas e requer que o usuário conectado execute um LaunchAgent no final do script.

Se esse agente for iniciado com privilégios sudo, os caminhos para os logs e outros recursos específicos do usuário (colocados no diretório do usuário) ficarão confusos.

    
por Nikolay Tsenkov 10.07.2014 / 09:23

1 resposta

4

Isso é o que funcionou para mim:

USER_NAME=$(printf '%s' "${SUDO_USER:-$USER}")

sudo -u $USER_NAME <command-to-exec-in-nonroot-context>
    
por 10.07.2014 / 09:27