Como executar aplicativos GUI como root no Mac OS X

Anonim

Aqueles familiarizados com a linha de comando sabem que executar coisas com privilégios de superusuário geralmente é apenas uma questão de usar o comando sudo. Isso ainda é verdade com o lançamento de aplicativos GUI no OS X com privilégios de root, mas não é apenas uma questão de preceder o sudo ao comando aberto útil, porque 'abrir' inicia aplicativos como o usuário original, com ou sem sudo. Em vez disso, a solução é usar sudo apontando diretamente para o executável contido em um determinado arquivo de pacote de aplicativos.

Iniciando OS X GUI Apps como usuário root

A sintaxe do comando é a seguinte:

sudo /Path/To/Application/ApplicationName.app/Path/To/Executable

Na maioria dos casos, serão aplicativos armazenados no diretório /Applications/, e o executável é quase sempre armazenado em Package/Contents/MacOS/ como qualquer que seja o nome do aplicativo:

sudo /Applications/ApplicationName.app/Contents/MacOS/ApplicationName

Por exemplo, este comando executa o conhecido aplicativo TextEdit como root:

sudo /Applications/TextEdit.app/Contents/MacOS/TextEdit

Para iniciar o TextEdit como um aplicativo em segundo plano, o que significa que ele não fechará se você fechar a janela do terminal, aplique o sinalizador -b ao sudo: sudo -b /Applications/TextEdit .app/Contents/MacOS/TextEdit

Você pode confirmar se o aplicativo está sendo executado como root usando o comando ps com grep, novamente usando o TextEdit como exemplo:

ps au|grep TextEdit

Como alternativa, você pode olhar para o Monitor de atividades do aplicativo de gerenciamento de processos do OS X e encontrar o aplicativo em execução como usuário 'root', conforme demonstrado na captura de tela acima e no pequeno vídeo abaixo:

Se você pretende executar um aplicativo específico com frequência como root, considere colocar um alias em .bash_profile para encurtar a string de comando.

Apesar de executar como root, nem todos os arquivos do sistema podem ser modificados e alguns podem ser marcados como “Bloqueados” quando abertos em alguns aplicativos como o TextEdit. Esse problema geralmente pode ser resolvido ativando o usuário root, caso ainda não o tenha feito, mas nem todos os aplicativos terão essa limitação.No entanto, para certas tarefas, como editar o arquivo hosts, é melhor usar a linha de comando e um editor baseado em texto ou usar um aplicativo como BBEdit ou TextWrangler.

Como executar aplicativos GUI como root no Mac OS X