Bagikan melalui


Memindahkan data dengan AzCopy v8.1 di Windows

AzCopy adalah utilitas baris perintah yang dirancang untuk menyalin data ke/dari penyimpanan Microsoft Azure Blob, File, dan Table, menggunakan perintah sederhana yang dirancang untuk performa optimal. Anda dapat menyalin data antara sistem file dan akun penyimpanan, atau antara akun penyimpanan.

Penting

Artikel ini menjelaskan versi AzCopy yang lebih lama. Untuk menginstal versi terbaru AzCopy, lihat AzCopy v10.

Jika Anda memilih untuk menginstal AzCopy versi lama (AzCopy v8.1), maka ada beberapa versi yang dapat Anda unduh. AzCopy di Windows menawarkan opsi baris perintah gaya Windows. AzCopy di Linux menargetkan platform Linux yang menawarkan opsi baris perintah gaya POSIX. Artikel ini membahas AzCopy di Windows.

Unduh dan instal AzCopy (v8.1) di Windows

Unduh AzCopy (v8.1) di Windows.

Catatan Rilis AzCopy di Windows 8.1

  • Layanan tabel tidak lagi didukung dalam versi terbaru. Jika Anda menggunakan fitur ekspor Tabel, unduh versi AzCopy 7.3.
  • Dibangun dengan .NET Core 2.1, dan semua dependensi .NET Core sekarang dimas dalam penginstalan.
  • Menambahkan dukungan autentikasi OAuth. Gunakan azcopy login untuk masuk menggunakan Azure Active Directory.

Azcopy dengan dukungan Tabel (v7.3)

Unduh AzCopy 7.3 dengan dukungan Tabel.

Langkah Pasca-penginstalan

Setelah menginstal AzCopy di Windows menggunakan alat penginstal, buka jendela perintah dan navigasikan ke direktori penginstalan AzCopy di komputer Anda - tempat AzCopy.exe executable berada. Jika diinginkan, Anda dapat menambahkan lokasi penginstalan AzCopy ke jalur sistem Anda. Secara default, AzCopy diinstal ke %ProgramFiles(x86)%\Microsoft SDKs\Azure\AzCopy atau %ProgramFiles%\Microsoft SDKs\Azure\AzCopy.

Menulis perintah AzCopy pertama Anda

Sintaks dasar untuk perintah AzCopy adalah:

AzCopy /Source:<source> /Dest:<destination> [Options]

Contoh berikut menunjukkan berbagai skenario untuk menyalin data ke dan dari Microsoft Azure Blobs, Files, dan Tables. Lihat bagian Parameter AzCopy untuk penjelasan terperinci tentang parameter yang digunakan dalam setiap sampel.

Mengunduh blob dari penyimpanan Blob

Mari kita lihat beberapa cara untuk mengunduh blob menggunakan AzCopy.

Mengunduh satu blob

AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer /Dest:C:\myfolder /SourceKey:key /Pattern:"abc.txt"

Perhatikan bahwa jika folder C:\myfolder tidak ada, AzCopy membuatnya dan mengunduhnya abc.txt ke folder baru.

Mengunduh satu blob dari wilayah sekunder

AzCopy /Source:https://myaccount-secondary.blob.core.windows.net/mynewcontainer /Dest:C:\myfolder /SourceKey:key /Pattern:"abc.txt"

Perhatikan bahwa Anda harus mengaktifkan penyimpanan geo-redundan akses baca untuk mengakses wilayah sekunder.

Mengunduh semua blob dalam kontainer

AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer /Dest:C:\myfolder /SourceKey:key /S

Asumsikan blob berikut berada dalam kontainer yang ditentukan:

abc.txt
abc1.txt
abc2.txt
vd1\a.txt
vd1\abcd.txt

Setelah operasi pengunduhan, direktori C:\myfolder menyertakan file berikut:

C:\myfolder\abc.txt
C:\myfolder\abc1.txt
C:\myfolder\abc2.txt
C:\myfolder\vd1\a.txt
C:\myfolder\vd1\abcd.txt

Jika Anda tidak menentukan opsi /S, tidak ada blob yang diunduh.

Mengunduh blob dengan awalan tertentu

AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer /Dest:C:\myfolder /SourceKey:key /Pattern:a /S

Asumsikan blob berikut berada dalam kontainer yang ditentukan. Semua blob yang dimulai dengan awalan a diunduh:

abc.txt
abc1.txt
abc2.txt
xyz.txt
vd1\a.txt
vd1\abcd.txt

Setelah operasi pengunduhan, folder C:\myfolder menyertakan file berikut:

C:\myfolder\abc.txt
C:\myfolder\abc1.txt
C:\myfolder\abc2.txt

Awalan berlaku untuk direktori virtual, yang membentuk bagian pertama dari nama blob. Dalam contoh yang ditunjukkan di atas, direktori virtual tidak cocok dengan awalan yang ditentukan, sehingga tidak diunduh. Selain itu, jika opsi /S tidak ditentukan, AzCopy tidak mengunduh blob apa pun.

Atur waktu terakhir dimodifikasi dari file yang diekspor agar sama dengan blob sumber

AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer /Dest:C:\myfolder /SourceKey:key /MT

Anda juga dapat mengecualikan blob dari operasi pengunduhan berdasarkan waktu terakhir dimodifikasi. Misalnya, jika Anda ingin mengecualikan blob yang waktu terakhir diubahnya sama atau lebih baru dari file tujuan, tambahkan /XN opsi:

AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer /Dest:C:\myfolder /SourceKey:key /MT /XN

Jika Anda ingin mengecualikan blob yang waktu terakhir diubahnya sama atau lebih lama dari file tujuan, tambahkan /XO opsi :

AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer /Dest:C:\myfolder /SourceKey:key /MT /XO

Unggah blob ke Blob storage

Mari kita lihat beberapa cara untuk mengunggah blob menggunakan AzCopy.

Mengunggah satu blob

AzCopy /Source:C:\myfolder /Dest:https://myaccount.blob.core.windows.net/mycontainer /DestKey:key /Pattern:"abc.txt"

Jika kontainer tujuan yang ditentukan tidak ada, AzCopy akan membuatnya dan mengunggah file ke dalamnya.

Mengunggah satu blob ke direktori virtual

AzCopy /Source:C:\myfolder /Dest:https://myaccount.blob.core.windows.net/mycontainer/vd /DestKey:key /Pattern:abc.txt

Jika direktori virtual yang ditentukan tidak ada, AzCopy mengunggah file untuk menyertakan direktori virtual dalam namanya (misalnya, vd/abc.txt dalam contoh di atas).

Mengunggah semua blob dalam folder

AzCopy /Source:C:\myfolder /Dest:https://myaccount.blob.core.windows.net/mycontainer /DestKey:key /S

Menentukan opsi /S mengunggah konten direktori yang ditentukan ke penyimpanan Blob secara rekursif, yang berarti bahwa semua subfolder dan filenya juga diunggah. Misalnya, asumsikan file berikut berada di folder C:\myfolder:

C:\myfolder\abc.txt
C:\myfolder\abc1.txt
C:\myfolder\abc2.txt
C:\myfolder\subfolder\a.txt
C:\myfolder\subfolder\abcd.txt

Setelah operasi unggah, kontainer menyertakan file berikut:

abc.txt
abc1.txt
abc2.txt
subfolder\a.txt
subfolder\abcd.txt

Jika Anda tidak menentukan opsi /S, AzCopy tidak mengunggah secara rekursif. Setelah operasi unggah, kontainer menyertakan file berikut:

abc.txt
abc1.txt
abc2.txt

Mengunggah blob yang cocok dengan pola tertentu

AzCopy /Source:C:\myfolder /Dest:https://myaccount.blob.core.windows.net/mycontainer /DestKey:key /Pattern:a* /S

Asumsikan file berikut berada di folder C:\myfolder:

C:\myfolder\abc.txt
C:\myfolder\abc1.txt
C:\myfolder\abc2.txt
C:\myfolder\xyz.txt
C:\myfolder\subfolder\a.txt
C:\myfolder\subfolder\abcd.txt

Setelah operasi unggah, kontainer menyertakan file berikut:

abc.txt
abc1.txt
abc2.txt
subfolder\a.txt
subfolder\abcd.txt

Jika Anda tidak menentukan opsi /S, AzCopy hanya mengunggah blob yang tidak berada di direktori virtual:

C:\myfolder\abc.txt
C:\myfolder\abc1.txt
C:\myfolder\abc2.txt

Tentukan tipe konten MIME dari blob tujuan

Secara default, AzCopy mengatur jenis konten blob tujuan ke application/octet-stream. Dimulai dengan versi 3.1.0, Anda dapat secara eksplisit menentukan jenis konten melalui opsi /SetContentType:[content-type]. Sintaks ini mengatur jenis konten untuk semua blob dalam operasi unggahan.

AzCopy /Source:C:\myfolder\ /Dest:https://myaccount.blob.core.windows.net/myContainer/ /DestKey:key /Pattern:ab /SetContentType:video/mp4

Jika Anda menentukan /SetContentType tanpa nilai, AzCopy menetapkan setiap jenis konten blob atau file sesuai dengan ekstensi filenya.

AzCopy /Source:C:\myfolder\ /Dest:https://myaccount.blob.core.windows.net/myContainer/ /DestKey:key /Pattern:ab /SetContentType

Menyalin blob di penyimpanan Blob

Mari kita lihat beberapa cara untuk menyalin blob dari satu lokasi ke lokasi lain menggunakan AzCopy.

Menyalin satu blob dari satu kontainer ke kontainer lain dalam akun penyimpanan yang sama

AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer1 /Dest:https://myaccount.blob.core.windows.net/mycontainer2 /SourceKey:key /DestKey:key /Pattern:abc.txt

Saat Anda menyalin blob dalam akun Storage, operasi penyalinan sisi server dilakukan.

Menyalin satu blob dari satu akun penyimpanan ke akun penyimpanan lainnya

AzCopy /Source:https://sourceaccount.blob.core.windows.net/mycontainer1 /Dest:https://destaccount.blob.core.windows.net/mycontainer2 /SourceKey:key1 /DestKey:key2 /Pattern:abc.txt

Saat Anda menyalin blob di seluruh akun Storage, operasi penyalinan sisi server dilakukan.

Menyalin satu blob dari wilayah sekunder ke wilayah utama

AzCopy /Source:https://myaccount1-secondary.blob.core.windows.net/mynewcontainer1 /Dest:https://myaccount2.blob.core.windows.net/mynewcontainer2 /SourceKey:key1 /DestKey:key2 /Pattern:abc.txt

Perhatikan bahwa Anda harus mengaktifkan penyimpanan geo-redundan akses baca untuk mengakses penyimpanan sekunder.

Menyalin satu blob dan rekam jepretnya dari satu akun penyimpanan ke akun penyimpanan lainnya

AzCopy /Source:https://sourceaccount.blob.core.windows.net/mycontainer1 /Dest:https://destaccount.blob.core.windows.net/mycontainer2 /SourceKey:key1 /DestKey:key2 /Pattern:abc.txt /Snapshot

Setelah operasi salin, kontainer target menyertakan blob dan rekam jepretnya. Dengan asumsi blob dalam contoh di atas memiliki dua rekam jepret, kontainer menyertakan blob dan rekam jepret berikut:

abc.txt
abc (2013-02-25 080757).txt
abc (2014-02-21 150331).txt

Menyalin semua blob dalam kontainer ke akun penyimpanan lain

AzCopy /Source:https://sourceaccount.blob.core.windows.net/mycontainer1 
/Dest:https://destaccount.blob.core.windows.net/mycontainer2 /SourceKey:key1 /DestKey:key2 /S

Menentukan opsi /S mengunggah konten kontainer yang ditentukan secara rekursif. Lihat Mengunggah semua blob dalam folder untuk informasi selengkapnya dan contohnya.

Menyalin blob secara sinkron dari satu akun penyimpanan ke akun penyimpanan lainnya

AzCopy secara default menyalin data antara dua titik akhir penyimpanan secara asinkron. Oleh karena itu, operasi salin berjalan di latar belakang menggunakan kapasitas bandwidth cadangan yang tidak memiliki SLA dalam hal seberapa cepat blob disalin, dan AzCopy secara berkala memeriksa status penyalinan sampai penyalinan selesai atau gagal.

Opsi /SyncCopy memastikan bahwa operasi penyalinan mendapatkan kecepatan yang konsisten. AzCopy melakukan salinan sinkron dengan mengunduh blob untuk disalin dari sumber yang ditentukan ke memori lokal, lalu mengunggahnya ke tujuan penyimpanan Blob.

AzCopy /Source:https://myaccount1.blob.core.windows.net/myContainer/ /Dest:https://myaccount2.blob.core.windows.net/myContainer/ /SourceKey:key1 /DestKey:key2 /Pattern:ab /SyncCopy

/SyncCopy mungkin menghasilkan biaya keluar tambahan dibandingkan dengan salinan asinkron, pendekatan yang disarankan adalah menggunakan opsi ini di Azure VM yang berada di wilayah yang sama dengan akun penyimpanan sumber Anda untuk menghindari biaya keluar.

Mengunduh file dari penyimpanan File

Mari kita lihat beberapa cara untuk mengunduh file menggunakan AzCopy.

Mengunduh satu file

AzCopy /Source:https://myaccount.file.core.windows.net/myfileshare/myfolder1/ /Dest:C:\myfolder /SourceKey:key /Pattern:abc.txt

Jika sumber yang ditentukan adalah berbagi file Azure, maka Anda harus menentukan nama file yang tepat, (misalnyaabc.txt) untuk mengunduh satu file, atau menentukan opsi /S untuk mengunduh semua file dalam berbagi secara rekursif. Mencoba menentukan pola file dan opsi /S bersama-sama menghasilkan kesalahan.

Mengunduh semua file dalam direktori

AzCopy /Source:https://myaccount.file.core.windows.net/myfileshare/ /Dest:C:\myfolder /SourceKey:key /S

Perhatikan bahwa folder kosong tidak diunduh.

Mengunggah file ke berbagi file Azure

Mari kita lihat beberapa cara untuk mengunggah file menggunakan AzCopy.

Mengunggah satu file

AzCopy /Source:C:\myfolder /Dest:https://myaccount.file.core.windows.net/myfileshare/ /DestKey:key /Pattern:abc.txt

Mengunggah semua file dalam folder

AzCopy /Source:C:\myfolder /Dest:https://myaccount.file.core.windows.net/myfileshare/ /DestKey:key /S

Perhatikan bahwa folder kosong tidak diunggah.

Mengunggah file yang cocok dengan pola tertentu

AzCopy /Source:C:\myfolder /Dest:https://myaccount.file.core.windows.net/myfileshare/ /DestKey:key /Pattern:ab* /S

Menyalin file di penyimpanan File

Mari kita lihat beberapa cara untuk menyalin file dalam berbagi file Azure menggunakan AzCopy.

Salin dari satu berbagi file ke file lainnya

AzCopy /Source:https://myaccount1.file.core.windows.net/myfileshare1/ /Dest:https://myaccount2.file.core.windows.net/myfileshare2/ /SourceKey:key1 /DestKey:key2 /S

Saat Anda menyalin file di seluruh berbagi file, operasi penyalinan sisi server dilakukan.

Menyalin dari berbagi file Azure ke penyimpanan Blob

AzCopy /Source:https://myaccount1.file.core.windows.net/myfileshare/ /Dest:https://myaccount2.blob.core.windows.net/mycontainer/ /SourceKey:key1 /DestKey:key2 /S

Saat Anda menyalin file dari berbagi file ke blob, operasi penyalinan sisi server dilakukan.

Menyalin blob dari penyimpanan Blob ke berbagi file Azure

AzCopy /Source:https://myaccount1.blob.core.windows.net/mycontainer/ /Dest:https://myaccount2.file.core.windows.net/myfileshare/ /SourceKey:key1 /DestKey:key2 /S

Saat Anda menyalin file dari blob ke berbagi file, operasi penyalinan sisi server dilakukan.

Menyalin file secara sinkron

Anda dapat menentukan /SyncCopy opsi untuk menyalin data dari Penyimpanan File ke Penyimpanan File, dari Penyimpanan File ke Penyimpanan Blob dan dari Penyimpanan Blob ke Penyimpanan File secara sinkron, AzCopy melakukan ini dengan mengunduh data sumber ke memori lokal dan mengunggahnya lagi ke tujuan. Biaya keluar standar berlaku.

AzCopy /Source:https://myaccount1.file.core.windows.net/myfileshare1/ /Dest:https://myaccount2.file.core.windows.net/myfileshare2/ /SourceKey:key1 /DestKey:key2 /S /SyncCopy

Saat menyalin dari penyimpanan File ke penyimpanan Blob, jenis blob default adalah blob blok; pengguna dapat menentukan opsi /BlobType:page untuk mengubah jenis blob tujuan.

Perhatikan bahwa /SyncCopy mungkin menghasilkan biaya keluar tambahan dibandingkan dengan salinan asinkron. Pendekatan yang disarankan adalah menggunakan opsi ini di Azure VM yang berada di wilayah yang sama dengan akun penyimpanan sumber Anda untuk menghindari biaya keluar.

Mengekspor data dari penyimpanan Tabel

Mari kita lihat mengekspor data dari penyimpanan Azure Table menggunakan AzCopy.

Mengekspor tabel

AzCopy /Source:https://myaccount.table.core.windows.net/myTable/ /Dest:C:\myfolder\ /SourceKey:key

AzCopy menulis file manifes ke folder tujuan yang ditentukan. File manifes digunakan dalam proses impor untuk menemukan file data yang diperlukan dan melakukan validasi data. File manifes menggunakan konvensi penamaan berikut secara default:

<account name>_<table name>_<timestamp>.manifest

Pengguna juga dapat menentukan opsi /Manifest:<manifest file name> untuk mengatur nama file manifes.

AzCopy /Source:https://myaccount.table.core.windows.net/myTable/ /Dest:C:\myfolder\ /SourceKey:key /Manifest:abc.manifest

Membagi ekspor dari penyimpanan Tabel menjadi beberapa file

AzCopy /Source:https://myaccount.table.core.windows.net/mytable/ /Dest:C:\myfolder /SourceKey:key /S /SplitSize:100

AzCopy menggunakan indeks volume dalam nama file data terpisah untuk membedakan beberapa file. Indeks volume terdiri dari dua bagian, indeks rentang kunci partisi dan indeks file terpisah. Kedua indeks berbasis nol.

Indeks rentang kunci partisi adalah 0 jika pengguna tidak menentukan opsi /PKRS.

Misalnya, AzCopy menghasilkan dua file data setelah pengguna menentukan opsi /SplitSize. Nama file data yang dihasilkan mungkin:

myaccount_mytable_20140903T051850.8128447Z_0_0_C3040FE8.json
myaccount_mytable_20140903T051850.8128447Z_0_1_0AB9AC20.json

Perhatikan bahwa nilai minimum yang mungkin untuk opsi /SplitSize adalah 32MB. Jika tujuan yang ditentukan adalah penyimpanan Blob, AzCopy membagi file data setelah ukurannya mencapai batasan ukuran blob (200GB), terlepas dari apakah opsi /SplitSize telah ditentukan oleh pengguna.

Mengekspor tabel ke format file data JSON atau CSV

Secara default, AzCopy mengekspor tabel ke file data JSON. Anda dapat menentukan opsi /PayloadFormat:JSON|CSV untuk mengekspor tabel sebagai JSON atau CSV.

