Rsync 3.2.4 ได้รับการเผยแพร่แล้วและนี่คือข่าวของมัน

หลังจากปีครึ่งของการพัฒนา การเปิดตัว เวอร์ชันใหม่ของ rsync 3.2.4เวอร์ชันที่มีการปรับปรุงและแก้ไขข้อผิดพลาดต่างๆ

สำหรับผู้ที่ยังใหม่กับ Rsync คุณควรรู้ว่าสิ่งนี้ เป็นการซิงโครไนซ์ไฟล์และยูทิลิตี้สำรองข้อมูล ที่ให้การส่งข้อมูลที่เพิ่มขึ้นอย่างมีประสิทธิภาพ ซึ่งทำงานด้วยข้อมูลที่บีบอัดและเข้ารหัส

การใช้เทคนิคการเข้ารหัสเดลต้า ช่วยให้คุณสามารถซิงโครไนซ์ไฟล์และไดเร็กทอรี ระหว่างสองเครื่อง ผ่านเครือข่ายหรือระหว่างสองตำแหน่งในเครื่องเดียวกัน การลดปริมาณข้อมูลที่ถ่ายโอนให้น้อยที่สุด

คุณลักษณะที่สำคัญของ Rsync ที่ไม่พบในโปรแกรมหรือโปรโตคอลส่วนใหญ่คือการคัดลอกเกิดขึ้นโดยมีการส่งเพียงครั้งเดียวในแต่ละทิศทาง Rsync สามารถคัดลอกหรือแสดงไดเร็กทอรีที่มีอยู่และคัดลอกไฟล์ โดยใช้การบีบอัดและการเรียกซ้ำ

Rsync ทำหน้าที่เป็นเดมอนเซิร์ฟเวอร์โดยค่าเริ่มต้นบนพอร์ต TCP 873 ให้บริการไฟล์ในโปรโตคอล Rsync ดั้งเดิมหรือผ่านเทอร์มินัลระยะไกล เช่น RSH หรือ SSH ในกรณีหลัง ไคลเอ็นต์ Rsync ที่เรียกใช้งานได้ต้องได้รับการติดตั้งทั้งบนโลคัลและรีโมตโฮสต์

ข่าวหลักของ Rsync 3.2.4

ในเวอร์ชันใหม่นี้ที่นำเสนอของ Rsync 3.2.4 มีการเสนอวิธีการป้องกันอาร์กิวเมนต์ใหม่ จากบรรทัดคำสั่งที่คล้ายกับตัวเลือก “–protect-args” (“-s”) ที่มีอยู่ก่อนหน้านี้ แต่ ไม่ทำลายสคริปต์ rrsync (จำกัด rsync)

การป้องกัน เดือดลงไปถึงตัวละครหลบหนีพิเศษรวมถึงช่องว่างเมื่อส่งคำขอไปยังเชลล์ภายนอก เมธอดใหม่นี้ไม่หลีกเลี่ยงอักขระพิเศษภายในบล็อกที่ยกมา ทำให้สามารถอ้างชื่อไฟล์ได้โดยไม่ต้องหลบหนีอีกต่อไป เช่น "rsync -aiv host: อนุญาตให้ใช้ 'a simple file.pdf'" ในการส่งคืนพฤติกรรมเก่า จะมีการเสนอตัวเลือก “–old-args” และตัวแปรสภาพแวดล้อม “RSYNC_OLD_ARGS=1”

การเปลี่ยนแปลงอีกประการหนึ่งที่โดดเด่นในเวอร์ชันใหม่นี้ก็คือ ความสามารถในการอัปเดตแอตทริบิวต์ xattrs สำหรับไฟล์ในโหมดอ่านอย่างเดียวหากผู้ใช้ได้รับอนุญาตให้เปลี่ยนสิทธิ์การเข้าถึง (เช่น เมื่อรันในฐานะรูท)
เพิ่มและเปิดใช้งานโดยพารามิเตอร์เริ่มต้น “–info=NONREG” เพื่อแสดงคำเตือนเกี่ยวกับการถ่ายโอนไฟล์พิเศษ

สคริปต์ atomic-rsync ถูกเขียนใหม่ใน Python และขยายด้วยความสามารถในการละเว้นรหัส กลับไม่เป็นศูนย์ ค่าดีฟอลต์คือการละเว้นโค้ด 24 ซึ่งจะถูกส่งคืนเมื่อไฟล์หายไปในขณะที่ rsync กำลังทำงานอยู่ (เช่น โค้ด 24 จะถูกส่งคืนสำหรับไฟล์ชั่วคราวที่มีอยู่ในขณะที่สร้างดัชนีเริ่มต้น แต่ถูกลบออกในเวลาที่ทำดัชนีเริ่มต้น) ของการอพยพ)

แก้ไขปัญหาที่มีมายาวนานในการจัดการอักขระจุดทศนิยม ขึ้นอยู่กับสถานที่ปัจจุบัน สำหรับสคริปต์ที่ออกแบบมาเพื่อประมวลผลเฉพาะอักขระ "" เป็นตัวเลขในกรณีที่มีการละเมิดความเข้ากันได้ คุณสามารถตั้งค่าภาษา "C"

นอกจากนี้ ช่องโหว่ (CVE-2018-25032) ในโค้ดที่รวมไว้ของไลบรารี zlib ที่ทำให้เกิดบัฟเฟอร์ล้นเมื่อพยายามบีบอัดลำดับอักขระที่เตรียมไว้เป็นพิเศษก็ได้รับการแก้ไขเช่นกัน

จากการเปลี่ยนแปลงอื่น ๆ ที่โดดเด่นกว่ารุ่นใหม่นี้:

  • ใช้ตัวเลือก “–fsync” เพื่อเรียกใช้ฟังก์ชัน fsync() ในทุกการทำงานของไฟล์เพื่อล้างแคชของดิสก์
  • สคริปต์ rsync-ssl ใช้ตัวเลือก "-verify_hostname" เมื่อเข้าถึง openssl
  • เพิ่มตัวเลือก “–copy-devices” เพื่อคัดลอกไฟล์อุปกรณ์เป็นไฟล์ปกติ
  • ลดการใช้หน่วยความจำเมื่อทำการโอนย้ายไดเร็กทอรีขนาดเล็กจำนวนมาก
  • บนแพลตฟอร์ม macOS จะเปิดใช้งานตัวเลือก “–atimes”
  • สคริปต์ rrsync (จำกัด rsync) ถูกเขียนใหม่ใน Python
  • เพิ่มตัวเลือกใหม่ "-munge", "-no-lock" และ "-no-del"
  • ตัวเลือกบล็อก “–copy-links” (-L), “–copy-dirlinks” (-k) และ “–keep-dirlinks” (-K) ถูกเปิดใช้งานโดยค่าเริ่มต้น เพื่อให้การโจมตีที่จัดการลิงก์สัญลักษณ์ไปยังไดเร็กทอรีมีมากขึ้น ยาก.
  • สคริปต์ munge-symlinks ถูกเขียนใหม่ใน Python

สุดท้ายนี้ หากสนใจอยากทราบข้อมูลเพิ่มเติม สามารถเข้าไปดูรายละเอียดใน ลิงค์ต่อไปนี้


แสดงความคิดเห็นของคุณ

อีเมล์ของคุณจะไม่ถูกเผยแพร่ ช่องที่ต้องการถูกทำเครื่องหมายด้วย *

*

*

  1. ผู้รับผิดชอบข้อมูล: Miguel ÁngelGatón
  2. วัตถุประสงค์ของข้อมูล: ควบคุมสแปมการจัดการความคิดเห็น
  3. ถูกต้องตามกฎหมาย: ความยินยอมของคุณ
  4. การสื่อสารข้อมูล: ข้อมูลจะไม่ถูกสื่อสารไปยังบุคคลที่สามยกเว้นตามข้อผูกพันทางกฎหมาย
  5. การจัดเก็บข้อมูล: ฐานข้อมูลที่โฮสต์โดย Occentus Networks (EU)
  6. สิทธิ์: คุณสามารถ จำกัด กู้คืนและลบข้อมูลของคุณได้ตลอดเวลา