Como posso o dtrace executar o comando rastreado com privilégios não raiz?

OS X não possui Linuxstrace, mas temdtrace que deveria ser muito melhor.

No entanto, sinto falta da capacidade de fazer rastreamento simples em comandos individuais. Por exemplo, no Linux eu posso escreverstrace -f gcc hello.c caputre todas as chamadas do sistema, o que me dá a lista detudo os nomes de arquivos necessários para o compilador compilar meu programa (o excelentememorizar script é construído sobre esse truque)

Quero portar memoize no mac, então preciso de algum tipo destrace. O que eu realmente preciso é a lista de arquivosgcc lê e escreve, então o que eu preciso é maistruss. Com certeza posso dizerdtruss -f gcc hello.c e obter a mesma funcionalidade, mas o compilador é executado com privilégios de root, o que é obviamente indesejável (além do enorme risco à segurança, um problema é que oa.out agora o arquivo pertence à raiz :-)

Então eu tenteidtruss -f sudo -u myusername gcc hello.c, mas isso parece um pouco errado e não funciona de qualquer maneira (nãoa.out arquivo todo esse tempo, não sei por que)

Toda essa longa história tenta motivar minha pergunta original:como eu consigodtrace executar meu comando com privilégios normais de usuário, assim comostrace faz no linux?

Edit: parece que eu não sou o único perguntando como fazer isso: pergunta# 1204256 é praticamente o mesmo que o meu (e tem a mesma resposta subótima do sudo :-)

questionAnswers(7)

yourAnswerToTheQuestion