Publicado por: Rafael Guedes | 9 setembro 2009

Shell Scripts: verificando se o usuário é root

Em algumas situações existe a necessidade do executor do script ser o usuário root. Esta dica irá mostrar como gerar um warning personalizado para que o usuário seja alertado sobre essa premissa de execução do script e finalizá-lo gerando um erro na saída.

A forma mais grotesca de realizar essa função seria alterando as permissões do executável para o modo octal 0700 por exemplo. Ao tentar a execução, o usuário comum iria receber uma mensagem de erro do sistema reportando permissão negada.

Mas existe uma forma muito mais fácil e elegante de realizar esta função via Shell Script. Um script básico ficaria da seguinte forma:

#!/bin/bash

## Variáveis que verificam o UID do usuário atual
## ( o UID do root é sempre zero , aí é que está o pulo
## do gato ) e o login do usuário corrente.

VERIFICA=`id -u`
USUARIOATUAL=`whoami`

## Condicional: Se o usuário não for root ( UID diferente de zero )
## então gera o alerta e finaliza o script com erro. Caso contrário,
## continua o script com os comandos que seguem.

if [ $VERIFICA != 0 ]; then
echo “Your user is ${USUARIOATUAL}. Need be root…”
exit 1
else
echo “You is root.”
fi


Responses

  1. Olá Rafael,

    a imagem usada por você para ilustrar o post é a mesma do nosso treinamento de Shell Script.

    Todo o conteúdo do nosso site está disponibilizado na licença Creative Commons Atribuição-Uso não-comercial-No Derivative Works 3.0 Brasil, o que significa que você é livre para usar essa imagem ou quaisquer outras que desejar no seu blog, desde que cite a autoria da foto e coloque um link de volta para o nosso site.

    Atenciosamente,
    Arlindo Pereira
    Analista de Segurança – Clavis Segurança da Informação

  2. Prezado Arlindo,

    Desculpe a morosidade no retorno. Irei retirar a imagem. Grato pela informação.

  3. Não precisava retirar, bastava colocar um link de volta.😉

    Um exemplo de citação de Creative Commons num dos sites que administro: http://www.seginfo.com.br/homem-se-infecta-com-virus-de-computador/

    []s


Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

Categorias

%d blogueiros gostam disto: