Solusi pertama
Install lftp
sudo apt-get install lftp
setelah itu buat 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
"
Simpan di beberapa tempat dengan nama upload.sh
. Berikan +x
izin.
sudo chmod +x /path_to_script/upload.sh
Pengaturan crontab
untuk menjalankan perintah ini pada setiap x
periode waktu
Untuk mengedit jalankan crontab
crontab -e
Untuk menjalankan perintah pada setiap kode 5 menit adalah
*/5 * * * * /path_to_script/upload.sh
setiap jam
0 */1 * * * /path_to_script/upload.sh
untuk berjalan pada jam 4 pagi
0 4 * * * /path_to_script/upload.sh
Solusi dua
Buat skrip kecil dan mudah disebut lftp-script
yang LFTP
dapat membaca:
open ftp://username:password@website.com
mirror -v --only-newer /home/local/path/ /website.com/public_html/
Akhirnya Anda dapat menjalankan LFTP
dan memulai sinkronisasi. Atur crontab seperti yang saya tulis tetapi berikan perintah
lftp -f /path/to/lftp-script
sesuatu seperti ini
*/5 * * * * lftp -f /path/to/lftp-script
Solusi tiga
Install curlftpfs
sudo apt-get install curlftpfs
Yang perlu Anda lakukan agar me-mount ftp secara lokal adalah dengan menjalankan perintah-perintah ini buat dir witch akan disinkronkan
mkdir hostr
mount remote ftp dir ke lokal
sudo curlftpfs -o allow_other ftp://user:pass@ftp.example.com host
user: pass adalah nama pengguna dan kata sandi untuk masuk ke akun ftp.
Anda dapat menambahkan curlftpfs
ke fstab
untuk pemasangan otomatis dengan menggunakan baris ini:
curlftpfs#user:pass@ftp.example.com /mnt/host fuse rw,uid=500,user,noauto 0 0