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 +x
permission.
sudo chmod +x /path_to_script/upload.sh
Programme crontab
d' installation pour exécuter cette commande à chaque x
pé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-script
qui LFTP
peut lire:
open ftp://username:[email protected]
mirror -v --only-newer /home/local/path/ /website.com/public_html/
Enfin, vous pouvez exécuter LFTP
et 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:[email protected] host
user: pass est le nom d'utilisateur et le mot de passe pour se connecter au compte ftp.
Vous pouvez ajouter curlftpfs
à fstab
pour le montage automatique en utilisant cette ligne:
curlftpfs#user:[email protected] /mnt/host fuse rw,uid=500,user,noauto 0 0
Untitled 1.odt' mirror: /home/edward/bl3/bl2/bl1/Untitled 1.odt: No such file or directory Unknown command
; '/new
dossier. Vérifiez les deux chemins.source folder
local, ce dossier doit être synchronisé avec le dossier ftp.