rsync
rsync ใช้คัดลอกไฟล์ระหว่างไดเรกทอรีหรือคอมพิวเตอร์ โดยจะถ่ายโอนเฉพาะส่วนที่มีการเปลี่ยนแปลงเท่านั้น ทำให้การคัดลอกซ้ำและการสำรองข้อมูลทำได้อย่างรวดเร็ว โปรแกรมนี้ทำงานได้ทั้งในเครื่องหรือผ่าน SSH และสามารถรักษาค่าสิทธิ์ เวลา และลิงก์ต่างๆ ไว้ได้ด้วยตัวเลือก -a (archive)
1ตัวเลือกทั่วไป
-a (archive) ใช้รักษาค่าสิทธิ์ เวลา เจ้าของไฟล์ และสัญลักษณ์ลิงก์ พร้อมทั้งคัดลอกแบบเรียกซ้ำ -v ใช้แสดงรายการไฟล์แต่ละไฟล์ -h ใช้แสดงขนาดไฟล์ในรูปแบบที่อ่านง่าย -z ใช้บีบอัดข้อมูลผ่านเครือข่าย และ --progress ใช้แสดงความคืบหน้า
2เครื่องหมายทับปิดท้าย
rsync -a src/ dest/ จะคัดลอกเนื้อหาภายใน src ไปยัง dest ส่วน rsync -a src dest/ จะคัดลอกตัวไดเรกทอรีเอง โดยสร้างเป็น dest/src การเข้าใจผิดในส่วนนี้เป็นข้อผิดพลาดที่พบบ่อยที่สุดของ rsync
3--delete และ --dry-run
--delete จะลบไฟล์ในปลายทางที่ไม่มีอยู่ในแหล่งข้อมูลต้นทางแล้ว เพื่อให้ปลายทางเป็นภาพสะท้อนที่ตรงกันทุกประการ --dry-run (-n) จะแสดงผลลัพธ์ที่จะเกิดขึ้นโดยไม่มีการเปลี่ยนแปลงใดๆ และควรใช้ร่วมกับ --delete ก่อนเสมอ
วิธีการสำรองข้อมูลโฟลเดอร์ไปยังเซิร์ฟเวอร์
- ทดสอบก่อน:
rsync -avhn --delete ~/Documents/ user@server:/backup/Documents/ - ตรวจสอบรายการไฟล์ที่จะถูกคัดลอกหรือลบ
- ดำเนินการจริง:
rsync -avh --delete ~/Documents/ user@server:/backup/Documents/ - เรียกใช้คำสั่งเดิมซ้ำในภายหลัง ระบบจะถ่ายโอนเฉพาะส่วนที่มีการเปลี่ยนแปลงเท่านั้น
ข้อควรระวัง
- เมื่อใช้
--deleteหากระบุพาธต้นทางผิดอาจทำให้ปลายทางว่างเปล่าได้ ควรเรียกใช้พร้อมกับ -n ก่อนเสมอ - การทำภาพสะท้อน (mirror) ไม่ใช่ประวัติการสำรองข้อมูล: ไฟล์ที่ถูกลบหรือเสียหายจะถูกสะท้อนไปยังปลายทางด้วยเช่นกัน
บทความที่เกี่ยวข้อง
- คีย์ SSHวิธีการทำงานของการยืนยันตัวตนด้วยคีย์ SSH, วิธีสร้างคีย์ด้วย ssh-keygen, การติดตั้งบนเซิร์ฟเวอร์ และการป้องกันคีย์
- การค้นหาไฟล์ขนาดใหญ่และไฟล์เก่าด้วย findวิธีใช้คำสั่ง find เพื่อแสดงรายการไฟล์ขนาดใหญ่หรือไฟล์เก่าบน Linux ดูตัวอย่างไฟล์อย่างปลอดภัย และลบเฉพาะไฟล์ที่คุณตรวจสอบแล้วเท่านั้น
- cron และ crontabวิธีที่ cron ใช้รันงานตามกำหนดการ, ฟิลด์เวลาทั้งห้าของ crontab, ตำแหน่งที่เก็บไฟล์ cron ของระบบ และการเปรียบเทียบกับ systemd timers
แหล่งอ้างอิง
- หน้าคู่มือ rsync(1) download.samba.org
- หน้าโครงการ rsync rsync.samba.org
ตรวจสอบล่าสุด: