Rsync 3.2.4. fayllarni sinxronlashtirish yordam dasturining chiqarilishi

Rivojlanishdan bir yarim yil o'tgach, Rsync 3.2.4 versiyasi mavjud bo'lib, o'zgarishlarni bosqichma-bosqich nusxalash orqali trafikni minimallashtirish imkonini beruvchi fayllarni sinxronlashtirish va zaxira yordam dasturi. Tashish ssh, rsh yoki o'zining rsync protokoli bo'lishi mumkin. U nometall sinxronizatsiyasini ta'minlash uchun eng mos bo'lgan anonim rsync serverlarini tashkil qilishni qo'llab-quvvatlaydi. Loyiha kodi GPLv3 litsenziyasi ostida tarqatiladi.

Qo'shilgan o'zgarishlar orasida:

  • Buyruqlar qatori argumentlarini himoya qilishning yangi usuli taklif qilindi, u ilgari mavjud bo'lgan "--protect-args" ("-s") variantiga o'xshaydi, lekin rrsync skriptining ishlashini buzmaydi (cheklangan rsync). Himoya tashqi buyruq tarjimoniga so'rov yuborishda maxsus belgilar, shu jumladan bo'shliqlardan qochish bilan bog'liq. Yangi usul qo'shtirnoq ichidagi maxsus belgilardan qochib qutula olmaydi, bu sizga qo'shimcha qochishsiz fayl nomi atrofida oddiy tirnoq belgilaridan foydalanish imkonini beradi, masalan, “rsync -aiv host:'a simple file.pdf' buyrug'i endi qabul qilinadi. ”. Eski xatti-harakatni qaytarish uchun “--old-args” opsiyasi va “RSYNC_OLD_ARGS=1” muhit o‘zgaruvchisi taklif etiladi.
  • Joriy til ("." o'rniga",") asosida o'nli kasr belgilarini qayta ishlash bilan bog'liq uzoq vaqtdan beri mavjud muammo hal qilindi. Faqat "." ni qayta ishlashga mo'ljallangan skriptlar uchun. raqamlarda, muvofiqlik buzilgan taqdirda, siz mahalliy parametrni "C" ga o'rnatishingiz mumkin.
  • Zlib kutubxonasidan kiritilgan kodda maxsus tayyorlangan belgilar ketma-ketligini siqishga urinayotganda bufer to‘lib ketishiga olib keladigan zaiflik (CVE-2018-25032) tuzatildi.
  • Disk keshini tozalash uchun har bir fayl operatsiyasida fsync() funksiyasini chaqirish uchun “--fsync” opsiyasi amalga oshirildi.
  • Rsync-ssl skripti openssl-ga kirishda "-verify_hostname" opsiyasidan foydalanadi.
  • Qurilma fayllarini oddiy fayllar sifatida nusxalash uchun "--copy-devices" opsiyasi qo'shildi.
  • Ko'p sonli kichik kataloglarni bosqichma-bosqich o'tkazishda xotira sarfini kamaytirish.
  • MacOS platformasida “-times” opsiyasi ishlaydi.
  • Agar foydalanuvchi kirish huquqlarini o'zgartirishga ruxsati bo'lsa (masalan, root sifatida ishga tushirilganda) faqat o'qish rejimida fayllar uchun xattrs atributlarini yangilash imkoniyati amalga oshirildi.
  • Maxsus fayllarni uzatish haqida ogohlantirishlarni ko'rsatish uchun sukut bo'yicha “--info=NONREG” parametri qo'shilgan va yoqilgan.
  • rrsync (cheklangan rsync) skripti Pythonda qayta yozilgan. "-munge", "-no-lock" va "-no-del" yangi variantlari qo'shildi. Odatiy bo'lib, --copy-links (-L), --copy-dirlinks (-k) va --keep-dirlinks (-K) parametrlarini bloklash kataloglarga simli havolalarni boshqaradigan hujumlarni qiyinlashtirish uchun yoqilgan.
  • Atom-rsync skripti Python-da qayta yozilgan va nolga teng bo'lmagan qaytarish kodlarini e'tiborsiz qoldirish uchun kengaytirilgan. Odatiy bo'lib, rsync ishlayotgan vaqtda fayllar yo'qolganda 24-kod e'tiborga olinmaydi (masalan, dastlabki indekslash paytida mavjud bo'lgan, lekin ko'chirish vaqtida o'chirilgan vaqtinchalik fayllar uchun 24-kod qaytariladi).
  • Munge-symlinks skripti Python-da qayta yozilgan.

Manba: opennet.ru

a Izoh qo'shish