Az rsync egy nyílt forráskódú parancssori segédprogram, amelyet az rcp (és scp) helyettesítésére terveztek, de sokkal több funkcióval. Az "rsync algoritmust" használja, amely nagyon gyors módszert biztosít a távoli fájlok szinkronizálására.
Az rsync projekt feladata, hogy csak a hivatkozásokon lévő fájlok közötti különbségeket küldi el anélkül, hogy előzetesen mindkét fájlkészlet a link egyik végében jelen lenne.
Az rsync segítségével a felhasználók képesek lesznek teljes fájlrendszereket és könyvtárfákat frissíteni, használhatják az SSH, az RSH vagy a közvetlen aljzatok szállítását, a tükrözést támogatják az anonim rsync segítségével, és adott esetben megőrzik a szimbolikus linkeket, a fájlok tulajdonjogát, engedélyeket, időt és eszközöket.
Az rsync nem igényel különleges jogosultságokat a telepítéshez, és belső pipelining funkciója csökkenti a több fájl késleltetését.
Az újdonság a következő verzióban:
- Ez egy hibajavító kiadás. Ez magában foglal egy biztonsági javítást egy átvitelről egy olyan feladóról, amelyet nem bíz meg teljes mértékben.
Újdonság a verzióban:
- Ez egy hibajavító kiadás. Ez magában foglal egy biztonsági javítást egy átvitelről egy olyan feladóról, amelyet nem bíz meg teljes mértékben.
Újdonság a 3.1.0 verzióban:
- KIMENETI VÁLTOZÁSOK:
- Alapértelmezés szerint három számjegyű csoportok kimenő száma (pl. 1,234,567). Lásd a --human-olvasható lehetőséget a kikapcsoláshoz. Lásd még a démon "napló formátumát" paramétert és a hozzá tartozó parancssori opciókat (beleértve a -out-formátumot is) egy olyan módosítóhoz, amely a számjegyek csoportosítását vagy az ember által olvasható kimenetet kérheti a naplózásokban. (Ne feledje, hogy a napló kimenete alapértelmezés szerint változatlan.)
- A - csak listán lévő opciót a "humánusan olvasható" beállítás befolyásolja. Alapértelmezés szerint számjegycsoportokat jelenít meg, és az egység utótagjai, ha magasabb szintű olvashatóságot kérnek. Emellett a méretkimenet oszlopszélessége 11-ről 14 karakterre emelkedett, ha az emberi olvashatóság engedélyezve van. Használja a -no-h parancsot a régi stílusú kimenet és oszlopméret eléréséhez.
- A --progress opció kimenete megváltozott: a & quot; xfer & quot; "xfr" -re rövidítettük, és a "check-to-check" a "to-chk" -ra rövidítették, mindkettő arra tervezték, hogy helyet biztosítson a fájlméret-számok (alapértelmezés szerint) szélesebb megjelenítéséhez anélkül, hogy a teljes vonalhosszúság hosszabb lenne. Emellett, amikor a növekményes rekurzió engedélyezve van, az "ir-chk" a "to-chk" helyett a " amíg az inkrementális rekurzív szkennelés befejeződik, tájékoztatva Önt arról, hogy az ellenőrizendő érték és a teljes érték még mindig növekszik, ahogy új fájlok találhatók.
- A --stats kimenet továbbfejlesztése: 1) megemlíteni, hogy hány fájlt hoztak létre (protokoll & gt; = 28), 2) megemlíteni, hány fájlt töröltek (a 31. protokoll új sorát, a törlés pedig érvényben van), és 3) a fájlszámlálás, a létrehozott számlálás és a törölt számlálás követése egy alkönyvtárlistával, amely a számlákat mutatja típusonként. Az átvitt számok szövege is megváltozott, így egyértelműbb, hogy csak a rendszeres fájlok száma.
- HIBAELHÁRÍTÁS:
- Javítva hibát az iconv kódban, ha az EINVAL vagy EILSEQ teljes kimeneti puffert visszaküld.
- Rögzített néhány ritka hibát a --iconv feldolgozásban, amely több tizedes karaktert eredményezhet lefordítva helytelenül.
- A hamis & quot; eltűnt fájl & quot; hiba, ha egyes fájlokat a & quot; ./& quot; előtagok és mások nem.
- Javítva egy hibát - párhuzamosan, ahol egy részleges bejegyzés után extra rés kerülhet be.
- Módosította az utat - a "progresszoldás" felülírja a korábbi kimenetét annak érdekében, hogy szinte lehetetlenné tegye az előrehaladásnak egy hibával való felülírását.
- Javította az abnormális-kilépési hibaüzenetek terjedését. Ez segíteni fogja az ügyfél oldalt abban, hogy hibát észleljen a kiszolgálótól, amikor abnormálisan kilép, és a "váratlanul zárt" kapcsolat is megakadályozza a halált. kilép, ha a zárt kapcsolatot tényleg elvárják.
- A feladó most ellenőriz minden egyes eltávolítani kívánt fájlt, hogy meggyőződjön arról, hogy nem változott meg az első stat infoin. Ez segít elkerülni a fájlok elvesztését, ha a felhasználó nem használja a lehetőséget biztonságos módon.
- Javította az adatduplikációs hibát a tömörítési opcióban, amely a tömörítést kevésbé eredményezte. Ez javítja a 31-es protokollt, miközben kompatibilis (buggyos) módon viselkedik régebbi rsync protokollokkal.
- Amikor létrehoz egy temp-fájl, az rsync most egy kicsit okosabb róla dot-char választás, amely rögzíti a probléma OS X nevű kezdetű & quot; .. & quot;.
- Az Rsync most beállítja a javítási zászlót a --helyére és - áthelyezésekre, amelyek átolvasztják az írópuffert, ha a transzfer megszakad. Ez biztosítja, hogy több beérkezett adatot írjanak le a lemezre egy megszakított átvitel során (ami nagyon hasznos egy lassú, piszkos kapcsolat esetén).
- Az a tény, hogy a map_ptr () mostantól megtörténik, az 1K határokon igazodik. Ez segíti egyes fájlrendszereket és / vagy fájlokat, amelyek nem tetszenek az igazolatlan olvasásoknak.
- A probléma megoldása az msleep () függvényben, ha az idő visszafelé ugrik.
- Fix démon-kiszolgáló-modul-név megosztó hiba, ahol egy arg megszakad, még akkor is, ha a -protect-args-ot használják.
- Tartozékok:
- Hozzáadta a --remote-option = OPT (-M OPT) parancssori opciót, amely olyan dolgokra használható, mint a távoli --log-file = FILE vagy a -fake-super opció elküldése.
- Hozzáadta a --info = FLAGS és a --debug = FLAGS opciókat, hogy finomabb szemmel tartsa a kimenetét. Hozzáadott egy extra típusú --progress kimenetet a --info = progress2 segítségével.
- A --msgs2stderr opció segíthet az rsync hibakeresésén, mivel lehetővé teszi a hibakereső üzenetek kimenetét a stderr felé, ahelyett, hogy a socket protokollon keresztül utazna.
- Hozzáadta a -delete-missing-args és -ignore-missing-args opciókat a feladóban hiányzó, felhasználó által megadott fájlok törléséhez vagy figyelmen kívül hagyásához (általában a felhasználó által megadott fájlok hiánya generál hiba).
- Hozzáadott egy & quot; T & quot; (terabyte) kategória a - ember által olvasható méretű utótagokhoz.
- Hozzáadta a --usermap / - groupmap / - chown opciókat a fájl tulajdonjogának manipulálásához a másolat alatt.
- Hozzáadta a & quot;% C & quot; menekülés a log-output kezeléshez, amely minden átadott fájl MD5 ellenőrzőösszegét vagy az összes fájlt kiadja, ha --checksum van megadva (amikor a 30-as vagy újabb protokoll érvényben van).
- Hozzáadta a & quot; fordított keresés & quot; paramétert az rsync démon konfigurációs fájljába, hogy letilthassa a visszafelé irányuló DNS-leképezést.
- Hozzáadott egy előremutató DNS-keresést a démon gazda számára engedélyezi / tiltja a konfigurációt. Letiltható a & quot; előrekeresés & quot; paramétert (alapértelmezés szerint engedélyezve van).
- Hozzáadott egy módot, hogy egynél több csoportot adjon meg a démon konfigurációs fájljában, beleértve azt a módot is, hogy megadja, hogy az összes megadott felhasználó csoportot meg kívánja-e nevezni. Azt is megváltoztatta a démont, hogy panaszkodjon arról, hogy képtelen megadni a kifejezetten meghatározott uid / gid értékeket, még akkor sem, ha nem egy szuperfelhasználó.
- A démon most megpróbálja elküldeni a hibaüzenetet a pre-xfer exec parancsfájlból, ha nem sikerül.
- Az alt-dest függvények meglévő hierarchiájának használatát javította: Ha egy találatot talál egy alt-dir-ben, akkor egy meglévő fájl fölé kerül. (Meg kell várnunk egy későbbi verziót, mielőtt egy meglévő hierarchia használatakor biztonságban lennénk az egyébként változatlan fájlok attribútum-módosításai.)
- Hozzáadta felhasználó-engedélyezési opciókat és csoport-engedélyezési támogatást a démon & quot; auth users & quot; paramétert.
- Hozzáadott egy módot a démon konfigurációs fájljában lévő referencia-környezeti változókhoz (% VAR% hivatkozások használatával).
- Ha egy nem hivatkozást egy symlink / hard-link / device / special-file-ra cserél, akkor a frissítést atomszerű módon kell elvégezni.
- Kerülje az xattr információ újraküldését a kemény fájlokhoz, ugyanazzal az xattrs-rel (31. protokoll).
- A mentési kódot javítottuk, hogy jobb logikát használjunk, fenntartva a mentési könyvtár hierarchiát. Ha egy fájlt biztonsági másolatot készít, az rsync megpróbálja szorosan összekapcsolni a helyére, hogy a célfájl jövőbeli helyettesítése atomos legyen (a normál, nem beágyazott logikához).
- Hozzáadta a nano-második módosított idő szinkronizálását.
- Hozzáadott még néhány alapértelmezett utótagot a & quot; dont compress & quot; beállításait.
- Hozzáadta az RSYNC_PROTECT_ARGS környezeti változó ellenőrzését, hogy engedélyezze a --protect-args parancssori opció alapértelmezett beállításainak felülbírálását.
- Hozzáadta a --preallocate parancssori beállítást.
- Engedélyezzük a --password-file = - jelszót a stdin (filename & quot; - & quot;) fájlból.
- Az Rsync most egy rsync-ssl helper parancsfájlba van csomagolva, amely egy távoli rsync démonnál egy csöves stunnel parancs használatával használható. Ezenkívül tartalmaz egy stunnel konfigurációs fájlt a kiszolgáló oldal futtatásához az ssl daemon kapcsolatok támogatásához. Tekintse meg a csomagolás / lsb / rsync.spec fájlt az elérhetõ fájlok csomagolásának egyik módjára. (A telepítéshez és használathoz még könnyebbé tenni ezt a javaslatot.)
- Néhány frissítés sebességének javítása, ha sok azonos ellenőrző blokk blokk van, amelyek végül használhatatlanná válnak.
- A kimeneti pufferelés kiválasztásához hozzáadta a --outbuf = N | L | B opciót.
- A --fuzzy opció megismétlése most okozza a kódot, hogy az alt-dest könyvtárakban is fuzzy találatokat keres.
- A --chmod opció most támogatja a numerikus módokat, pl. --chmod = 644, D755
- Hozzáadott néhány Solaris xattr kódot.
- Az rsync démonnal (a hallgatás folyamata) kilépett egy 0 állapotdal, amikor jelezték, hogy meghal. Ez segít elindítani.
- Javította az RSYNC_ * környezeti változókat a pre-xfer exec parancsfájlhoz: ha egy démont több kéréses argumentumot küldenek, akkor egyetlen visszatérési értékhez (szóközzel elválasztva) csatlakoznak, így az RSYNC_REQUEST környezeti változó pontos "pre-xfer exec". Az RSYNC_ARG # vars értékek már nem csonkoltak a "." arg (a kérés dirs / files) előtt úgy, hogy az összes kért érték is szerepel (külön) az RSYNC_ARG # változókban.
- Extrák:
- Hozzáadott egy & quot; instant-rsyncd & quot; parancsfájl a támogatási könyvtárba, ami egyszerűvé teszi az egyszerű rsync démon konfigurálását az aktuális könyvtárban.
- Hozzáadta a & quot; mapfrom & quot; és "mapto" parancsfájlok a támogatási könyvtárba, ami megkönnyíti a felhasználók / csoportok leképezését egy helyi adattovábbításon alapuló passwd / group fájlok alapján egy másik gépen.
- Az lsh parancsfájl új, továbbfejlesztett verziója van a támogatási könyvtárban: Perl-ben van írva, és támogatja -u anélkül, hogy használja a sudo-t (ha rootként működik). A régi shell verzió most neve lsh.sh.
- Segítségnyújtó könyvtárban van egy rsync-slash-strip nevű helper szkript bárkinek, aki meg akarja változtatni az rsync-t, hogy az args-t kezeli a mellékjelekkel. (pl. arg / az argumentumra sztrippant, míg az arg /. arg /) lesz.
- BELSŐ:
- Az I / O kódot átírták, hogy egyszerűbbé váljanak, és a nagyobb pufferelt felolvassa az aljzat felett. A vevőegység és a generátor közötti I / O váltás szabványos multiplexelt I / O-ként (hasonlóan a foglalat felett).
- A küldő megpróbál halasztási időt használni, amíg a generátor átkutatja a fájlokat, hogy jobban párhuzamosan végezze el a feladóoldali könyvtárkeresést.
- A démon most tájékoztathatja az ügyfelet egy démon konfigurált időtúllépési értékéről, hogy az ügyfél támogassa a tartós tevékenységet (31. protokoll).
- A szűrőkód néhány refactoringet kapott, hogy jobban ki lehessen terjeszteni, jobban olvasható, és jobb egészségi ellenőrzést hajtson végre.
- A valóságban nagy számok mostantól a saját nagyszámú rendszereinket használják, ahelyett, hogy duplázni tudnának, és% .0f konverziót használnának.
- A pool_alloc könyvtár kisebb javításokat eredményezett a beállítások kezelésében.
- Hozzáadott init_stat_x () függvény az acl / xattr init kód duplikálásának elkerüléséhez.
- A mellékelt zlib-et a 1.2.3-ból 1.2.8-ig frissítettük.
- Az Rsync most lefordítható egy nem módosított zlib könyvtár használatára az rsync alatt található csípés helyett. Ez végül az alapértelmezett lesz, ekkor elindítjuk a visszaszámlálást a mellékelt zlib eltávolításával. Addig is szabadon konfigurálhatja a következőket:
- ./ configure --with-included-zlib = nem
- FEJLESZTŐ KAPCSOLÓDÓ:
- Hozzáadott további feltételes hibakeresési kimenet.
- Rögzített néhány építési problémát az android és a minix számára.
Az újdonság a 3.0.9-es verzióban Pre1:
- A crash hiba javítása ellenőrző összeggel, amikor - a helyet használjuk.
- A symlink rendszer xattrs (például selinux) rendszerének megőrzése Linux alatt.
- Fix egy hibát a nem írható könyvtárak módosításával.
- Javítsa ki a --fake-super interakciót a --link-dest ugyanazon fájl összehasonlításokkal.
- Javítsa ki a curr_dir puffer frissítését, hogy elkerülje a dupla perjelet.
- A démon-kirekesztett fájlhibák hibásabbá tétele.
- Javítson ki néhány problémát a man oldalak utófeldolgozásával kapcsolatban.
Az újdonság a 3.0.8 verzióban Pre1:
- HIBAELHÁRÍTÁSOK:
- Fix két puffer-túlcsordulási problémát: az egyik, ahol a címtár elérési útvonalát pontosan a MAXPATHLEN nem megfelelően kezelte, és egy, a extra extra nagy kiterjesztésű --backup-dir-t.
- Javított egy adatkémiai problémát, amikor a hardverkapcsolatokat megőrzi a fájl tulajdonjogának megőrzése nélkül, és törli a törléseket az átvitel előtt vagy alatt. Ez javítja a keménykötéskódban szereplő bizonyos hibák megállapítását, valamint egyes esetleges sikertelen ellenőrzőösszegeket (a -c-nél), amelyeknek meg kellett volna egyezniük.
- Megkínálta a potenciális összeomlást, ha egy rsync démonnak van szűrő / kizáró listája, és az átvitel ACL-eket vagy xattrs-eket használ.
- Rögzített hang, ha egy nagyon nagy fájl egy rsync által feldolgozik, amely nem tudja kezelni a 64 bites számokat. Az Rsync most panaszkodik arról, hogy a fájl túl nagy, és kihagyja.
- Eszközökre és speciális fájlokra most elkerüljük a haszontalan ACL és / vagy xattr információk összegyűjtését a nem másolandó fájlokhoz. (A nem másolt fájlok még mindig szerepelnek a fájllistában, de nincs szükség arra, hogy összegyűjtsék azokat az adatokat, amelyeket nem fognak használni.) Ez biztosítja, hogy ha a felhasználó a --no-D-t használja, akkor az rsync nem panaszkodhat arról, hogy nem képes összegyűjteni a kiterjesztett információkat a fájllistán található speciális fájlokról (de nem az átvitel során).
- Megfelelően kezelheti a távoli fájlneveket, amelyek egy kötőjellel kezdődnek. Ezzel elkerülhető egy esetleges hiba, ha a fájlnév (általában érvénytelen) opcióként értelmezhető.
- Fix hiba a nagybetűk összehasonlításakor a file-utótagokhoz a --skip-tömörítéshez.
- Ha egy rsync démon egy útvonal beállítás nélkül konfigurált modulot tartalmaz, az rsync most letiltja a hozzáférést az adott modulhoz.
- Ha a cél-argumentum üres karakterlánc, akkor az az aktuális könyvtár hivatkozásaként fog megjelenni (a 2.x-ben használt).
- Ha az rsync egy újabb időbeállítási függvénnyel áll össze (például a lutimes), az rsync vissza fog térni egy olyan régebbi függvényre (például utimesre), ahol az újabb függvény nincs körülvéve. Ez segít abban, hogy az rsync bináris több hordozható vegyes OS kiadás esetén.
- Javítva egy olyan kötegfájl-írási hibát, amely nem írja le az átvitellel használt kompatibilitási zászlók teljes készletét. Ez megoldja a potenciális protokollproblémát egy olyan küldeményoldali I / O hibát tartalmazó kötegfájl esetén, amelyet a kötegolvasó nem várta el.
- Néhány javítás a keménykötéskóddal kapcsolatban annak biztosítása érdekében, hogy az eszközszám-hashatolás megfelelően működjön, és további információkat szolgáltasson, ha a hardverkód nem sikerül.
- A "inplace" kódot javítottuk, hogy ne keressen egy lehetetlen ellenőrzőösszeg pozíciót. A négyes verbose chunk [N] üzenet most megemlíti, hogy egy inplace-darabot egy kereső, nem pedig egy olvasás + írása kezel.
- Ha nem sikerül csatlakozni egy rsync démonhoz, jelentse be az összes csatlakozási hibát (pl. IPv4 és IPv6), nem csak az utolsóat.
- Javított ACL maszkkezelés, pl. a Solaris számára.
- Megoldott egy hibát, ahol egy alt-dest opciót használó xattr és / vagy ACL átvitel (pl. -link-dest) hibát okozhat, ha megpróbálta elemezni a változásokat az alt-dest könyvtár xattr / ACL info hanem megpróbálja elérni a még nem létező új célkönyvtárat.
- Javított xattr rendszerhibaüzenetek, amelyek megemlítik a fájl teljes elérési útját.
- Az azonos szimbolikus linkkapcsolat-ellenőrzés megakadályozza az attribútum különbségek figyelembevételét, amelyek nem változtathatók meg a vevőkészüléken.
- Kerülje az egyes operációs rendszerű fájlok egyes fájltípusaira vonatkozó xattrs olvasásának / írásának megakadályozását. A konfiguráció beállítása a NO_SYMLINK_XATTRS, a NO_DEVICE_XATTRS és / vagy a NO_SPECIAL_XATTRS beállításához a config.h alatt van meghatározva.
- Javította a nem biztonságos symlink hibaüzeneteket.
- Javítva a xattrs hibakezelést olyan új fájlokra, amelyek nem írhatók felhasználónak.
- Fix hibát talált a --fake-super fájlok és dirsek másolásakor, amelyek nem írhatók felhasználónak.
- Javítva egy olyan hibát, ahol egy ritka fájlnak az utolsó ritka blokkja lett volna egy igazi blokk, amikor az rsync beállítja a fájlméretet (ftruncate szükséges).
- Ha a temp-fájl neve túl hosszú, akkor az rsync most elkerüli a név csonkolását a szomszédos nagybetűs karakterek közepén. Ez megakadályozza a fájlnév hibáját, ha a fájlrendszer nem engedélyezi a név érvénytelen többbájtos sorozatot.
- Ha egy muli-protokoll-aljzat-kapcsolat sikertelen (azaz amikor egy démonhoz fordul), akkor minden hibát bejelentünk, nem csak az utolsóat. Ezzel elkerülhető a végső hiba (például egy IPv6 protokoll által nem támogatott hiba) előtt bekövetkezett hiba (például IPv4-kapcsolat-elutasított hiba) elvesztése.
- Átviteli hiba generálása, ha megpróbálunk hívni egy -1-et egy uid vagy egy gid (amely nem állítható be).
- Erősen törölte a fájlt a -one-fájlrendszerrel.
- Javítsd meg a pop-argumentum-elemzést, hogy egy olyan argumentum, amely nem vesz egy argumentumot, elutasítja az egyiket.
- Néhány kisebb opció csípődik a / rrsync parancsfájl támogatásához, valamint néhány regex változás, amely a vim-et a boldogabbá nyilvánítja.
- Javítva néhány problémát a support / mnt-excl szkriptben.
- Néhány manpage fejlesztés.
- Tartozékok:
- Hozzáadott ".hg /" az alapértelmezett cvs kizárja (lásd: & & Cvs-exclude).
- FEJLESZTŐ KAPCSOLÓDÓ:
- Használja az lchmod () függvényt, ha rendelkezésre áll (nem csak a szimbolikus linkeken).
- Egy pár fix az socketpair_tcp () rutinhoz.
- Frissítette a helper szkripteket a csomagolás alkönyvtárában.
- A configure.in átnevezte a configure.ac fájlt.
Újdonság a 3.0.6 verzióban:
- Javítva a --read-batch hangot, amikor az rsync egy növekményes rekurziós átvitelből létrehozott kötegfájlt olvas.
- Javította a démon socket kódját, hogy kezelje a több kapcsolat egyidejű érkezését.
- Fix --szalag-linkek / - copy-unsafe-linkek, amelyek megfelelően kezelik a szimbólumokat, amelyek egymást követő szeleteket tartalmaznak az értékben.
- Javította az [IPv6_LITERAL_ADDR] elemzését, ha egy USER @ előtag van.
- A feladó most átugrik egy (hamis) szimbolikus linket, amelynek 0-szoros értéke van, így elkerülhető a vevőben lévő átviteli hiba.
- Megoldott egy esetet, ahol a feladó egy 0-os hibával halhatott volna meg, ha van egy I / O a fájllista elküldése közben.
- Javítva a rrsync szkriptet, hogy elkerülje a kiszolgálóoldali problémát, amikor -e a rövid opciók elején van.
- Megoldott egy problémát, ahol egy eltűnt könyvtár a megfelelő 24 kilépési kód helyett 23 kimeneti kódká alakulhat.
- Javítva a szimbolikus linkek --iconv átalakítását helyi példány készítésénél.
- Megoldott egy olyan problémát, ahol a -one fájlrendszer nem állította le a törléseket a fogadó oldalon, amikor egy csatolási pont könyvtár nem egyezik az átvitelhez tartozó könyvtárral.
- Meghatározta az ACL-maszk leesését, ha nincsenek elnevezett ACL-értékek.
- Fix ACL / xattr korrupciós probléma, ahol a --backup lehetőség az rsync-t a rossz ACL / xattr információkhoz a kapott fájlokhoz társíthatja.
- Javította a --xattrs használatát - csak-ír-tétel használatával.
- Javította a --dry-run használatát a --read-batch használatával.
- Fix konfiguráció téves célfelhasználás.
- Fix konfiguráció - disable-debug lehetőség.
- Megoldott egy futásidejű problémát az olyan rendszerek számára, amelyek nem találják az iconv_open () -et a --disable-iconv-open configure opció hozzáadásával.
- Panaszolja és meghal, ha a felhasználó a --remove-source-fájlokat (vagy az elavult -remove-sent-fájlokat) kombinálja a --read-batch-el.
- Meghatározta a speciális fájlok Solarisről Linuxra történő átvitelének hibáját.
Hozzászólás nem található