Pular para o conteúdo

Executar comando que exija root como usuário comum

Dica publicada em Linux / Introdução
Mauriciodez Mauriciodez
Hits: 10.277 Categoria: Linux Subcategoria: Introdução
  • Indicar
  • Impressora
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Executar comando que exija root como usuário comum

Introdução

Pessoas, às vezes necessitamos executar um comando em um script com permissões de root, mas não queremos ter que ficar digitando senhas ou queremos que nosso script rode de modo "quiet".

Nessa dica vou mostrar como que, com um pouco de engenhosidade, podemos executar comandos ROOT como usuário comum.

Uma forma bastante direta de se fazer isso, seria alterando as permissões do comando diretamente, o que obviamente não é recomendável, pois geraríamos uma falha enorme de segurança e alguns bugs.

Sendo assim, qual seria a solução ???

Taí o pulo do gato >>> link simbólico.

Como assim, link simbólico?

Vou mostrar, como exemplo vou usar o DPKG.

Procedimento

1. Vamos criar o link simbólico para o DPKG e vamos chama-lo de 'dpkg2' (pode-se usar qualquer nome):

# ln -s /bin/dpkg /bin/dpkg2

NOTA: o link simbólico foi criado em /bin, pois essa é a pasta padrão dos "executáveis". Também poderia ter sido criado o link em outro diretório (por exemplo, em /home), mas para executa-lo teríamos que usar o caminho dele e não só o comando.

EX: /home/dpkg2 ou ~/dpkg2

2. Alteramos a permissão de 'dpkg2':

# chmod 4777 /bin/dpkg2

Prontinho. Agora temos um 'dpkg' (modo gambiarra) para colocar no script com permissões de usuário comum, sem mexer no 'dpkg2' original, testem aí.

dpkg2 -i <pacote.deb>

Para remover o link simbólico que criamos:

# rm -rvf /bin/dpkg2


É isso aí pessoas, abraços e até a próxima.

Maurício G. Paiva

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Uget funcional no browser

Instalar programas no Windows pela rede Samba

Erro ao acessar WhatsApp Web no Debian: "error while loading shared libraries: libXss.so.1" [Resolvido]

Firefox não abre link do Thunderbird [Resolvido]

Marcar linhas no Geany

Splash do Grub: Como desabilitar a logotipo que aparece durante o boot do Ubuntu

Formatando 20 máquinas Windows em 5 horas com um live-CD do Ubuntu

Configuração do ddclient no Debian

Conectando-se à internet usando AIKO82D VIVO/MG no Ubuntu Linux 8.10 via NetwokManager

Add-ons para o Basic Linux

#1 Comentário enviado por msoliver em 12/12/2018 - 22:13h
Gostei!!!
Interessante.

Contribuir com comentário

Entre na sua conta para comentar.