Перше рішення
Встановити lftp
sudo apt-get install lftp
після цього створіть сценарій
#!/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
"
Збережіть його на якомусь місці з назвою upload.sh
. Дайте +x
дозвіл.
sudo chmod +x /path_to_script/upload.sh
Налаштування crontab
для запуску цієї команди x
протягом кожного періоду часу
Для редагування запуску crontab
crontab -e
Для виконання команди на кожні 5 хв є код
*/5 * * * * /path_to_script/upload.sh
щогодини
0 */1 * * * /path_to_script/upload.sh
бігати о 4 ранку
0 4 * * * /path_to_script/upload.sh
Рішення два
Щоб створити невеликий і легкий скрипт , lftp-script
який LFTP
може читати:
open ftp://username:password@website.com
mirror -v --only-newer /home/local/path/ /website.com/public_html/
Нарешті, ви можете запустити LFTP
та запустити синхронізацію. Встановіть crontab так, як я пишу, але поставте команду
lftp -f /path/to/lftp-script
щось на зразок цього
*/5 * * * * lftp -f /path/to/lftp-script
Рішення три
Встановити curlftpfs
sudo apt-get install curlftpfs
вам потрібно зробити для того, щоб локально встановити ftp - це запустити ці команди, створити dir witch буде синхронізовано
mkdir hostr
підключити віддалений ftp dir до локального
sudo curlftpfs -o allow_other ftp://user:pass@ftp.example.com host
користувач: pass - це ім'я користувача та пароль для входу в ftp-акаунт.
Ви можете додати curlftpfs
до fstab
автоматичного монтажу за допомогою цього рядка:
curlftpfs#user:pass@ftp.example.com /mnt/host fuse rw,uid=500,user,noauto 0 0