นโยบายการจัดการความรู้ มหาวิทยาลัยสงขลานครินทร์ 1.ให้ใช้เครื่องมือการจัดการความรู้ผลักดัน คุณภาพคน และกระบวนทำงาน 2.ส่งเสริมการแลกเปลี่ยนประสบการณ์การทำงาน จากหน้างาน 3.ส่งเสริมให้มีเวทีเรียนรู้ร่วมกัน
อ่าน: 747
ความเห็น: 0

มาใช้ rsync ในการ Backup ข้อมูลกัน

rsync

มาใช้ rsync ในการ Backup ข้อมูลกัน

 

      ก่อนอื่นมาทำความรู้จัก rsync กันก่อน Rsync เป็นโปรแกรม ไว้สำหรับ Backup ข้อมูล เป็น Directory 
หนึ่งไปยังอีก Directory ทำงานได้หลายโหมด หลักการทำงานมันจะเปรียบเทียบไฟล์ ให้เรา ถ้าไฟล์เดิมมีอยู่
แล้วและยังไม่มีการเปลี่ยนแปลงอะไร ก็จะข้ามไฟล์นั้น ไป ทำให้เวลาในการ Backup ข้อมูลน้อย 
นอกจากนี้ ถ้านำ rsync ใช้ร่วมกับ ssh ก็สามารถ Backup ไฟล์ข้าม Server ได้ ซึ่ง rsync มีให้ใช้กับทุก OS 
นั่นหมายความว่าเรา สามารถ Backup Directory ข้าม Server ข้าม OS ได้ 

วิธีใช้งาน rsync มาดูคำสั่ง  (ถ้า OS ที่ใช้ยังไม่มีโปรแกรมนี้ก็ติดตั้งก่อน)
แบบแรก Backup Directory ใน Server เดียวกันไปไว้อีก Directory หนึ่งเช่น
ต้องการ Backup /home ไปไวทีที่ /backup/xxxx/
ใช้คำสั่ง (ตัวอย่างใช้ OS FreeBSD)

rsync -av --exclude="home/admin/admin_backups/*.gz" /home /backup/xxx

ความหมาย Option แต่ละตัว 
-a คือ archive ทำให้ ไฟล์ตันฉบับกับไฟล์ปลายทางเหมือนกันทุกอย่าง 
-v คือ verbose ให้แสดงรายละเอียดระหว่างทำงานขึ้นมาบนหน้าจอ
--exclude คือไม่รวมไฟล์ สามารถให้ รูปแบบ ได้เช่น ตามตัวอย่างหมายความว่า ไม่เอา ไฟล์ทุกไฟล์ที่ .gz ที่อยู่ใน 
home/admin/admin_backups/ *
--delete ให้ลบไฟล์ปลายทางถ้าไฟล์ต้นทางถูกลบไป

 

จากบทความที่แล้ว มาใช้ rsync ในการ Backup ข้อมูลกัน เป็นการ Backup ไฟล์ในเครื่องเดียวกัน

บทความนี้มาดูการ Backup ไฟล์จาก Server หนึ่งไปไว้อีก Server หนึ่ง

โปรแกรมที่ต้องการใช้ คือ rsync และ SSH Server

รูปแบบคำสั่ง

rsync -options -e ต้นทาง ปลายทาง

ทั้งต้นทาง และ ปลายทางสามารถใช้ SSH ได้

ตัวอย่าง การ Backup ด้วยการ Transfer ไฟล์จาก Server IP xxx.xxx.xxx.xxx มาไว้ในเครื่องที่รันคำสั่ง

rsync -av --delete --exclude="home/admin" -e ssh root@xxx.xxx.xxx.xxx:/home /backup/xxx

อธิบายความหมาย

เป็นการ copy ไฟล์จาก server ip xxx.xxx.xxx.xxx folder home ทั้ง folder รวม folder ย่อยทุก folder ยกเว้น /home/admin

มาไว้ที่ /backup/xxx ของเครื่องที่รันคำสั่งนี้

-a, -v, --exclude ดูได้จากบทความ มาใช้ rsync ในการ Backup ข้อมูลกัน

--delete ให้ลบไฟล์ปลายทางถ้าไฟล์ต้นทางถูกลบไป

เพิ่มเติม

ถ้า xxx.xxx.xxx.xxx ไม่ได้ใช้ port 22 ให้ใส่ options

-p เพิ่มเข้าไปหลัง ip เช่น -p 1111

 

 

อ้างอิง: http://www.mindphp.com/%E0%B8%9A%E0%B8%97%E0%B8%84%E0%B8%A7%E0%B8%B2%E0%B8%A1/66-server-hosting/3221-rsync-backup-shh.html

หมวดหมู่บันทึก: เรื่องทั่วไป
สัญญาอนุญาต: ซีซี: แสดงที่มา-ไม่ใช้เพื่อการค้า-อนุญาตแบบเดียวกัน Cc-by-nc-sa
สร้าง: 20 กรกฎาคม 2559 19:34 แก้ไข: 20 กรกฎาคม 2559 19:34 [ แจ้งไม่เหมาะสม ]
ดอกไม้
สมาชิกที่ให้กำลังใจ: Ico24 anni, Ico24 ดำขำ, และ 2 คนอื่น.
สมาชิกที่ให้กำลังใจ
 
Facebook
Twitter
Google

บันทึกอื่นๆ

ความเห็น

ไม่มีความเห็น

ร่วมแสดงความเห็นในหน้านี้

ชื่อ:
อีเมล:
IP แอดเดรส: 18.232.51.247
ข้อความ:  
เรียกเครื่องมือจัดการข้อความ
   
ยกเลิก หรือ