[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Como verificar se um compartilhamento nfs está ok?
From: |
Lawrence Waclawiak |
Subject: |
Re: [shell-script] Como verificar se um compartilhamento nfs está ok? |
Date: |
Sun, 07 Nov 2010 11:25:43 -0200 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.12) Gecko/20100915 Thunderbird/3.0.8 |
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