AzCopy /Source:https://myaccount.table.core.windows.net/myTable/ /Dest:C:\myfolder\ /SourceKey:key /PayloadFormat:CSV

Saat menentukan format payload CSV, AzCopy juga menghasilkan file skema dengan ekstensi .schema.csv file untuk setiap file data.

Mengekspor entitas tabel secara bersamaan

AzCopy /Source:https://myaccount.table.core.windows.net/myTable/ /Dest:C:\myfolder\ /SourceKey:key /PKRS:"aa#bb"

AzCopy memulai operasi bersamaan untuk mengekspor entitas ketika pengguna menentukan opsi /PKRS. Setiap operasi mengekspor satu rentang kunci partisi.

Perhatikan bahwa jumlah operasi bersamaan juga dikendalikan oleh opsi /NC. AzCopy menggunakan jumlah prosesor inti sebagai nilai /NC default saat menyalin entitas tabel, bahkan jika /NC tidak ditentukan. Ketika pengguna menentukan opsi /PKRS, AzCopy menggunakan nilai yang lebih kecil dari dua nilai - rentang kunci partisi versus operasi bersamaan yang ditentukan secara implisit atau eksplisit - untuk menentukan jumlah operasi bersamaan yang akan dimulai. Untuk detail selengkapnya, ketik AzCopy /?:NC di baris perintah.

Mengekspor tabel ke penyimpanan Blob

AzCopy /Source:https://myaccount.table.core.windows.net/myTable/ /Dest:https://myaccount.blob.core.windows.net/mycontainer/ /SourceKey:key1 /Destkey:key2

AzCopy menghasilkan file data JSON ke dalam kontainer blob dengan konvensi penamaan berikut:

<account name>_<table name>_<timestamp>_<volume index>_<CRC>.json

File data JSON yang dihasilkan mengikuti format payload untuk metadata minimal. Untuk detail tentang format payload ini, lihat Format Payload untuk Operasi Layanan Tabel.

Perhatikan bahwa saat mengekspor tabel ke blob, AzCopy mengunduh entitas Tabel ke file data sementara lokal lalu mengunggah entitas tersebut ke blob. File data sementara ini dimasukkan ke dalam folder file jurnal dengan jalur default "%LocalAppData%\Microsoft\Azure\AzCopy", Anda dapat menentukan opsi /Z:[journal-file-folder] untuk mengubah lokasi folder file jurnal dan dengan demikian mengubah lokasi file data sementara. Ukuran file data sementara ditentukan oleh ukuran entitas tabel Anda dan ukuran yang Anda tentukan dengan opsi /SplitSize, meskipun file data sementara di disk lokal dihapus secara instan setelah diunggah ke blob, pastikan Anda memiliki cukup ruang disk lokal untuk menyimpan file data sementara ini sebelum dihapus.

Mengimpor data ke penyimpanan Tabel

Mari kita lihat mengimpor data ke penyimpanan Azure Table menggunakan AzCopy.

Mengimpor tabel

AzCopy /Source:C:\myfolder\ /Dest:https://myaccount.table.core.windows.net/mytable1/ /DestKey:key /Manifest:"myaccount_mytable_20140103T112020.manifest" /EntityOperation:InsertOrReplace

Opsi /EntityOperation menunjukkan cara menyisipkan entitas ke dalam tabel. Potensi nilai:

  • InsertOrSkip: Melompati entitas yang ada atau menyisipkan entitas baru jika tidak ada dalam tabel.
  • InsertOrMerge: Menggabungkan entitas yang ada atau menyisipkan entitas baru jika tidak ada dalam tabel.
  • InsertOrReplace: Mengganti entitas yang ada atau menyisipkan entitas baru jika tidak ada dalam tabel.

Perhatikan bahwa Anda tidak dapat menentukan opsi /PKRS dalam skenario impor. Tidak seperti skenario ekspor, di mana Anda harus menentukan opsi /PKRS untuk memulai operasi bersamaan, AzCopy memulai operasi bersamaan secara default saat Anda mengimpor tabel. Jumlah default operasi bersamaan yang dimulai sama dengan jumlah prosesor inti; namun, Anda dapat menentukan jumlah yang berbeda secara bersamaan dengan opsi /NC. Untuk detail selengkapnya, ketik AzCopy /?:NC di baris perintah.

Perhatikan bahwa AzCopy hanya mendukung impor untuk JSON, bukan CSV. AzCopy tidak mendukung impor tabel dari JSON yang dibuat pengguna dan file manifes. Kedua file ini harus berasal dari ekspor tabel AzCopy. Untuk menghindari kesalahan, jangan ubah JSON atau file manifes yang diekspor.

Mengimpor entitas ke dalam tabel dari penyimpanan Blob

Asumsikan kontainer Blob berisi yang berikut: File JSON yang mewakili Azure Table dan file manifes yang menyertainya.

myaccount_mytable_20140103T112020.manifest
myaccount_mytable_20140103T112020_0_0_0AF395F1DC42E952.json

Anda dapat menjalankan perintah berikut untuk mengimpor entitas ke dalam tabel menggunakan file manifes dalam kontainer blob tersebut:

AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer /Dest:https://myaccount.table.core.windows.net/mytable /SourceKey:key1 /DestKey:key2 /Manifest:"myaccount_mytable_20140103T112020.manifest" /EntityOperation:"InsertOrReplace"

Fitur AzCopy lainnya

Mari kita lihat beberapa fitur AzCopy lainnya.

Hanya salin data yang tidak ada di tujuan

Parameter /XO dan /XN memungkinkan Anda untuk mengecualikan sumber daya sumber yang lebih lama atau yang lebih baru agar tidak disalin. Jika Anda hanya ingin menyalin sumber daya sumber yang tidak ada di tujuan, Anda dapat menentukan kedua parameter dalam perintah AzCopy:

/Source:http://myaccount.blob.core.windows.net/mycontainer /Dest:C:\myfolder /SourceKey:<sourcekey> /S /XO /XN

/Source:C:\myfolder /Dest:http://myaccount.file.core.windows.net/myfileshare /DestKey:<destkey> /S /XO /XN

/Source:http://myaccount.blob.core.windows.net/mycontainer /Dest:http://myaccount.blob.core.windows.net/mycontainer1 /SourceKey:<sourcekey> /DestKey:<destkey> /S /XO /XN

Perhatikan bahwa ini tidak didukung ketika sumber atau tujuan adalah tabel.

Menggunakan file respons untuk menentukan parameter baris perintah

AzCopy /@:"C:\responsefiles\copyoperation.txt"

Anda dapat menyertakan parameter baris perintah AzCopy apa pun dalam file respons. AzCopy memproses parameter dalam file seolah-olah parameter tersebut telah ditentukan pada baris perintah, melakukan substitusi langsung dengan konten file.

