você está aqui: Home  → Arquivo de Mensagens Programe sua mente para aprender inglês - ebook gratuito

Enviando dados por ftp

Colaboração: Francisco A Silva

Data de Publicação: 27 de Fevereiro de 2006

Um uso interessante do ftp é a possibilidade de enviar dados para uma maquina remota como backup ou enviar dados para serem processados por um sistema de EDI. Abaixo apresento um script simples que resolve este problema. Vale lembrar que o usuario deve existir na maquina remota.

  #!/bin/bash
  # ############################################
  # #                                          #
  # # autor: FRANCISCO A SILVA                 #
  # # data : 25/03/2004                        #
  # # este script tem a finalidade de fazer    #
  # # diariamente o backup do servidor de      #
  # # e-mail  para o servidor de backup        #
  # ############################################
  
  
  HOST='192.168.1.11'                 # identificacao do servidor destino
  USER='gunman'                       # usuario remoto no servidor destino
  PASSWD='gunmanmail'                 # senha usuario remoto
  FILE1='gunmanmail.tar'              # definicao do arquivo 1
  FILE2='gunmanhome.tar'              # definicao do arquivo 2
  FILE3='gunman-etc.tar'
  FILE4='gunman-dns.tar'
  
  tar -cvzf /home/tmp/$FILE1 /var/mail/*     # criacao do arquivo 1
  tar -cvzf /home/tmp/$FILE2 /home/*         # criacao do arquivo 2
  tar -cvzf /home/tmp/$FILE3 /etc/*          # criacao do arquivo 3
  tar -cvzf /home/tmp/$FILE4 /var/named/*    # criacao do arquivo 4
  ftp -n $HOST <<END_SCRIPT                  # abre sessao ftp
  user $USER $PASSWD                         # loga o usuario
  lcd /home/tmp/                             # muda de diretorio local
  bin                                        # alterna para o modo binario
  put $FILE1                                 # enviar arquivo1
  put $FILE2                                 # enviar arquivo2
  put $FILE3                                 # enviar arquivo3
  put $FILE4                                 # enviar arquivo4
  END_SCRIPT                                 # finaliza o script
  rm /home/tmp/$FILE1                        # remove arquivos
  rm /home/tmp/$FILE2
  rm /home/tmp/$FILE3
  rm /home/tmp/$FILE4
  exit 0                                     # sai do script

Uma entrada no crontab para automatizar a rotina ficaria assim (considerando que o script esteja em /usr/bin/ftpenvia.sh com direitos de execucão):

  # Rotina de backup
  04 4 * * *  /usr/bin/ftpenvia.sh


Veja a relação completa dos artigos de Francisco A Silva