Como executar um programa com direitos sudo, mas sem o contexto root?

Como executar um programa com direitos sudo, mas sem o contexto root?

Quero iniciar meu IntelliJ IDEA com direitos privilegiados. Isso porque ao iniciar minha Aplicação dentro do IDE ela inicia um servidor SFTP. Isso só funciona se eu tiver permissão para fazê-lo.

A abordagem até agora foi iniciar o programa IntelliJ com sudo. A inconveniência aqui foi que o IntelliJ iniciou um contexto de configuração totalmente novo que agora está no rootdiretório. Portanto, tenho que começar com uma configuração de usuário em branco/nova do IDE (pode ser alterada facilmente, mas esse não é o ponto) e também preciso inserir meu código de licença novamente.

Existe uma maneira de simplesmente executar um programa sem realmente agir como root, mas ainda agindo como o usuário logado que sou?

Responder1

Eu não executaria um IDE como root. Isso é causar muitos problemas se algo der errado.

Em vez disso, conceda a si mesmo o acesso sudo correto e envolva o item que precisa de acesso root em um script.

Por exemplo, para executar acme_sftp_server como root, crie um script

#!/bin/bash
sudo acme_sftp_server

Em seguida, conceda-se o privilégio sudo para executar acme_sftp_server por meio do sudo sem uma senha.

Em seguida, invoque seu script, não o servidor, por meio do IntelliJ

informação relacionada