ทางออกแรก
ติดตั้ง 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
วิ่งบนตีสี่
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 จะซิงค์ -ed
mkdir hostr
เมานต์ ftp dir จากระยะไกลไปยังท้องถิ่น
sudo curlftpfs -o allow_other ftp://user:pass@ftp.example.com host
user: passเป็นชื่อผู้ใช้และรหัสผ่านเพื่อเข้าสู่บัญชี ftp
คุณสามารถเพิ่มcurlftpfs
การfstab
สำหรับติดตั้งอัตโนมัติโดยใช้บรรทัดนี้
curlftpfs#user:pass@ftp.example.com /mnt/host fuse rw,uid=500,user,noauto 0 0