Aracılığıyla paylaş


azcopy eşitleme

Kaynak konumu hedef konuma çoğaltır. Bu makalede azcopy sync komutu için ayrıntılı bir başvuru sağlanır. Blobları kaynak ve hedef konumlar arasında eşitleme hakkında daha fazla bilgi edinmek için bkz . AzCopy v10 kullanarak Azure Blob depolama ile eşitleme. Azure Dosyalar için bkz. Dosyaları eşitleme.

Özet

Son değiştirme süreleri karşılaştırma için kullanılır. Hedefteki son değiştirme zamanı daha yeniyse dosya atlanır. Alternatif olarak, bayrağını --compare-hash yalnızca MD5 karmalarındaki farklı dosyaları aktarmak için kullanabilirsiniz. Desteklenen çiftler şunlardır:

  • Yerel <-> Azure Blobu / Azure Dosyası (SAS veya OAuth kimlik doğrulaması kullanılabilir)
  • Azure Blob <-> Azure Blob (SAS veya OAuth kimlik doğrulaması kullanılabilir)
  • Azure Dosyası <-> Azure Dosyası (Kaynak sas içermelidir veya genel olarak erişilebilir; Hedef için SAS kimlik doğrulaması kullanılmalıdır)
  • Azure Blob <-> Azure Dosyası

Eşitleme komutu kopyalama komutundan çeşitli yollarla farklıdır:

  1. Varsayılan olarak özyinelemeli bayrağı true olur ve eşitleme tüm alt dizinleri kopyalar. Özyinelemeli bayrağı false ise, eşitleme yalnızca dizin içindeki en üst düzey dosyaları kopyalar.
  2. Sanal dizinler arasında eşitleme yaparken, sanal dizinlerden biriyle aynı ada sahip bir blob varsa yola sondaki eğik çizgiyi ekleyin (örneklere bakın).
  3. 'delete-destination' bayrağı true veya prompt olarak ayarlanırsa, eşitleme hedefte bulunan ve kaynakta bulunmayan dosyaları ve blobları siler.

Yönergeler

Varsayılan olarak, eşitleme komutu dosya adlarını ve son değiştirilen zaman damgalarını karşılaştırır. Bayrağını kullanarak --compare-hash son değiştirilen zaman damgaları yerine MD5 karmalarını kullanmak için bu davranışı geçersiz kılabilirsiniz. --delete-destination bu dosyalar artık kaynak dizinde yoksa hedef dizindeki dosyaları silmek için isteğe bağlı bayrağını veya prompt değerine true ayarlayın.

  • bayrağını --delete-destinationtrueolarak ayarlarsanız, AzCopy bir istem sağlamadan dosyaları siler. AzCopy bir dosyayı silmeden önce bir istem gösterilmesini istiyorsanız bayrağını --delete-destination olarak promptayarlayın.

  • bayrağını veya olarak ayarlamayı --delete-destination planlıyorsanız, eşitleme komutu yerine copy komutunu kullanmayı ve parametresini olarak ifSourceNewerayarlamayı --overwrite düşünün.falseprompt Kopyalama işlemi dosyaları taşımadan önce kaynak veya hedefi dizine almak zorunda olmadığından kopyalama komutu daha az bellek tüketir ve daha az faturalama maliyetine neden olur.

  • Bayrağı kullanmayı --compare-hash planlamıyorsanız, eşitleme komutunu çalıştırdığınız makinede doğru bir sistem saati olmalıdır çünkü son değiştirme süreleri dosyanın aktarılıp aktarılmayacağını belirlemede kritik önem taşır. Sisteminizde önemli bir saat dengesizliği varsa, eşitleme komutunu çalıştırmayı planladığınız zamana çok yakın olan hedefte dosyaları değiştirmekten kaçının.

  • AzCopy, verileri depolama hesapları arasında eşitlemek için sunucudan sunucuya API'leri kullanır. Bu, verilerin doğrudan depolama sunucuları arasında kopyalandığını gösterir. Ancak, AzCopy her aktarımı ayarlayıp izler ve daha büyük depolama hesapları için (örneğin, milyonlarca blob içeren hesaplar), AzCopy bu görevleri gerçekleştirmek için önemli miktarda işlem kaynağı gerektirebilir. Bu nedenle, AzCopy'yi Sanal Makineden (VM) çalıştırıyorsanız, VM'nin yükü işlemek için yeterli çekirdeğe/belleğe sahip olduğundan emin olun.

  • Blob Depolama için, bayrağı kullanmadan önce geçici silme özelliğini etkinleştirerek yanlışlıkla silmeleri --delete-destination=prompt|true önleyebilirsiniz.

Gelişmiş

Bir dosya uzantısı belirtmezseniz, AzCopy'nin dosya uzantısına veya içeriğe bağlı olarak yerel diskten karşıya yüklerken dosyaların içerik türünü otomatik olarak algıladığını unutmayın.

Yerleşik arama tablosu küçüktür ancak Unix'te bu adlardan biri veya daha fazlası altında varsa yerel sistemin mime.types dosyaları tarafından genişletilir:

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

Windows'da, MIME türleri kayıt defterinden ayıklanır.

Varsayılan olarak eşitleme, bayrağını kullanarak bu varsayılan davranışı geçersiz kılmadığınız sürece son değiştirilen saatlerin --compare-hash dışında çalışır. Bu nedenle Azure Dosya <-> Azure Dosyası söz konusu olduğunda, x-ms-file-change-time yerine Last-Modified üst bilgi alanı kullanılır ve bu da kaynaktaki meta veri değişikliklerinin tam kopyayı tetikleyebileceği anlamına gelir.

azcopy sync [flags]

Örnekler

Tek bir dosyayı eşitleme:

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

Yukarıdakiyle aynıdır, ancak dosya içeriğinin MD5 karması da hesaplanır ve ardından bu MD5 karması blobun Content-MD5 özelliği olarak kaydedilir.

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

Alt dizinleri de dahil olmak üzere bir dizinin tamamını eşitleyin (özyinelemenin varsayılan olarak açık olduğunu unutmayın):

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

Yalnızca dizinin içindeki dosyaları eşitleyin ancak alt dizinleri veya alt dizinlerin içindeki dosyaları eşitleyin:

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

Dizindeki dosyaların bir alt kümesini eşitleyin (Örneğin: yalnızca jpg ve pdf dosyaları veya dosya adı "exactName" ise):

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

Dizinin tamamını eşitleyin ancak belirli dosyaları kapsam dışında tutun (Örneğin: foo ile başlayan veya çubukla biten her dosya):

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

Tek bir blobu eşitleme:

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

Sanal dizini eşitleme:

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

Blobla aynı ada sahip bir sanal dizini eşitleyin (belirsizliği çözmek için yola sondaki eğik çizgi ekleyin):

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 Dosya dizinini eşitleme (Blob ile aynı söz dizimi):

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

Not: Ekleme ve dışlama bayrakları birlikte kullanılırsa, yalnızca ekleme desenleriyle eşleşen dosyalar kullanılır, ancak dışlama desenleriyle eşleşen dosyalar yoksayılır.

Seçenekler

--block-size-mb(kayan) Azure Depolama'a yüklerken veya Azure Depolama'dan indirirken bu blok boyutunu (MiB'de belirtilen) kullanın. Varsayılan değer, dosya boyutuna göre otomatik olarak hesaplanır. Ondalık kesirlere izin verilir (Örneğin: 0,25). Karşıya yükleme veya indirme sırasında izin verilen en büyük blok boyutu 0,75 * AZCOPY_BUFFER_GB'dir. Daha fazla bilgi edinmek için bkz . Bellek kullanımını iyileştirme.

--check-md5 (dize) İndirilirken MD5 karmalarının ne kadar kesin olarak doğrulanması gerektiğini belirtir. Bu seçenek yalnızca indirilirken kullanılabilir. Kullanılabilir değerler şunlardır: NoCheck, LogOnly, FailIfDifferent, FailIfDifferentOrMissing. (varsayılan 'FailIfDifferent'). (varsayılan "FailIfDifferent")

--compare-hash (dize) Son Değiştirme Zamanı'na (LMT) alternatif olarak karmalara güvenmek için eşitlemeyi bilgilendirin. Uzak kaynakta eksik karmalar hataya neden olur. (Yok, MD5) Varsayılan: Yok (varsayılan "Yok")

--cpk-by-name (dize) İstemci adıyla sağlanan anahtar, Azure Blob depolamaya yönelik istekte bulunan istemcilerin istek başına bir şifreleme anahtarı sağlama seçeneği sunmasına olanak tanır. Sağlanan anahtar adı Azure Key Vault'tan getirilir ve verileri şifrelemek için kullanılır

--cpk-by-value İstemci adıyla sağlanan anahtar, Azure Blob depolamaya yönelik istekte bulunan istemcilerin istek başına bir şifreleme anahtarı sağlama seçeneği sunmasına olanak tanır. Sağlanan anahtar ve karması ortam değişkenlerinden getirilir

--delete-destination (dize) Hedeften kaynakta bulunmayan ek dosyaların silinip silinmeyeceğini tanımlar. true, false veya prompt olarak ayarlanabilir. İstenecek şekilde ayarlanırsa, silinmek üzere dosyaları ve blobları zamanlamadan önce kullanıcıya bir soru sorulur. (varsayılan 'false'). (varsayılan "false")

--dry-run Eşitleme komutuyla kopyalanacak veya kaldırılacak dosyaların yolunu yazdırır. Bu bayrak gerçek dosyaları kopyalamaz veya kaldırmaz.

--exclude-attributes (dize) (Yalnızca Windows) Öznitelikleri öznitelik listesiyle eşleşen dosyaları hariç tutun. Örneğin: A; S; R

--exclude-path (dize) Kaynağı hedefle karşılaştırırken bu yolları hariç tutun. Bu seçenek joker karakterleri (*) desteklemez. Göreli yol ön eklerini denetler(Örneğin: myFolder; myFolder/subDirName/file.pdf).

--exclude-pattern (dize) Adın desen listesiyle eşleştiği dosyaları hariç tutun. Örneğin: .jpg;. Pdf; exactName

--exclude-regex (dize) Normal ifadelerle eşleşen dosyaların göreli yolunu hariç tutun. Normal ifadeleri ';' ile ayırın.

--force-if-read-onlyWindows veya Azure Dosyalar'da var olan bir dosyanın üzerine yazılırken, var olan dosyanın salt okunur öznitelik kümesi olsa bile üzerine yazmayı çalışmaya zorlar.

--from-to (dize) İsteğe bağlı olarak kaynak hedef bileşimini belirtir. Örneğin: LocalBlob, BlobLocal, LocalFile, FileLocal, BlobFile, FileBlob vb.

-h, --help eşitleme için yardım

--include-attributes (dize) (Yalnızca Windows) Yalnızca öznitelikleri öznitelik listesiyle eşleşen dosyaları ekleyin. Örneğin: A; S; R

--include-pattern (dize) Yalnızca adın desen listesiyle eşleştiği dosyaları ekleyin. Örneğin: .jpg;. Pdf; exactName

--include-regex (dize) Normal ifadelerle eşleşen dosyaların göreli yolunu ekleyin. Normal ifadeleri ';' ile ayırın.

--hash-meta-dir kullanırken --local-hash-storage-mode=HiddenFiles, karma meta veri dosyalarının depolanacağı alternatif bir dizin belirtebilirsiniz (kaynaktaki ilgili dosyaların yanında değil).

--local-hash-storage-mode Dosya karmalarını önbelleğe almak için alternatif bir yol belirtin. Geçerli seçenekler şunlardır: HiddenFiles (OS Agnostic), XAttr (Linux/MacOS only (kaynağa çapraz geçiş yapılan tüm dosya sistemlerinde gereklidir user_xattr ), AlternateDataStreams (yalnızca Windows. hedef birimde adlandırılmış akışlar gerektirir).

--mirror-mode Son değiştirme zamanı tabanlı karşılaştırmayı devre dışı bırakın ve bu bayrak true olarak ayarlandıysa hedefte çakışan dosyaların ve blobların üzerine yazar. Varsayılan değer false

--put-blob-size-mbAzure Depolama'a yüklerken blobu tek bir PUT isteği olarak karşıya yükleyip yüklemeyeceğini belirlemek için bu boyutu (MiB'de belirtilen) eşik olarak kullanın. Varsayılan değer, dosya boyutuna göre otomatik olarak hesaplanır. Ondalık kesirlere izin verilir (Örneğin: 0,25).

--preserve-permissions Varsayılan olarak False. Algılayan kaynaklar (Windows ve Azure Dosyalar veya ADLS 2. Nesil-ADLS 2. Nesil) arasındaki ACL'leri korur. Hiyerarşik Ad Alanı hesapları için Sahipliği Değiştir ve İzinleri Değiştir izinlerine sahip bir kapsayıcı SAS veya OAuth belirteci gerekir. İndirmeler için, yeni Sahip'in AzCopy çalıştıran kullanıcı olmayacağı izinleri geri yüklemek için de bayrağına ihtiyacınız --backup olacaktır. Bu bayrak, yalnızca dosya filtresi belirtilmediği sürece (örneğin, include-pattern) hem dosyalar hem de klasörler için geçerlidir.

--preserve-posix-properties- Varsayılan olarak False. Preserves stat veya statx'ten nesne meta verilerine aktarılan özellik bilgileri.

--preserve-smb-info SMB kullanan konumlar için bayrak varsayılan olarak true olarak ayarlanır. SMB kullanan kaynaklar (Azure Dosyalar) arasında SMB özellik bilgilerini (son yazma zamanı, oluşturma zamanı, öznitelik bitleri) korur. Bu bayrak, yalnızca dosya filtresi belirtilmediği sürece (örneğin, include-pattern) hem dosyalar hem de klasörler için geçerlidir. Klasörler için aktarılan bilgiler, klasörler için korunmamış Son Yazma Zamanı dışında dosyalar için olan bilgilerle aynıdır. (varsayılan true)

--put-md5 Her dosyanın MD5 karması oluşturun ve karmayı hedef blobun veya dosyanın Content-MD5 özelliği olarak kaydedin. (Varsayılan olarak karma oluşturulmaZ.) Yalnızca karşıya yüklenirken kullanılabilir.

--recursive Varsayılan olarak True, dizinler arasında eşitlenirken alt dizinleri yinelemeli olarak arayın. (varsayılan true). (varsayılan true)

--s2s-preserve-access-tier Hizmet kopyası sırasında erişim katmanını koruyun. Hedef depolama hesabının erişim katmanı ayarlamayı desteklediğini güvence altına almak için Azure Blob depolama: sık erişimli, seyrek erişimli ve arşiv erişim katmanlarına bakın. Erişim katmanı ayarlamanın desteklenmediğini durumlarda lütfen erişim katmanını kopyalamayı atlamak için kullanın s2sPreserveAccessTier=false . (varsayılan true). (varsayılan true)

--s2s-preserve-blob-tags Hizmetten hizmete eşitleme sırasında bir blob depolamadan diğerine dizin etiketlerini koruma

--trailing-dot Dosya paylaşımıyla ilgili işlemleri güvenli bir şekilde işlemek için varsayılan olarak etkindir. Kullanılabilir seçenekler: Enable, Disable. Dosya hizmetinin yollardaki sondaki noktaları kırpacağı sondaki nokta dosyalarının eski (güvenli olmayabilecek) işlemine geri dönmeyi seçin Disable . Aktarım yalnızca sondaki bir noktayla (örneğin mypath ve mypath.) farklılık gösteren iki yol içeriyorsa, bu durum olası veri bozulmasına neden olabilir. Bu bayrak olarak ayarlanırsa Disable ve AzCopy sondaki bir nokta dosyasıyla karşılaşırsa, tarama günlüğündeki müşterileri uyarır ancak işlemi durdurmayı denemez. Hedef sondaki nokta dosyalarını (Windows veya Blob Depolama) desteklemiyorsa, sonundaki nokta dosyası aktarımın köküyse AzCopy başarısız olur ve numaralandırma sırasında karşılaşılan sondaki nokta yollarını atlar.

Üst komutlardan devralınan seçenekler

--log-level (dize) Günlük dosyası için günlük ayrıntı düzeyini, kullanılabilir düzeyleri tanımlayın: BİlGİ(tüm istekler ve yanıtlar), UYARI(yavaş yanıtlar), HATA(yalnızca başarısız istekler) ve NONE (çıkış günlüğü yok). (varsayılan BİlGİ). (varsayılan "BİlGİ")

--cap-mbps (kayan) Aktarım hızını saniye başına megabit cinsinden kaplar. Dakikalar içinde aktarım hızı üst sınırdan biraz farklı olabilir. Bu seçenek sıfır olarak ayarlanırsa veya atlanırsa, aktarım hızı sınırlanır.

--output-type (dize) Komutun çıkışının biçimi. Seçenekler şunlardır: metin, json. Varsayılan değer 'text' değeridir. (varsayılan "metin")

--trusted-microsoft-suffixes (dize) Microsoft Entra oturum açma belirteçlerinin gönderilebileceği diğer etki alanı son eklerini belirtir. Varsayılan değer :'.core.windows.net;. core.chinacloudapi.cn;. core.cloudapi.de;. core.usgovcloudapi.net;*.storage.azure.net'. Burada listelenenler varsayılan değere eklenir. Güvenlik için buraya yalnızca Microsoft Azure etki alanlarını yerleştirmeniz gerekir. Birden çok girdiyi noktalı virgülle ayırın.

Ayrıca bkz.