Másfél év fejlesztés után elérhető az Rsync 3.2.4 kiadása, amely egy fájlszinkronizáló és biztonsági mentési segédprogram, amely minimalizálja a forgalmat a változások inkrementális másolásával. A szállítási módok között szerepel a ssh, rsh vagy a saját rsync protokoll. Támogatja az anoním rsync szerverek munkájának megszervezését, amelyek optimálisan alkalmasak a tükrözés szinkronizálásának biztosítására. A projekt kódja GPLv3 licenc alatt terjeszthető.
A következő változtatások kerültek hozzáadásra:
- Javasolt egy új módszer a parancssori argumentumok védelmére, amely hasonló a korábban elérhető „—protect-args” („-s”) opcióhoz, de nem zavarja meg az rrsync (korlátozott rsync) script működését. A védelem lényege a speciális karakterek, beleértve a szóközöket is, escape-elése, amikor kéréseket küldenek a külső parancsértelmezőnek. Az új módszer nem escape-eli a speciális karaktereket a zárójelek közé zárt blokkokban, ami lehetővé teszi a fájlnevek egyszerű idézőjelek közé zárását extra escape-elés nélkül, például mostantól érvényes a parancs „rsync -aiv host:’a simple file.pdf’ .”. A régi viselkedés visszaállítására javasolt az „—old-args” opció és az „RSYNC_OLD_ARGS=1” környezeti változó.
- Megoldódott egy régi probléma a tizedesvesszők kezelésével kapcsolatban a jelenlegi lokalizáció figyelembevételével (
- Javítva lett egy sebezhetőség (CVE-2018-25032) a zlib könyvtárban lévő kódban, ami puffer túltelítődéshez vezetett, amikor egy különlegesen elkészített karakterlánc tömörítésére került sor.
- Megvalósult a „—fsync” opció, amely a fsync() funkciót hívja meg minden fájlműveletnél a lemez gyorsítótárának kiürítése érdekében.
- Az rsync-ssl scriptben bevezetésre került az „-verify_hostname” opció az openssl hívásakor.
- Hozzáadva a „—copy-devices” opció a külső fájlok eszközként való másolásához, mint normál fájlok.
- Csökkent a memóriafogyasztás a sok apró könyvtár inkrementális átvitele során.
- A macOS platformon biztosítva van a „—atimes” opció működése.
- Lehetővé vált az xattrs attribútumok frissítése csak olvasási módban lévő fájlok esetén, ha a felhasználónak van hatósága a hozzáférési jogok megváltoztatására (például root jogok mellett való futtatáskor).
- Hozzáadva és alapértelmezés szerint engedélyezve a „—info=NONREG” paraméter, amely figyelmeztetéseket ad a speciális fájlok átviteléről.
- Az rrsync (korlátozott rsync) szkriptet Python nyelvre írták át. Új opciók kerültek hozzá: „-munge”, „-no-lock” és „-no-del”. Alapértelmezés szerint be van kapcsolva a „—copy-links” (-L), „—copy-dirlinks” (-k) és „—keep-dirlinks” (-K) opciók zárolása, hogy megnehezítse a szimbolikus hivatkozások manipulációján alapuló támadásokat az alkönyvtárakban.
- Az atomic-rsync szkriptet Python nyelvre írták át, és kiegészítették a nem nulla visszatérési kódok figyelmen kívül hagyásának lehetőségével. Alapértelmezés szerint a 24-es kódot figyelmen kívül hagyják, amelyet a fájlok eltűnésekor ad vissza az rsync folyamat során (például a 24-es kódot azok a ideiglenes fájlok adják, amelyek jelen voltak az induló indexelés során, de az átvitel időpontjára eltávolították őket).
- A munge-symlinks szkriptet Python nyelvre írták át.
Forrás: opennet.ru
