I'm using lftp to push content to an ftp-only web-server. It worked to upload the files recursively at first, and even incrementally.
Any idea why this would skip files changed in a subfolder, but not skip files changed in the home directory?
Details: I'm using the reverse mirror mode, which pushes local data up to the server instead of downloading it from the server. Throughout the web, this is the recommended option for recursive upgrade.
Here's the full script (from this answer)
#!/bin/bash
HOST="..."
USER="..."
PASS="..."
FTPURL="ftp://$USER:$PASS@$HOST"
LCD="/local/directory"
#RCD=""
#RCDCMD=cd $RCD;
#DELETE="--delete"
lftp -c "set ftp:ssl-allow no;
set ftp:list-options -a;
open '$FTPURL';
lcd $LCD;
$RCDCMD \
mirror --reverse \
$DELETE \
--verbose \
--exclude-glob .*swp \
--exclude-glob .*swn \
--exclude-glob .*swo"
The related question, was solved by permission issues, which is not an issue in this case. Everything is "rwxr-xr-x" on the server.
Further Testing: The lftp seems to work intermittently. For example, I will run the command twice, and it skips the changes, then the third time it works, correctly copying the changed files up to the server.
ls -Rwork on the remote server? – mc0e Dec 11 '15 at 16:13ls -Rgets a mention in the lftp man page. I presume it's an lftp command. – mc0e Dec 13 '15 at 01:44ls -Rcommand works. On the other hand, files in recursive directories are also being correctly copied now too. Looks like I need to do some more testing on when the bug occurs and when it doesn't. – Josiah Yoder Dec 16 '15 at 22:32