Erste Lösung
Installieren lftp
sudo apt-get install lftp
danach Skript erstellen
#!/bin/bash
HOST='mysite.com'
USER='myuser'
PASS='myuser'
TARGETFOLDER='/new'
SOURCEFOLDER='/home/myuser/backups'
lftp -f "
open $HOST
user $USER $PASS
lcd $SOURCEFOLDER
mirror --reverse --delete --verbose $SOURCEFOLDER $TARGETFOLDER
bye
"
Speichern Sie es an einem Ort mit Namen upload.sh
. Gib ihm die +x
Erlaubnis.
sudo chmod +x /path_to_script/upload.sh
Setup crontab
, um diesen Befehl in jedem x
Zeitraum auszuführen
Zum Bearbeiten von crontab run
crontab -e
Zum Ausführen des Befehls alle 5 Minuten ist Code
*/5 * * * * /path_to_script/upload.sh
zu jeder Stunde
0 */1 * * * /path_to_script/upload.sh
um 4 Uhr morgens laufen
0 4 * * * /path_to_script/upload.sh
Lösung zwei
Erstellen Sie ein kleines und einfaches Skript aufgerufen , lftp-script
dass LFTP
lesen:
open ftp://username:password@website.com
mirror -v --only-newer /home/local/path/ /website.com/public_html/
Schließlich können Sie LFTP
die Synchronisation ausführen und starten. Stellen Sie crontab so ein, wie ich schreibe, aber setzen Sie den Befehl
lftp -f /path/to/lftp-script
etwas wie das
*/5 * * * * lftp -f /path/to/lftp-script
Lösung drei
Installieren curlftpfs
sudo apt-get install curlftpfs
Um FTP lokal zu mounten, müssen Sie diese Befehle ausführen. Erstellen Sie ein Verzeichnis, das synchronisiert wird
mkdir hostr
Mounten Sie das Remote-FTP-Verzeichnis auf local
sudo curlftpfs -o allow_other ftp://user:pass@ftp.example.com host
user: pass ist der Benutzername und das Passwort, um sich bei einem FTP-Konto anzumelden.
Sie können für die automatische Montage hinzufügen curlftpfs
, fstab
indem Sie diese Zeile verwenden:
curlftpfs#user:pass@ftp.example.com /mnt/host fuse rw,uid=500,user,noauto 0 0