Criar servidor, montar cliente e verificar montagens no NFS (Gentoo)

Publicado por Giuliano C. Domingues 31/08/2006

[ Hits: 6.868 ]

Download nfserv




Este script cria servidor NFS, verifica servidores montados, monta cliente NFS. Testado apenas no Gentoo.

  



Esconder código-fonte

#!/bin/bash
#set -x
   clear
   echo ""
echo -e "                                               {FONTE}33[1;34m***************************************************************"
echo -e "                                               {FONTE}33[1;34m**    {FONTE}33[1;37mScript para Montagem de compartilhamento NFS           {FONTE}33[1;34m**"
echo -e "                                               {FONTE}33[1;34m**                   {FONTE}33[1;37mMinisterio do Esporte                   {FONTE}33[1;34m**"
echo -e "                                               {FONTE}33[1;34m**                {FONTE}33[1;37mCoordenacao de Suporte e Rede              {FONTE}33[1;34m**"
echo -e "                                               {FONTE}33[1;34m**   {FONTE}33[1;32mGiuliano Domingues - {FONTE}33[1;31mgiuliano.domingues@esporte.gov.br  {FONTE}33[1;34m**"
echo -e "                                               {FONTE}33[1;34m***************************************************************"
echo ""
   
Lista() {   
   echo -e "{FONTE}33[01;33mOpcoes:"
   echo -e "{FONTE}33[01;33m-------"
   echo ""
   echo ""
   echo -e "{FONTE}33[01;31m1. {FONTE}33[01;32mCriar Servidor NFS"
   echo -e "{FONTE}33[01;31m2. {FONTE}33[01;32mVerificar Servidor(es)"
   echo -e "{FONTE}33[01;31m3. {FONTE}33[01;32mRemover Servers"
   echo -e "{FONTE}33[01;31m4. {FONTE}33[01;32mMontar Cliente NFS"
   echo -e "{FONTE}33[01;31m5. {FONTE}33[01;32mVerificar Clientes Montados"
   echo -e "{FONTE}33[01;31m6. {FONTE}33[01;32mDesmontar Cliente NFS"
   echo -e "{FONTE}33[01;31m7. {FONTE}33[01;32mSair"
   echo ""
   echo -ne "{FONTE}33[01;33mDigite a opcao desejada:  "
   echo -ne "{FONTE}33[01;31m"
   read opcao
   case $opcao in
   1) criar ;;
   2) ver_cliente ;;
   3) remov_cliente ;;
   4) mont_serv ;;
   5) ver_serv ;;
   6) desmont_serv ;;
   7) exit & clear ;; 
   *) "Opcao desconhecida." ; echo ; Lista ;;
   esac

}
criar() {
   clear
   user=pwd | sed -e s/home// | sed -e 's/^\///' | sed -e 's/^\///'
   mkdir -p /home/ftp/NFS_EXPORT
   mkdir /mnt/nfs
   echo -ne "Digite o caminho a ser compartilhado: "
   read DIR
   cd $DIR
   FILE=pwd
   echo -ne "Digite o ip da maquina que ira acessar o compartilhamento: "
   read IP
   echo `$FILE` $IP "(rw) no_root_squash" >> /etc/exports
   exportfs
   /etc/init.d/portmap restart
   /etc/init.d/nfs restart
   clear
   Lista
   } 
ver_cliente() {
   clear
   echo ""
   echo `cat /etc/exports | grep no_root | awk {'print$1'}`
   echo ""
   Lista
   }
remov_cliente() {
   clear
   echo ""
   cat /etc/exports | grep -v no_root_squash > /home/ftp/NFS_EXPORT/temp
   cat /home/ftp/NFS_EXPORT/temp > /etc/exports
   Lista
}
mont_serv() {
   clear
   echo ""
   echo -ne "{FONTE}33[01;37mDigite o Ip do Servidor: "
   echo -ne "{FONTE}33[01;32m"
   read IP
   echo -ne "{FONTE}33[01;32m"
   echo -ne "{FONTE}33[01;37mDigite o caminho: "
   echo -ne "{FONTE}33[01;32m"
   read FILE
   echo -ne "{FONTE}33[01;37m"
   mkdir /mnt/nfs/$IP
   mount -t nfs $IP:$FILE /mnt/nfs/$IP
   Lista
}
ver_serv() {
   clear
   cd /
   echo ""
   mount | grep nfs | awk {'print$1'} | grep :
   echo ""
Lista
}
desmont_serv() {
   clear
   echo ""
   echo -e "{FONTE}33[01;36mQual o IP do servidor a ser desmontado: "
   read IP
   cd /
   umount /mnt/nfs/$IP && rm -r /mnt/nfs/$IP
   echo -e "{FONTE}33[01;36m"
   echo ""
Lista
}
Lista

Scripts recomendados

strlen.sed: Tamanho de uma string com o sed

script de procura de arquivo simples

Mostra a temperatura da cidade desejada

Script de firewall para evitar ataques comuns

Criando com rapidez um banco de dados no PostgreSQL


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts