azcopy sync

Replikálja a forráshelyet a célhelyre. Ez a cikk részletesen ismerteti az azcopy sync parancsot. Ha többet szeretne megtudni a blobok forrás- és célhelyek közötti szinkronizálásáról, olvassa el a Szinkronizálás az Azure Blob Storage-tal az AzCopy v10 használatával című témakört. Az Azure Files esetében lásd a Fájlok szinkronizálása című témakört.

Szinopszis

A rendszer az utolsó módosított időpontokat használja az összehasonlításhoz. A program kihagyja a fájlt, ha a célhely utolsó módosítási ideje újabb. Másik lehetőségként a jelölő használatával csak az --compare-hash MD5 kivonatban eltérő fájlokat továbbíthatja. A támogatott párok a következők:

  • Helyi <–> Azure Blob/Azure-fájl (SAS- vagy OAuth-hitelesítés is használható)
  • Azure Blob <–> Azure Blob (SAS- vagy OAuth-hitelesítés is használható)
  • Azure File <–> Azure File (a forrásnak SAS-t kell tartalmaznia, vagy nyilvánosan elérhető; SAS-hitelesítést kell használni a célhelyhez)
  • Azure Blob <–> Azure-fájl

A szinkronizálási parancs többféleképpen különbözik a másolási parancstól:

  1. Alapértelmezés szerint a rekurzív jelző igaz, és a szinkronizálás az összes alkönyvtárat átmásolja. A szinkronizálás csak a legfelső szintű fájlokat másolja egy könyvtárba, ha a rekurzív jelző hamis.
  2. A virtuális könyvtárak közötti szinkronizáláskor adjon hozzá egy záró perjelet az elérési úthoz (tekintse meg a példákat), ha egy olyan blob van, amelynek a neve megegyezik az egyik virtuális könyvtár nevével.
  3. Ha a "delete-destination" jelző értéke true (igaz) vagy "prompt", akkor a szinkronizálás törli a forrásnál nem található fájlokat és blobokat a célhelyen.

Irányelvek

Alapértelmezés szerint a szinkronizálási parancs összehasonlítja a fájlneveket és a legutóbb módosított időbélyegeket. Ezt a viselkedést felülbírálhatja úgy, hogy az utolsó módosított időbélyegek helyett MD5-kivonatokat használjon a --compare-hash jelölő használatával. Állítsa az --delete-destination opcionális jelzőt a célkönyvtárban lévő fájlok értékére true vagy prompt törlésére, ha ezek a fájlok már nem léteznek a forráskönyvtárban.

  • Ha a jelzőt úgy állítja be, hogy trueaz --delete-destination AzCopy kérés nélkül törli a fájlokat. Ha azt szeretné, hogy egy üzenet jelenjen meg, mielőtt az AzCopy töröl egy fájlt, állítsa a jelölőt a --delete-destination következőre prompt: .

  • Ha azt tervezi, hogy a jelölőt promptfalse--delete-destination a szinkronizálásiparancs helyett a másolási parancsot használja, és állítsa a paramétert a --overwrite következőreifSourceNewer: . A másolási parancs kevesebb memóriát használ fel, és kevesebb számlázási költséget eredményez, mivel a másolási műveletnek nem kell indexelnie a forrást vagy a célhelyet a fájlok áthelyezése előtt.

  • Ha nem tervezi használni a --compare-hash jelölőt, akkor a szinkronizálási parancsot futtató gépnek pontos rendszerórával kell rendelkeznie, mivel az utolsó módosítási időpontok kritikus fontosságúak annak meghatározásához, hogy át kell-e vinni egy fájlt. Ha a rendszer óraátállítása jelentős, ne módosítsa a fájlokat a célhelyen túl közel ahhoz az időponthoz, amikor szinkronizálási parancsot szeretne futtatni.

  • Az AzCopy kiszolgálóról kiszolgálóra történő API-kat használ az adatok tárfiókok közötti szinkronizálására. Ez azt jelenti, hogy az adatok másolása közvetlenül a tárolókiszolgálók között történik. Az AzCopy azonban beállítja és figyeli az egyes átviteleket, és nagyobb tárfiókok (például több millió blobot tartalmazó fiókok) esetében az AzCopy jelentős mennyiségű számítási erőforrást igényelhet ezeknek a feladatoknak a elvégzéséhez. Ezért ha az AzCopyt virtuális gépről (VM) futtatja, győződjön meg arról, hogy a virtuális gép elegendő maggal/memóriával rendelkezik a terhelés kezeléséhez.

  • Blob Storage esetén megelőzheti a véletlen törléseket, ha a jelölő használata --delete-destination=prompt|true előtt engedélyezi a helyreállítható törlés funkciót.

Felsőfokú

Vegye figyelembe, hogy ha nem ad meg fájlkiterjesztést, az AzCopy automatikusan észleli a fájlok tartalomtípusát a helyi lemezről való feltöltéskor a fájlkiterjesztés vagy a tartalom alapján.

A beépített keresési tábla kicsi, de Unix esetén a helyi rendszer mime.types fájl(ok) bővíti, ha egy vagy több ilyen név alatt elérhető:

  • /etc/mime.types
  • /etc/apache2/mime.types
  • /etc/apache/mime.types

Windows rendszeren a RENDSZER kinyeri a MIME-típusokat a beállításjegyzékből.

Alapértelmezés szerint a szinkronizálás az utolsó módosított időpontokban működik, hacsak nem bírálja felül ezt az alapértelmezett viselkedést a --compare-hash jelölő használatával. Az Azure File <–> Azure File esetében tehát az x-ms-file-change-time helyett a Last-Modified fejlécmezőt használja a rendszer, ami azt jelenti, hogy a forrás metaadatainak módosítása teljes másolatot is aktiválhat.

azcopy sync [flags]

Példák

Egyetlen fájl szinkronizálása:

azcopy sync "/path/to/file.txt" "https://[account].blob.core.windows.net/[container]/[path/to/blob]"

A fentiekhez hasonlóan, de számítson ki egy MD5 kivonatot a fájl tartalmáról, majd mentse az MD5 kivonatot a blob Content-MD5 tulajdonságaként.

azcopy sync "/path/to/file.txt" "https://[account].blob.core.windows.net/[container]/[path/to/blob]" --put-md5

Egy teljes könyvtár szinkronizálása az alkönyvtárakkal együtt (vegye figyelembe, hogy a rekurzív alapértelmezés szerint be van kapcsolva):

azcopy sync "/path/to/dir" "https://[account].blob.core.windows.net/[container]/[path/to/virtual/dir]" vagy azcopy sync "/path/to/dir" "https://[account].blob.core.windows.net/[container]/[path/to/virtual/dir]" --put-md5

Csak a könyvtáron belüli fájlokat szinkronizálja, alkönyvtárakat és alkönyvtárakon belüli fájlokat nem:

azcopy sync "/path/to/dir" "https://[account].blob.core.windows.net/[container]/[path/to/virtual/dir]" --recursive=false

Fájlok egy részhalmazának szinkronizálása egy könyvtárban (például csak jpg- és pdf-fájlok, vagy ha a fájl neve "exactName"):

azcopy sync "/path/to/dir" "https://[account].blob.core.windows.net/[container]/[path/to/virtual/dir]" --include-pattern="*.jpg;*.pdf;exactName"

Egy teljes könyvtár szinkronizálása, de bizonyos fájlok kizárása a hatókörből (például minden olyan fájl, amely foo-val kezdődik vagy sávdal végződik):

azcopy sync "/path/to/dir" "https://[account].blob.core.windows.net/[container]/[path/to/virtual/dir]" --exclude-pattern="foo*;*bar"

Egyetlen blob szinkronizálása:

azcopy sync "https://[account].blob.core.windows.net/[container]/[path/to/blob]?[SAS]" "https://[account].blob.core.windows.net/[container]/[path/to/blob]"

Virtuális könyvtár szinkronizálása:

azcopy sync "https://[account].blob.core.windows.net/[container]/[path/to/virtual/dir]?[SAS]" "https://[account].blob.core.windows.net/[container]/[path/to/virtual/dir]" --recursive=true

Szinkronizáljon egy blob nevével megegyező nevű virtuális könyvtárat (a egyértelműség érdekében adjon hozzá egy záró perjelet az elérési úthoz):

azcopy sync "https://[account].blob.core.windows.net/[container]/[path/to/virtual/dir]/?[SAS]" "https://[account].blob.core.windows.net/[container]/[path/to/virtual/dir]/" --recursive=true

Azure File-címtár szinkronizálása (a Blob szintaxisa megegyezik):

azcopy sync "https://[account].file.core.windows.net/[share]/[path/to/dir]?[SAS]" "https://[account].file.core.windows.net/[share]/[path/to/dir]" --recursive=true

