Diretório automático ativado no ftp

1

Eu preciso monitorar um diretório no servidor FTP do Ubuntu. Se qualquer novo arquivo aparecer em um diretório específico no servidor FTP, os arquivos devem ser copiados para a minha máquina Ubuntu. Tenho login ssh no meu servidor FTP. Essa automação deve ser feita da minha máquina Ubuntu, é possível?

    
por sysadminboy 28.09.2016 / 04:32

2 respostas

1

Syncthing pode fazer isso facilmente entre duas máquinas. Se você tiver acesso SSH, poderá usar o encaminhamento de porta para conectar a sincronização instâncias.

    
por FredFoo 28.09.2016 / 04:45
0

Seu comentário em Diretório automático acionado no ftp estava quase lá . Experimente

$ ssh "$SERVER" inotifywait -m /tmp/sample/ -e create -e moved_to \
  | while read d o f; do
      case "$o" in CREATE|MOVED_TO) 
        scp "$SERVER":/tmp/sample/"$f" /tmp/sample/;;
      esac
  done

No entanto, se você quiser que ele trabalhe com subdiretórios, você provavelmente deve apenas chamar o rsync de cada ocorrência (o próprio rsync descobrirá qual arquivo é novo) e incluir -r para inotifywait, por exemplo,

$ ssh "$SERVER" inotifywait -r -m /tmp/sample/ -e create -e moved_to \
  | while read d o f; do
      case "$o" in CREATE|MOVED_TO) 
        rsync -avh "$SERVER":/tmp/sample /tmp/sample;;
      esac
  done

(Se você quiser fazer isso com o scp, você precisa garantir que diretórios locais sejam criados, etc., o que praticamente acaba reimplementando o rsync).

Tudo isso dito, eu recomendo olhar para Syncthing se você fizer esse tipo de coisa muito. É bastante luz de recursos.

    
por unhammer 16.12.2016 / 10:55