Asumsikan file respons bernama copyoperation.txt, yang berisi baris berikut. Setiap parameter AzCopy dapat ditentukan pada satu baris

/Source:http://myaccount.blob.core.windows.net/mycontainer /Dest:C:\myfolder /SourceKey:<sourcekey> /S /Y

atau pada baris terpisah:

/Source:http://myaccount.blob.core.windows.net/mycontainer
/Dest:C:\myfolder
/SourceKey:<sourcekey>
/S
/Y

AzCopy gagal jika Anda membagi parameter di dua baris, seperti yang ditunjukkan di sini untuk /sourcekey parameter :

http://myaccount.blob.core.windows.net/mycontainer
 C:\myfolder
/sourcekey:
<sourcekey>
/S
/Y

Menggunakan beberapa file respons untuk menentukan parameter baris perintah

Asumsikan file respons bernama source.txt yang menentukan kontainer sumber:

/Source:http://myaccount.blob.core.windows.net/mycontainer

Dan file respons bernama dest.txt yang menentukan folder tujuan dalam sistem file:

/Dest:C:\myfolder

Dan file respons bernama options.txt yang menentukan opsi untuk AzCopy:

/S /Y

Untuk memanggil AzCopy dengan file respons ini, yang semuanya berada di direktori C:\responsefiles, gunakan perintah ini:

AzCopy /@:"C:\responsefiles\source.txt" /@:"C:\responsefiles\dest.txt" /SourceKey:<sourcekey> /@:"C:\responsefiles\options.txt"   

AzCopy memproses perintah ini sama seperti jika Anda menyertakan semua parameter individual pada baris perintah:

AzCopy /Source:http://myaccount.blob.core.windows.net/mycontainer /Dest:C:\myfolder /SourceKey:<sourcekey> /S /Y

Tentukan tanda tangan akses bersama (SAS)

AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer1 /Dest:https://myaccount.blob.core.windows.net/mycontainer2 /SourceSAS:SAS1 /DestSAS:SAS2 /Pattern:abc.txt

Anda juga dapat menentukan SAS pada URI kontainer:

AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer1/?SourceSASToken /Dest:C:\myfolder /S

Journal folder file

Setiap kali Anda mengeluarkan perintah ke AzCopy, ia memeriksa apakah file jurnal ada di folder default, atau apakah ada di folder yang Anda tentukan melalui opsi ini. Jika file jurnal tidak ada di salah satu tempat, AzCopy memperlakukan operasi sebagai baru dan menghasilkan file jurnal baru.

Jika file jurnal memang ada, AzCopy memeriksa apakah baris perintah yang Anda masukkan cocok dengan baris perintah dalam file jurnal. Jika dua baris perintah cocok, AzCopy melanjutkan operasi yang tidak lengkap. Jika tidak cocok, Anda diminta untuk menimpa file jurnal untuk memulai operasi baru, atau membatalkan operasi saat ini.

Jika Anda ingin menggunakan lokasi default untuk file jurnal:

AzCopy /Source:C:\myfolder /Dest:https://myaccount.blob.core.windows.net/mycontainer /DestKey:key /Z

Jika Anda menghilangkan opsi /Z, atau menentukan opsi /Z tanpa jalur folder, seperti yang ditunjukkan di atas, AzCopy membuat file jurnal di lokasi default, yaitu %SystemDrive%\Users\%username%\AppData\Local\Microsoft\Azure\AzCopy. Jika file jurnal sudah ada, maka AzCopy melanjutkan operasi berdasarkan file jurnal.

Jika Anda ingin menentukan lokasi kustom untuk file jurnal:

AzCopy /Source:C:\myfolder /Dest:https://myaccount.blob.core.windows.net/mycontainer /DestKey:key /Z:C:\journalfolder\

Contoh ini membuat file jurnal jika belum ada. Jika memang ada, maka AzCopy melanjutkan operasi berdasarkan file jurnal.

Jika Anda ingin melanjutkan operasi AzCopy:

AzCopy /Z:C:\journalfolder\

Contoh ini melanjutkan operasi terakhir, yang mungkin gagal diselesaikan.

Membuat file log

AzCopy /Source:C:\myfolder /Dest:https://myaccount.blob.core.windows.net/mycontainer /DestKey:key /V

Jika Anda menentukan opsi /V tanpa menyediakan jalur file ke log verbose, maka AzCopy membuat file log di lokasi default, yaitu %SystemDrive%\Users\%username%\AppData\Local\Microsoft\Azure\AzCopy.

Jika tidak, Anda dapat membuat file log di lokasi kustom:

AzCopy /Source:C:\myfolder /Dest:https://myaccount.blob.core.windows.net/mycontainer /DestKey:key /V:C:\myfolder\azcopy1.log

Perhatikan bahwa jika Anda menentukan opsi /Vjalur relatif berikut , seperti /V:test/azcopy1.log, maka log verbose dibuat di direktori kerja saat ini dalam subfolder bernama test.

Tentukan jumlah operasi bersamaan yang akan dimulai

Opsi /NC menentukan jumlah operasi salin bersamaan. Secara default, AzCopy memulai sejumlah operasi bersamaan untuk meningkatkan throughput transfer data. Untuk operasi Tabel, jumlah operasi bersamaan sama dengan jumlah prosesor yang Anda miliki. Untuk operasi Blob dan File, jumlah operasi bersamaan sama dengan 8 kali jumlah prosesor yang Anda miliki. Jika Anda menjalankan AzCopy di seluruh jaringan bandwidth rendah, Anda dapat menentukan angka yang lebih rendah untuk /NC untuk menghindari kegagalan yang disebabkan oleh persaingan sumber daya.

Menjalankan AzCopy terhadap Emulator Azure Storage

Anda dapat menjalankan AzCopy terhadap Emulator Azure Storage untuk blob:

AzCopy /Source:https://127.0.0.1:10000/myaccount/mycontainer/ /Dest:C:\myfolder /SourceKey:key /SourceType:Blob /S

Anda juga dapat menjalankannya untuk tabel:

AzCopy /Source:https://127.0.0.1:10002/myaccount/mytable/ /Dest:C:\myfolder /SourceKey:key /SourceType:Table

Menentukan Tipe Konten Blob secara otomatis

AzCopy menentukan jenis konten blob berdasarkan file JSON yang menyimpan jenis konten ke pemetaan ekstensi file. File JSON ini diberi nama AzCopyConfig.json, dan terletak di direktori AzCopy. Jika Anda memiliki jenis file yang tidak ada dalam daftar, Anda dapat menambahkan pemetaan ke file JSON:

{
  "MIMETypeMapping": {
    ".myext": "text/mycustomtype",
    .
    .
  }
}

Parameter AzCopy

Parameter untuk AzCopy dijelaskan di bawah ini. Anda juga dapat mengetik salah satu perintah berikut dari baris perintah untuk bantuan dalam menggunakan AzCopy:

  • Untuk bantuan baris perintah terperinci untuk AzCopy: AzCopy /?
  • Untuk bantuan terperinci dengan parameter AzCopy apa pun: AzCopy /?:SourceKey
  • Untuk contoh baris perintah: AzCopy /?:Sample

/Source:"source"

Menentukan data sumber yang akan disalin. Sumbernya dapat berupa direktori sistem file, kontainer blob, direktori virtual blob, berbagi file penyimpanan, direktori file penyimpanan, atau tabel Azure.

Berlaku untuk: Blob, File, Tabel

/Dest:"destination"

Menentukan tujuan yang akan disalin. Tujuannya dapat berupa direktori sistem file, kontainer blob, direktori virtual blob, berbagi file penyimpanan, direktori file penyimpanan, atau tabel Azure.

Berlaku untuk: Blob, File, Tabel

/Pattern:"file-pattern"

Menentukan pola file yang menunjukkan file mana yang akan disalin. Perilaku parameter /Pattern ditentukan oleh lokasi data sumber, dan adanya opsi mode rekursif. Mode rekursif ditentukan melalui opsi /S.

Jika sumber yang ditentukan adalah direktori dalam sistem file, maka wildcard standar berlaku, dan pola file yang disediakan dicocokkan dengan file dalam direktori. Jika opsi /S ditentukan, maka AzCopy juga cocok dengan pola yang ditentukan terhadap semua file di subfolder apa pun di bawah direktori.

Jika sumber yang ditentukan adalah kontainer blob atau direktori virtual, maka wildcard tidak diterapkan. Jika opsi /S ditentukan, maka AzCopy menginterpretasikan pola file yang ditentukan sebagai awalan blob. Jika opsi /S tidak ditentukan, maka AzCopy cocok dengan pola file dengan nama blob yang tepat.

Jika sumber yang ditentukan adalah berbagi file Azure, maka Anda harus menentukan nama file yang tepat, (misalnya abc.txt) untuk menyalin satu file, atau menentukan opsi /S untuk menyalin semua file dalam berbagi secara rekursif. Mencoba menentukan pola file dan opsi /S bersama-sama menghasilkan kesalahan.

AzCopy menggunakan pencocokan peka huruf besar/kecil saat /Source adalah kontainer blob atau direktori virtual blob, dan menggunakan pencocokan tidak peka huruf besar/kecil di semua kasus lainnya.

Pola file default yang digunakan ketika tidak ada pola file yang ditentukan adalah . untuk lokasi sistem file atau awalan kosong untuk lokasi Azure Storage. Menentukan beberapa pola berkas tidak didukung.

Berlaku untuk: Blob, File

/DestKey:"storage-key"

Menentukan kunci akun penyimpanan untuk sumber daya tujuan.

Berlaku untuk: Blob, File, Tabel

/DestSAS:"sas-token"

Menentukan Tanda Tangan Akses Bersama (SAS) dengan izin BACA dan TULIS untuk tujuan (jika berlaku). Kelilingi SAS dengan tanda kutip ganda, karena mungkin berisi karakter baris perintah khusus.

Jika sumber daya tujuan adalah kontainer blob, berbagi file, atau tabel, Anda dapat menentukan opsi ini diikuti dengan token SAS, atau Anda dapat menentukan SAS sebagai bagian dari kontainer blob tujuan, berbagi file, atau URI tabel, tanpa opsi ini.

Jika sumber dan tujuan adalah kedua blob, maka blob tujuan harus berada dalam akun penyimpanan yang sama dengan blob sumber.

Berlaku untuk: Blob, File, Tabel

/SourceKey:"storage-key"

Menentukan kunci akun penyimpanan untuk sumber daya sumber.

Berlaku untuk: Blob, File, Tabel

/SourceSAS:"sas-token"

Menentukan Tanda Tangan Akses Bersama dengan izin BACA dan DAFTAR untuk sumber (jika berlaku). Kelilingi SAS dengan tanda kutip ganda, karena mungkin berisi karakter baris perintah khusus.

Jika sumber daya sumber adalah kontainer blob, dan kunci atau SAS tidak disediakan, maka kontainer blob dibaca melalui akses anonim.

Jika sumbernya adalah berbagi file atau tabel, kunci atau SAS harus disediakan.

Berlaku untuk: Blob, File, Tabel

/S

Menentukan mode rekursif untuk operasi salin. Dalam mode rekursif, AzCopy menyalin semua blob atau file yang cocok dengan pola file yang ditentukan, termasuk yang ada di subfolder.

Berlaku untuk: Blob, File

/BlobType:"block" | "halaman" | "tambahkan"

Menentukan apakah blob tujuan adalah blob blok, blob halaman, atau blob penambahan. Opsi ini hanya berlaku saat Anda mengunggah blob. Jika tidak, kesalahan akan dihasilkan. Jika tujuan adalah blob dan opsi ini tidak ditentukan, secara default, AzCopy membuat blob blok.

Berlaku untuk: Gumpalan

/CheckMD5

Menghitung hash MD5 untuk data yang diunduh dan memverifikasi bahwa hash MD5 yang disimpan dalam properti Content-MD5 blob atau file cocok dengan hash terhitung. Jika nilai tidak cocok, AzCopy akan gagal mengunduh data. Pemeriksaan MD5 dinonaktifkan secara default, jadi Anda harus menentukan opsi ini untuk melakukan pemeriksaan MD5 saat mengunduh data.

Perhatikan bahwa Azure Storage tidak menjamin bahwa hash MD5 yang disimpan untuk blob atau file sudah diperbarui. Klien bertanggung jawab untuk memperbarui MD5 setiap kali blob atau file dimodifikasi. Dalam kasus gambar disk (disk terkelola atau tidak terkelola), Azure VM tidak memperbarui nilai MD5 saat konten disk berubah, karenanya /CheckMD5 akan memunculkan kesalahan saat mengunduh gambar disk.

AzCopy v8 selalu mengatur properti Content-MD5 untuk blob atau file Azure setelah mengunggahnya ke layanan.

Berlaku untuk: Blob, File

/Snapshot

Menunjukkan apakah akan mentransfer rekam jepret. Opsi ini hanya valid ketika sumbernya adalah blob.

Rekam jepret blob yang ditransfer diganti namanya dalam format ini: blob-name (snapshot-time).extension

Secara default, rekam jepret tidak disalin.

Berlaku untuk: Gumpalan

/V:[verbose-log-file]

Mengeluarkan pesan status verbose ke dalam file log.

Secara default, file log verbose diberi nama AzCopyVerbose.log di %LocalAppData%\Microsoft\Azure\AzCopy. Jika Anda menentukan lokasi file yang ada untuk opsi ini, log verbose ditambahkan ke file tersebut.

Berlaku untuk: Blob, File, Tabel

/Z:[journal-file-folder]

Menentukan folder file jurnal untuk melanjutkan operasi.

AzCopy selalu mendukung melanjutkan jika operasi telah terganggu.

Jika opsi ini tidak ditentukan, atau ditentukan tanpa jalur folder, maka AzCopy membuat file jurnal di lokasi default, yaitu %LocalAppData%\Microsoft\Azure\AzCopy.

Setiap kali Anda mengeluarkan perintah ke AzCopy, ia memeriksa apakah file jurnal ada di folder default, atau apakah ada di folder yang Anda tentukan melalui opsi ini. Jika file jurnal tidak ada di salah satu tempat, AzCopy memperlakukan operasi sebagai baru dan menghasilkan file jurnal baru.

Jika file jurnal memang ada, AzCopy memeriksa apakah baris perintah yang Anda masukkan cocok dengan baris perintah dalam file jurnal. Jika dua baris perintah cocok, AzCopy melanjutkan operasi yang tidak lengkap. Jika tidak cocok, Anda diminta untuk menimpa file jurnal untuk memulai operasi baru, atau membatalkan operasi saat ini.

File jurnal dihapus setelah berhasil menyelesaikan operasi.

Perhatikan bahwa melanjutkan operasi dari file jurnal yang dibuat oleh versi AzCopy sebelumnya tidak didukung.

Berlaku untuk: Blob, File, Tabel

/@:"parameter-file"

Menentukan file yang berisi parameter. AzCopy memproses parameter dalam file sama seperti yang telah ditentukan pada baris perintah.

Dalam file respons, Anda dapat menentukan beberapa parameter pada satu baris, atau menentukan setiap parameter pada barisnya sendiri. Perhatikan bahwa parameter individual tidak dapat menjangkau beberapa baris.

File respons dapat menyertakan baris komentar yang dimulai dengan simbol # .

Anda dapat menentukan beberapa file respons. Namun, perhatikan bahwa AzCopy tidak mendukung file respons berlapis.

Berlaku untuk: Blob, File, Tabel

/Y

Menekan semua perintah konfirmasi AzCopy. Opsi ini juga memungkinkan penggunaan token SAS hanya-tulis untuk skenario pengunggahan data, ketika /XO dan /XN tidak ditentukan.

Berlaku untuk: Blob, File, Tabel

/L

Menentukan operasi daftar saja; tidak ada data yang disalin.

AzCopy menginterpretasikan penggunaan opsi ini sebagai simulasi untuk menjalankan baris perintah tanpa opsi ini /L dan menghitung berapa banyak objek yang disalin, Anda dapat menentukan opsi /V pada saat yang sama untuk memeriksa objek mana yang disalin dalam log verbose.

Perilaku opsi ini juga ditentukan oleh lokasi data sumber dan adanya opsi mode rekursif /S dan opsi pola file /Pattern.

AzCopy memerlukan izin LIST dan READ dari lokasi sumber ini saat menggunakan opsi ini.

Berlaku untuk: Blob, File

/MT

Mengatur waktu terakhir yang dimodifikasi file yang diunduh agar sama dengan blob sumber atau file.

Berlaku untuk: Blob, File

/XN

Mengecualikan sumber daya sumber yang lebih baru. Sumber daya tidak disalin jika waktu terakhir sumber yang dimodifikasi sama atau lebih baru dari tujuan.

Berlaku untuk: Blob, File

/XO

Mengecualikan sumber daya sumber yang lebih lama. Sumber daya tidak disalin jika waktu terakhir sumber yang dimodifikasi sama atau lebih lama dari tujuan.

Berlaku untuk: Blob, File

/J

Hanya mengunggah file yang memiliki set atribut Arsip.

Berlaku untuk: Blob, File

/IA:[RASHCNETOI]

Hanya mengunggah file yang memiliki salah satu atribut yang ditentukan yang ditetapkan.

Atribut yang tersedia meliputi:

  • R = File baca-saja
  • A = File siap untuk pengarsipan
  • S = File sistem
  • H = File tersembunyi
  • C = File terkompresi
  • N = File normal
  • E = File terenkripsi
  • T = File sementara
  • O = File offline
  • I = File yang tidak diindeks

Berlaku untuk: Blob, File

/XA:[RASHCNETOI]

Mengecualikan file yang memiliki atribut yang ditentukan yang ditetapkan.

Atribut yang tersedia meliputi:

  • R = File baca-saja
  • A = File siap untuk pengarsipan
  • S = File sistem
  • H = File tersembunyi
  • C = File terkompresi
  • N = File normal
  • E = File terenkripsi
  • T = File sementara
  • O = File offline
  • I = File yang tidak diindeks

Berlaku untuk: Blob, File

/Pemisah:"pemisah"

Menunjukkan karakter pemisah yang digunakan untuk memisahkan direktori virtual dalam nama blob.

Secara default, AzCopy menggunakan / sebagai karakter pemisah. Namun, AzCopy mendukung penggunaan karakter umum apa pun (seperti @, #, atau %) sebagai pemisah. Jika Anda perlu menyertakan salah satu karakter khusus ini pada baris perintah, sertakan nama file dengan tanda kutip ganda.

Opsi ini hanya berlaku untuk mengunduh blob.

Berlaku untuk: Gumpalan

/NC:"number-of-concurrent-operations"

Menentukan jumlah operasi bersamaan.

AzCopy secara default memulai sejumlah operasi bersamaan untuk meningkatkan throughput transfer data. Perhatikan bahwa sejumlah besar operasi bersamaan di lingkungan bandwidth rendah dapat membuat koneksi jaringan kewalahan dan mencegah operasi selesai sepenuhnya. Membatasi operasi bersamaan berdasarkan bandwidth jaringan aktual yang tersedia.

Batas atas untuk operasi bersamaan adalah 512.

Berlaku untuk: Blob, File, Tabel

/SourceType:"Blob" | "Tabel"

Menentukan bahwa source sumber daya adalah blob yang tersedia di lingkungan pengembangan lokal, yang berjalan di emulator penyimpanan.

Berlaku untuk: Blob, Tabel

/DestType:"Blob" | "Tabel"

Menentukan bahwa destination sumber daya adalah blob yang tersedia di lingkungan pengembangan lokal, yang berjalan di emulator penyimpanan.

Berlaku untuk: Blob, Tabel

/PKRS:"key1#key2#key3#..."

Memisahkan rentang kunci partisi untuk mengaktifkan ekspor data tabel secara paralel, yang meningkatkan kecepatan operasi ekspor.

Jika opsi ini tidak ditentukan, maka AzCopy menggunakan satu utas untuk mengekspor entitas tabel. Misalnya, jika pengguna menentukan /PKRS:"aa#bb", maka AzCopy memulai tiga operasi bersamaan.

Setiap operasi mengekspor salah satu dari tiga rentang kunci partisi, seperti yang ditunjukkan di bawah ini:

[first-partition-key, aa)

[aa, bb)

[bb, last-partition-key]

Berlaku untuk: Tabel

/SplitSize:"file-size"

Menentukan ukuran pemisahan file yang diekspor dalam MB, nilai minimal yang diizinkan adalah 32.

Jika opsi ini tidak ditentukan, AzCopy mengekspor data tabel ke satu file.

Jika data tabel diekspor ke blob, dan ukuran file yang diekspor mencapai batas 200 GB untuk ukuran blob, maka AzCopy membagi file yang diekspor, bahkan jika opsi ini tidak ditentukan.

Berlaku untuk: Tabel

/EntityOperation:"InsertOrSkip" | "InsertOrMerge" | "InsertOrReplace"

Menentukan perilaku impor data tabel.

  • InsertOrSkip - Melewati entitas yang ada atau menyisipkan entitas baru jika tidak ada dalam tabel.
  • InsertOrMerge - Menggabungkan entitas yang ada atau menyisipkan entitas baru jika tidak ada dalam tabel.
  • InsertOrReplace - Mengganti entitas yang ada atau menyisipkan entitas baru jika tidak ada dalam tabel.

Berlaku untuk: Tabel

/Manifest:"manifest-file"

Menentukan file manifes untuk operasi ekspor dan impor tabel.

Opsi ini bersifat opsional selama operasi ekspor, AzCopy menghasilkan file manifes dengan nama yang telah ditentukan sebelumnya jika opsi ini tidak ditentukan.

Opsi ini diperlukan selama operasi impor untuk menemukan file data.

Berlaku untuk: Tabel

/SyncCopy

Menunjukkan apakah akan menyalin blob atau file secara sinkron di antara dua titik akhir Azure Storage.

AzCopy secara default menggunakan salinan asinkron sisi server. Tentukan opsi ini untuk melakukan salinan sinkron, yang mengunduh blob atau file ke memori lokal lalu mengunggahnya ke Azure Storage.

Anda dapat menggunakan opsi ini saat menyalin file dalam penyimpanan Blob, dalam penyimpanan File, atau dari penyimpanan Blob ke penyimpanan File atau sebaliknya.

Berlaku untuk: Blob, File

/SetContentType:"content-type"

Menentukan tipe isi MIME untuk blob atau file tujuan.

AzCopy mengatur jenis konten untuk blob atau file ke application/octet-stream secara default. Anda dapat mengatur jenis konten untuk semua blob atau file dengan secara eksplisit menentukan nilai untuk opsi ini.

Jika Anda menentukan opsi ini tanpa nilai, maka AzCopy mengatur setiap jenis konten blob atau file sesuai dengan ekstensi filenya.

Berlaku untuk: Blob, File

/PayloadFormat:"JSON" | "CSV"

Menentukan format file data tabel yang diekspor.

Jika opsi ini tidak ditentukan, secara default AzCopy mengekspor file data tabel dalam format JSON.

Berlaku untuk: Tabel

Masalah umum dan Praktik Terbaik

Mari kita lihat beberapa masalah yang diketahui dan praktik terbaik.

Membatasi penulisan bersamaan saat menyalin data

Saat Anda menyalin blob atau file dengan AzCopy, perlu diingat bahwa aplikasi lain mungkin memodifikasi data saat Anda menyalinnya. Jika memungkinkan, pastikan bahwa data yang Anda salin tidak dimodifikasi selama operasi salin. Misalnya, saat menyalin VHD yang terkait dengan komputer virtual Azure, pastikan tidak ada aplikasi lain yang saat ini menulis ke VHD. Cara yang baik untuk melakukan ini adalah dengan menyewa sumber daya yang akan disalin. Secara bergantian, Anda dapat membuat rekam jepret VHD terlebih dahulu lalu menyalin rekam jepret.

Jika Anda tidak dapat mencegah aplikasi lain menulis ke blob atau file saat sedang disalin, maka perlu diingat bahwa pada saat pekerjaan selesai, sumber daya yang disalin mungkin tidak lagi memiliki paritas penuh dengan sumber daya sumber.

Aktifkan algoritma MD5 yang mematuhi FIPS untuk AzCopy saat Anda "Gunakan algoritma yang mematuhi FIPS untuk enkripsi, hash, dan penandatanganan."

AzCopy secara default menggunakan implementasi .NET MD5 untuk menghitung MD5 saat menyalin objek, tetapi ada beberapa persyaratan keamanan yang memerlukan AzCopy untuk mengaktifkan pengaturan MD5 yang mematuhi FIPS.

Anda dapat membuat file AzCopy.exe.config app.config dengan properti AzureStorageUseV1MD5 dan mengesampingkannya dengan AzCopy.exe.

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <appSettings>
    <add key="AzureStorageUseV1MD5" value="false"/>
  </appSettings>
</configuration>

Untuk properti "AzureStorageUseV1MD5":

  • True - Nilai default, AzCopy menggunakan implementasi .NET MD5.
  • False – AzCopy menggunakan algoritma MD5 yang mematuhi FIPS.

Algoritma yang mematuhi FIPS dinonaktifkan secara default di Windows. Anda dapat mengubah pengaturan kebijakan ini pada komputer Anda. Di jendela Jalankan (Windows+R), ketik secpol.msc untuk membuka jendela Kebijakan Keamanan Lokal . Di jendela Pengaturan Keamanan, navigasi ke Pengaturan> KeamananOpsi KeamananKebijakan> Lokal. Temukan kriptografi Sistem: Gunakan algoritma yang mematuhi FIPS untuk kebijakan enkripsi, hash, dan penandatanganan . Klik dua kali pada kebijakan untuk melihat nilai yang ditampilkan di kolom Pengaturan Keamanan .

Langkah berikutnya

Untuk informasi selengkapnya tentang Azure Storage dan AzCopy, lihat sumber daya berikut ini:

Dokumentasi Azure Storage:

Posting blog Azure Storage: