Eu uso o lftp para espelhar o conteúdo de um servidor ftp remoto (para backup).
lftp -c "set ftp:ssl-allow no;open host -u user@host,password;mirror -e -P 6 --scan-all-first /"
Mas quando a estrutura de pastas no servidor remoto muda de modo que um novo diretório com mais de um subdiretório é criado, então a criação dos mesmos diretórios no lado local falha.
Meu log, em seguida, contém linhas como:
mkdir: Access failed: path1/path2/missing_parent/missing_child: No such file or directory
No lado remoto, um novo caminho foi criado:
path1/path2/missing_parent/missing_child/missing_grandchild
Parece que o lftp está tentando criar o missing_child, que falha porque o missing_parent não foi criado antes.
Ele roda em um FreeBSD 10.4, lftp --version
is:
LFTP | Version 4.8.3 | Copyright (c) 1996-2017 Alexander V. Lukyanov
[... Omitted lincence, etc ...]
Libraries used: Expat 2.2.5, idn2 2.0.4, OpenSSL 1.0.2o 27 Mar 2018,
Readline 5.2, zlib 1.2.11
Então, como posso configurar o comando lftp mirror para que também crie os diretórios pai na máquina local?
Alternativamente: posso controlar de alguma forma o params lftp passa para mkdir
?