<ก่อนหน้านี้ | Contents | ถัดไป>
การใช้ rsync ผ่านเครือข่าย
หนึ่งในความงามที่แท้จริงของ rsync คือสามารถใช้คัดลอกไฟล์ผ่านเครือข่ายได้ ท้ายที่สุด “r” ใน rsync ย่อมาจาก "ระยะไกล" การคัดลอกระยะไกลสามารถทำได้ด้วยวิธีใดวิธีหนึ่งจากสองวิธี วิธีแรกคือกับระบบอื่นที่มี rsync ติดตั้งพร้อมกับโปรแกรมรีโมตเชลล์เช่น SSH. สมมติว่าเรามีระบบอื่นในเครือข่ายท้องถิ่นของเราด้วย a
มีพื้นที่ว่างในฮาร์ดไดรฟ์จำนวนมาก และเราต้องการดำเนินการสำรองข้อมูลโดยใช้ระบบระยะไกลแทนไดรฟ์ภายนอก สมมติว่ามีไดเร็กทอรีชื่อ .อยู่แล้ว /สำรอง ที่ซึ่งเราสามารถส่งไฟล์ของเราได้ เราสามารถทำได้:
[me@linuxbox ~]$ sudo rsync -av --delete --rsh=ssh /etc /home
/usr/local รีโมท-sys:/backup
[me@linuxbox ~]$ sudo rsync -av --delete --rsh=ssh /etc /home
/usr/local รีโมท-sys:/backup
เราทำการเปลี่ยนแปลงสองครั้งในคำสั่งของเราเพื่ออำนวยความสะดวกในการคัดลอกเครือข่าย ก่อนอื่นเราเพิ่ม
--rsh=ssh ตัวเลือกซึ่งสั่งให้ rsync ใช้โปรแกรม ssh เป็นรีโมตเชลล์ ด้วยวิธีนี้ เราจึงสามารถใช้ช่องสัญญาณที่เข้ารหัส ssh เพื่อถ่ายโอนข้อมูลจากระบบภายในไปยังโฮสต์ระยะไกลได้อย่างปลอดภัย ประการที่สอง เราระบุโฮสต์ระยะไกลโดยนำหน้าชื่อ (ในกรณีนี้ โฮสต์ระยะไกลจะตั้งชื่อ remote-sys) เป็นชื่อพาธปลายทาง
วิธีที่สองที่ rsync สามารถใช้เพื่อซิงโครไนซ์ไฟล์ผ่านเครือข่ายได้โดยใช้ an เซิร์ฟเวอร์ rysnc. rsync สามารถกำหนดค่าให้ทำงานเป็น daemon และรับฟังคำขอขาเข้าสำหรับการซิงโครไนซ์ได้ ซึ่งมักจะทำเพื่ออนุญาตให้มิเรอร์ของระบบรีโมต ตัวอย่างเช่น Red Hat Software รักษาพื้นที่เก็บข้อมูลขนาดใหญ่ของแพ็คเกจซอฟต์แวร์ภายใต้การพัฒนาสำหรับการแจกจ่าย Fedora เป็นประโยชน์สำหรับผู้ทดสอบซอฟต์แวร์ในการจำลองคอลเล็กชันนี้ในระหว่างขั้นตอนการทดสอบของรอบการเผยแพร่การแจกจ่าย เนื่องจากไฟล์ในที่เก็บมีการเปลี่ยนแปลงบ่อยครั้ง (บ่อยครั้งมากกว่าวันละครั้ง) จึงควรรักษามิเรอร์โลคัลโดยการซิงโครไนซ์เป็นระยะ แทนที่จะคัดลอกจำนวนมากของที่เก็บ หนึ่งในที่เก็บเหล่านี้ถูกเก็บไว้ที่ Georgia Tech; เราสามารถมิเรอร์โดยใช้สำเนาในเครื่องของเรา rsync และเซิร์ฟเวอร์ rsync ของพวกเขาเช่นนี้:
[me@linuxbox ~]$ mkdir fedora-devel
[me@linuxbox ~]$ rsync -av -- ลบ rsync://rsync.gtlib.gatech.edu/fe dora-linux-core/development/i386/os fedora-devel
[me@linuxbox ~]$ mkdir fedora-devel
[me@linuxbox ~]$ rsync -av -- ลบ rsync://rsync.gtlib.gatech.edu/fe dora-linux-core/development/i386/os fedora-devel
ในตัวอย่างนี้ เราใช้ URI ของเซิร์ฟเวอร์ rsync ระยะไกล ซึ่งประกอบด้วยโปรโตคอล (ซิงค์: //) ตามด้วยชื่อโฮสต์ระยะไกล (rsync.gtlib.gatech.edu) ตามด้วยชื่อพาธของที่เก็บ