Como determinar se um aplicativo foi iniciado via aberto como root no Mac OS X?

0

No OS X, como posso determinar se um aplicativo iniciado por meio do comando open foi iniciado com permissões elevadas?

Eu tentei como exemplo sudo open http://www.google.com/ , mas o Activity Monitor não parece exibir informações mostrando que o processo Safari está sendo executado como root.

    
por Nathan Moinvaziri 20.07.2012 / 22:19

3 respostas

3

(Adicionando uma segunda resposta para a pergunta esclarecida)

Quando você usou sudo open http://google.com , o sistema executou open como root, mas open é realmente apenas um cliente para MacOS LaunchServices , que ainda está sendo executado como usuário conectado.

Na verdade, o Activity Monitor está mostrando a você que a instância do Safari foi aberta por sudo open http:/google.com não é executado como root, como o "Usuário" coluna está mostrando seu nome de usuário, não root .

Você pode, no entanto, invocar o Safari diretamente na linha de comando com sudo, by-pass serviços de lançamento:

$ sudo /Applications/Safari.app/Contents/MacOS/Safari http://google.com

Agora, no Activity Monitor, você pode confirmar que está sendo executado como root .

    
por 21.07.2012 / 07:02
0

Estou assumindo que você quer dizer "executando como root". Note que só porque você está rodando como root, não significa que você está rodando com a maior prioridade; nem usar o comando sudo significa necessariamente que o processo está sendo executado como root.

Mas essas duas ressalvas estão de lado, tente isso em um prompt de comando do Terminal:

$ ps aux | grep ^root

Para filtrar a lista de processos para aqueles que estão sendo executados como root. Ou até mesmo (dependendo da sua versão do Mac OS):

$ ps -u root
    
por 20.07.2012 / 22:36
0

Para ver um log do processo que foi executado usando sudo , você pode grep o system.log:

$ grep sudo /var/log/system.log

Você também pode usar o aplicativo Console. Selecione "system.log" na lista de registros e digite "sudo" na barra de pesquisa.

    
por 21.07.2012 / 01:16