Megjegyzés: ha együtt használják a belefoglalási és kizárási jelölőket, a rendszer csak a belefoglalási mintákkal egyező fájlokat használja, a kizárási mintáknak megfelelőket azonban figyelmen kívül hagyja.

Beállítások

--block-size-mb (lebegőpontos) Használja ezt a blokkméretet (a MiB-ben megadva) az Azure Storage-ba való feltöltéskor vagy az Azure Storage-ból való letöltéskor. A rendszer automatikusan kiszámítja az alapértelmezett értéket a fájlméret alapján. Tizedes törtek megengedettek (például: 0,25). Feltöltéskor vagy letöltéskor a maximálisan engedélyezett blokkméret 0,75 * AZCOPY_BUFFER_GB. További információ: Memóriahasználat optimalizálása.

--check-md5 (sztring) Meghatározza, hogy a letöltéskor milyen szigorúan érvényesíteni kell az MD5-kivonatokat. Ez a lehetőség csak letöltéskor érhető el. Az elérhető értékek a következők: NoCheck, LogOnly, FailIfDifferent, FailIfDifferentOrMissing. (alapértelmezett "FailIfDifferent"). (alapértelmezett "FailIfDifferent")

--cpk-by-name (sztring) Az ügyfél által megadott név alapján megadott kulcs lehetővé teszi az Azure Blob Storage-ra irányuló kéréseket intéző ügyfelek számára, hogy kérésenként adjanak meg egy titkosítási kulcsot. A megadott kulcsnév le lesz hívva az Azure Key Vaultból, és az adatok titkosítására lesz használva

--cpk-by-value Az ügyfél által megadott név alapján megadott kulcs lehetővé teszi az Azure Blob Storage-ra irányuló kéréseket intéző ügyfelek számára, hogy kérésenként adjanak meg egy titkosítási kulcsot. A megadott kulcs és kivonata környezeti változókból lesz lekérve

--delete-destination (sztring) Meghatározza, hogy töröljön-e további fájlokat a forrásnál nem található célhelyről. Lehet igaz, hamis vagy parancssor. Ha a rendszer kéri, a rendszer kérdéseket tesz fel a felhasználónak a fájlok és blobok törlésre való ütemezése előtt. (alapértelmezett 'false'). (alapértelmezett "false")

--dry-run A szinkronizálási parancs által másolt vagy eltávolított fájlok elérési útját nyomtatja ki. Ez a jelző nem másolja vagy távolítja el a tényleges fájlokat.

--exclude-attributes (sztring) (csak Windows rendszeren) Zárja ki azokat a fájlokat, amelyek attribútumai megegyeznek az attribútumlistával. Például: A; S; R

--exclude-path (sztring) Zárja ki ezeket az elérési utakat, amikor összehasonlítja a forrást a célhellyel. Ez a beállítás nem támogatja a helyettesítő karaktereket (*). Relatív elérési út előtagjának ellenőrzése (például: myFolder; myFolder/subDirName/file.pdf).

--exclude-pattern (sztring) Zárja ki azokat a fájlokat, ahol a név megegyezik a mintalistával. Például: .jpg;. Pdf; exactName

--exclude-regex (sztring) Zárja ki a normál kifejezésekkel egyező fájlok relatív elérési útját. A reguláris kifejezések elkülönítése az ";" kifejezéssel.

--force-if-read-only Ha felülír egy meglévő fájlt a Windows vagy az Azure Files rendszeren, akkor is kényszerítse a felülírást, ha a meglévő fájl írásvédett attribútumkészlettel rendelkezik.

--from-to (sztring) Opcionálisan megadja a forrás célkombinációt. Például: LocalBlob, BlobLocal, LocalFile, FileLocal, BlobFile, FileBlob stb.

-h, --help súgó a szinkronizáláshoz

--include-attributes (sztring) (csak Windows rendszeren) Csak olyan fájlokat adjon meg, amelyek attribútumai megegyeznek az attribútumlistával. Például: A; S; R

--include-pattern (sztring) Csak olyan fájlokat adjon meg, ahol a név megegyezik a mintalistával. Például: .jpg;. Pdf; exactName

--include-regex (sztring) Adja meg a normál kifejezésekkel egyező fájlok relatív elérési útját. A reguláris kifejezések elkülönítése az ";" kifejezéssel.

--log-level (sztring) Adja meg a naplófájl részletességét, a rendelkezésre álló szinteket: INFO (minden kérés és válasz), WARNING(lassú válaszok), ERROR (csak sikertelen kérések) és NONE (nincs kimeneti napló). (alapértelmezett INFORMÁCIÓ). (alapértelmezett "INFO")

