shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Como verificar se um compartilhamento nfs está ok?


From: Enio Onodera
Subject: Re: [shell-script] Como verificar se um compartilhamento nfs está ok?
Date: Sun, 7 Nov 2010 08:01:40 -0800 (PST)

Aparentemente está tudo ok. Só estou respondendo para dar uma sugestão... não 
sei se é viável e necessário no seu caso, mas eu testaria a se a máquina está 
ativa na rede (ping, por exemplo) e se a porta do serviço está aberta antes de 
montar ou desmontar.Claro que faria isso se não existisse nada protegendo 
contra esses testes.
Abs,Enio Onodera

--- Em dom, 7/11/10, Lawrence Waclawiak <address@hidden> escreveu:

De: Lawrence Waclawiak <address@hidden>
Assunto: Re: [shell-script] Como verificar se um compartilhamento nfs está ok?
Para: address@hidden
Data: Domingo, 7 de Novembro de 2010, 11:25















 
 



  


    
      
      
      O que pedi é sim ajuda com shell script e não com administração de NFS.

Fazemos scripts para criar soluções e isso inclui sim administrar 

serviços como o NFS e outros, desde que eu não venha aqui e pergunte 

"Como configuro o servidor NFS para que..." estarei falando de script.

Como a MODERAÇÃO interpretou de forma errônea e já se passou um certo 

tempo consegui uma solução que segue abaixo para conhecimento dos demais.



funcao(){

     touch "$1"/$Arquivo >> /dev/null&

     sleep 5

     if ! ps -p "$!" >> /dev/null;then

         rm -f "$1"/$Arquivo

         return 0

     else

         kill - 9 "$!" >> /dev/null

         return 1

     fi

}



main(){

     if funcao "/ponto/de/montagem";then

         echo "Permissões de escrita garantidas"

     else

         echo "Sem permissão de escrita"

     fi

}



main



Dessa forma dentro da função MAIN disparo a função "funcao" testando seu 

retorno com o IF.

Na função "funcao" disparo o comando touch em segundo plano tentando 

criar um arquivo no compartilhamento NFS,

aguardo 5 segundos e verifico se o processo do touch ainda está vivo 

utilizando a variável especial $! que contém o PID do ultimo job 

disparado em segundo plano, nesse caso o touch.

Se o processo não existir é porque ele não travou e completou 

corretamente assim removo o arquivo criado e retorno 0(Zero), se ele 

existir mato ele e retorno 1(Um).

Ou seja, resolvido utilizando shell script, não modifiquei nada no 

servidor NFS.



Essa solução me pareceu funcionar corretamente, porém peço novamente a 

avaliação dos colegas para saber se não deixei nenhum "furo" nessa solução.



Grato,

Lawrence Waclawiak





    
     

    
    


 



  











      

[As partes desta mensagem que não continham texto foram removidas]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]