Première solution
Installer lftp
sudo apt-get install lftp
après cela, créer un script
#!/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
"
Enregistrez-le sur un endroit avec un nom upload.sh. Donnez-lui la +xpermission.
sudo chmod +x /path_to_script/upload.sh
Programme crontabd' installation pour exécuter cette commande à chaque xpériode de temps
Pour modifier l'exécution de crontab
crontab -e
Pour exécuter la commande toutes les 5 minutes, le code est
*/5 * * * * /path_to_script/upload.sh
toutes les heures
0 */1 * * * /path_to_script/upload.sh
courir à 4 heures du matin
0 4 * * * /path_to_script/upload.sh
Solution deux
Créez un petit script simple appelé lftp-scriptqui LFTPpeut lire:
open ftp://username:password@website.com
mirror -v --only-newer /home/local/path/ /website.com/public_html/
Enfin, vous pouvez exécuter LFTPet démarrer la synchronisation. Définissez crontab comme j'écris mais mettez la commande
lftp -f /path/to/lftp-script
quelque chose comme ça
*/5 * * * * lftp -f /path/to/lftp-script
Solution trois
Installer curlftpfs
sudo apt-get install curlftpfs
que vous devez faire pour monter ftp localement est d'exécuter ces commandes create dir witch sera synchronisé
mkdir hostr
monter le répertoire ftp distant sur le local
sudo curlftpfs -o allow_other ftp://user:pass@ftp.example.com host
user: pass est le nom d'utilisateur et le mot de passe pour se connecter au compte ftp.
Vous pouvez ajouter curlftpfsà fstabpour le montage automatique en utilisant cette ligne:
curlftpfs#user:pass@ftp.example.com /mnt/host fuse rw,uid=500,user,noauto 0 0