--mirror-mode Tiltsa le a legutóbb módosított időpontalapú összehasonlítást, és felülírja az ütköző fájlokat és blobokat a célhelyen, ha ez a jelző igaz értékre van állítva. Az alapértelmezett érték hamis

--put-blob-size-mb Használja ezt a méretet (a MiB-ben megadva) küszöbértékként annak meghatározásához, hogy egy blobot egyetlen PUT-kérésként kell-e feltölteni az Azure Storage-ba való feltöltéskor. A rendszer automatikusan kiszámítja az alapértelmezett értéket a fájlméret alapján. Tizedes törtek megengedettek (például: 0,25).

--preserve-permissions Alapértelmezés szerint hamis. Megőrzi az ACL-eket a tudatos erőforrások (Windows és Azure Files, illetve ADLS Gen 2–ADLS Gen 2) között. Hierarchikus névtérfiókok esetén szükség lesz egy tároló SAS- vagy OAuth-jogkivonatára, amely rendelkezik a Tulajdonos módosítása és az Engedélyek módosítása engedélyekkel. Letöltések esetén a jelölőre is szüksége lesz az --backup engedélyek visszaállításához, ha az új tulajdonos nem az AzCopyt futtató felhasználó lesz. Ez a jelző fájlokra és mappákra egyaránt vonatkozik, kivéve, ha csak fájlszűrő van megadva (például belefoglalási minta).

--preserve-smb-info Az SMB-t ismerő helyek esetében a jelölő alapértelmezés szerint igaz értékre lesz állítva. Megőrzi az SMB-tulajdonság adatait (utolsó írási idő, létrehozási idő, attribútumbitek) az SMB-val kapcsolatos erőforrások (Azure Files) között. Ez a jelző fájlokra és mappákra egyaránt vonatkozik, kivéve, ha csak fájlszűrő van megadva (például belefoglalási minta). A mappákhoz átvitt adatok megegyeznek a fájlok adataival, kivéve az utolsó írási időt, amely a mappák esetében nem marad meg. (alapértelmezett igaz)

--put-md5 Hozzon létre egy MD5 kivonatot az egyes fájlokról, és mentse a kivonatot a célblob vagy fájl Content-MD5 tulajdonságaként. (Alapértelmezés szerint a kivonat NEM jön létre.) Csak feltöltéskor érhető el.

--recursive Alapértelmezés szerint igaz, ha rekurzívan vizsgálja meg az alkönyvtárakat a könyvtárak közötti szinkronizáláskor. (alapértelmezett igaz). (alapértelmezett igaz)

--s2s-preserve-access-tier A szolgáltatási szint megőrzése a szolgáltatás másolása során. Tekintse meg az Azure Blob Storage-t: gyakori elérésű, ritka elérésű és archív hozzáférési szintek , amelyek biztosítják, hogy a céltárfiók támogatja a hozzáférési szint beállítását. Ha a hozzáférési szint beállítása nem támogatott, használja s2sPreserveAccessTier=false a másolási hozzáférési szint megkerüléséhez. (alapértelmezett igaz). (alapértelmezett igaz)

--s2s-preserve-blob-tags Indexcímkék megőrzése szolgáltatásról szolgáltatásra történő szinkronizálás során az egyik blobtárolóból a másikba

A szülőparancsoktól örökölt beállítások

--cap-mbps (lebegőpontos) Az átviteli sebesség leértékelődése megabit/másodpercben. A pillanatonkénti átviteli sebesség kissé eltérhet a korláttól. Ha ez a beállítás nullára van állítva, vagy nincs megadva, az átviteli sebesség nincs leképezve.

--output-type (sztring) A parancs kimenetének formátuma. A lehetőségek közé tartozik: szöveg, json. Az alapértelmezett érték a "szöveg". (alapértelmezett "szöveg")

--trusted-microsoft-suffixes (sztring) Más tartomány utótagjait adja meg, ahol a Microsoft Entra bejelentkezési jogkivonatok elküldhetők. Az alapértelmezett érték a ".core.windows.net;. core.chinacloudapi.cn;. core.cloudapi.de;. core.usgovcloudapi.net;*.storage.azure.net". Az itt felsoroltak az alapértelmezett értékhez lesznek hozzáadva. A biztonság érdekében csak Microsoft Azure-tartományokat helyezzen ide. Több bejegyzés elkülönítése pontosvesszővel.

Lásd még