Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
AzCopy adalah utilitas baris perintah yang dapat Anda gunakan untuk menyalin file ke atau dari akun penyimpanan. Artikel ini berisi contoh perintah yang berfungsi dengan Azure Files.
Memulai
Lihat artikel Mulai menggunakan AzCopy untuk mengunduh AzCopy dan pelajari tentang cara memberikan informasi masuk otorisasi ke layanan penyimpanan.
Catatan
Contoh dalam artikel ini menunjukkan penggunaan token SAS untuk mengotorisasi akses. Namun, untuk perintah yang menargetkan file dan direktori, Anda sekarang dapat memberikan kredensial otorisasi dengan menggunakan ID Microsoft Entra dan menghilangkan token SAS dari perintah tersebut. Anda masih harus menggunakan token SAS dalam perintah apa pun yang hanya menargetkan berbagi file atau akun (misalnya: 'azcopy make https://mystorageaccount.file.core.windows.net/myfileshare' atau 'azcopy copy 'https://mystorageaccount.file.core.windows.net'.
Untuk mempelajari lebih lanjut, lihat Mengotorisasi AzCopy
Tip
Saat menggunakan Azure Files NFS, Anda harus menentukan --from-to sakelar CLI dengan salah satu opsi yang didukung berikut: FileNFSLocal, LocalFileNFS, atau FileNFSFileNFS dalam perintah Anda.
Skenario unggah dan unduh yang menggunakan LocalFileNFS dan FileNFSLocal hanya didukung di lingkungan Linux lokal. Operasi ini tidak didukung di Windows atau macOS. Sebaliknya, skenario FileNFSFileNFS, yang menggunakan API penyalinan server-ke-server, didukung di Windows, Linux, dan macOS. Anda dapat menjalankan perintah terkait dari salah satu platform ini.
Membuat berbagi file
Anda dapat menggunakan perintah azcopy make untuk membuat berbagi file. Contoh di bagian ini membuat berbagi file dengan nama myfileshare.
Catatan
AzCopy versi 10.30.0 memperkenalkan perubahan yang melanggar di mana AzCopy tidak lagi secara otomatis membuat berbagi file untuk transfer yang melibatkan Azure Files menggunakan protokol NFS atau SMB.
Tip
Contoh ini menyertakan argumen jalur dengan tanda kutip tunggal (''). Gunakan tanda kutip tunggal di semua shell perintah kecuali Windows Command Shell (cmd.exe). Jika Anda menggunakan Windows Command Shell (cmd.exe), sertakan argumen jalur dengan tanda kutip ganda ("") dan bukan tanda kutip tunggal ('').
Sintaks
azcopy make 'https://<storage-account-name>.file.core.windows.net/<file-share-name><SAS-token>'
Contoh
Untuk dokumen referensi mendetail, lihat azcopy make.
Unggah file
Gunakan perintah azcopy copy untuk mengunggah file dan direktori dari komputer lokal Anda.
Tip
Contoh dalam bagian ini mengapit argumen jalur dengan tanda kutip tunggal (''). Gunakan tanda kutip tunggal di semua shell perintah kecuali Windows Command Shell (cmd.exe). Jika Anda menggunakan Windows Command Shell (cmd.exe), sertakan argumen jalur dengan tanda kutip ganda ("") dan bukan tanda kutip tunggal ('').
Bagian ini berisi contoh-contoh berikut:
- Mengunggah file
- Mengunggah direktori
- Mengunggah konten direktori
- Mengunggah file tertentu
Tip
Gunakan bendera opsional untuk menyesuaikan operasi unggahan Anda. Berikut beberapa contohnya:
| Skenario | Bendera |
|---|---|
| Menyalin daftar kontrol akses (ACL) bersama dengan file. | --preserve-permissions=[true|false] |
| Menyalin informasi properti SMB beserta filenya. | --preserve-info=[true|false] |
Untuk daftar lengkap, lihat opsi.
Catatan
AzCopy tidak secara otomatis menghitung dan menyimpan kode hash MD5 file untuk file yang lebih besar dari 256 MB. Jika Anda ingin AzCopy melakukannya, tambahkan --put-md5 bendera ke setiap perintah salin. Dengan begitu, saat file diunduh, AzCopy menghitung hash MD5 untuk data yang diunduh dan memastikan bahwa hash MD5 yang disimpan dalam properti Content-md5 file cocok dengan hash terhitung.
Mengunggah file
Sintaks
azcopy copy '<local-file-path>' 'https://<storage-account-name>.file.core.windows.net/<file-share-name>/<file-name>'
azcopy copy 'C:\myDirectory\myTextFile.txt' 'https://mystorageaccount.file.core.windows.net/myfileshare/myTextFile.txt?[SAS]' --preserve-permissions=true --preserve-info=true
Anda juga dapat mengunggah file menggunakan simbol kartubebas (*) di mana saja di jalur file atau nama file. Misalnya: 'C:\myDirectory\*.txt', atau C:\my*\*.txt.
Mengunggah direktori
Contoh ini menyalin direktori dan semua file dalam direktori tersebut ke berbagi file. Hasilnya adalah direktori dalam berbagi file dengan nama yang sama.
Sintaks
azcopy copy '<local-directory-path>' 'https://<storage-account-name>.file.core.windows.net/<file-share-name><SAS-token>' --recursive
azcopy copy 'C:\myDirectory' 'https://mystorageaccount.file.core.windows.net/myfileshare?[SAS]' --recursive --preserve-permissions=true --preserve-info=true
Untuk menyalin ke direktori dalam berbagi file, cukup tentukan nama direktori tersebut dalam untai (karakter) perintah Anda.
azcopy copy 'C:\myDirectory' 'https://mystorageaccount.file.core.windows.net/myfileshare/myFileShareDirectory?[SAS]' --recursive --preserve-permissions=true --preserve-info=true
Jika Anda menentukan nama direktori yang tidak ada di berbagi file, AzCopy membuat direktori baru dengan nama tersebut.
Mengunggah konten direktori
Anda dapat mengunggah konten direktori tanpa menyalin direktori yang memuatnya dengan menggunakan simbol kartubebas (*).
Sintaks
azcopy copy '<local-directory-path>/*' 'https://<storage-account-name>.file.core.windows.net/<file-share-name>/<directory-path><SAS-token>'
azcopy copy 'C:\myDirectory\*' 'https://mystorageaccount.file.core.windows.net/myfileshare/myFileShareDirectory?[SAS]' --preserve-permissions=true --preserve-info=true
Catatan
Untuk mengunggah file di semua subdirektori, tambahkan --recursive bendera.
Mengunggah file tertentu
Anda dapat mengunggah file tertentu menggunakan nama file lengkap, nama parsial dengan karakter kartubebas (*), atau dengan menggunakan tanggal dan waktu.
Menentukan beberapa nama blob lengkap
Gunakan perintah azcopy copy dengan opsi --include-path. Pisahkan nama file individual dengan titik koma (;).
Sintaks
azcopy copy '<local-directory-path>' 'https://<storage-account-name>.file.core.windows.net/<file-share-or-directory-name><SAS-token>' --include-path <semicolon-separated-file-list>
azcopy copy 'C:\myDirectory' 'https://mystorageaccount.file.core.windows.net/myfileshare?[SAS]' --include-path 'photos;documents\myFile.txt' --preserve-permissions=true --preserve-info=true
Dalam contoh ini, AzCopy mentransfer direktori C:\myDirectory\photos dan file C:\myDirectory\documents\myFile.txt. Anda perlu menyertakan opsi --recursive untuk mentransfer semua file di direktori C:\myDirectory\photos.
Anda juga dapat mengecualikan file menggunakan opsi --exclude-path. Untuk mempelajari selengkapnya, lihat dokumen referensi azcopy copy.
Menggunakan karakter kartubebas
Gunakan perintah azcopy copy dengan opsi --include-pattern. Tentukan nama parsial yang menyertakan karakter kartubebas. Pisahkan nama menggunakan titik koma (;).
Sintaks
azcopy copy '<local-directory-path>' 'https://<storage-account-name>.file.core.windows.net/<file-share-or-directory-name><SAS-token>' --include-pattern <semicolon-separated-file-list-with-wildcard-characters>
azcopy copy 'C:\myDirectory' 'https://mystorageaccount.file.core.windows.net/myfileshare?[SAS]' --include-pattern 'myFile*.txt;*.pdf*' --preserve-permissions=true --preserve-info=true
Anda juga dapat mengecualikan file menggunakan opsi --exclude-pattern. Untuk mempelajari selengkapnya, lihat dokumen referensi azcopy copy.
Opsi --include-pattern dan --exclude-pattern hanya berlaku untuk nama file dan bukan ke jalur. Jika Anda ingin menyalin semua file teks yang ada di pohon direktori, gunakan opsi --recursive untuk mendapatkan seluruh pohon direktori, lalu gunakan --include-pattern dan tentukan *.txt untuk mendapatkan semua file teks.
Mengunggah file yang diubah setelah tanggal dan waktu
Gunakan perintah azcopy copy dengan opsi --include-after. Tentukan tanggal dan waktu dalam format ISO 8601 (misalnya: 2020-08-19T15:04:00Z).
Sintaks
azcopy copy '<local-directory-path>\*' 'https://<storage-account-name>.file.core.windows.net/<file-share-or-directory-name><SAS-token>' --include-after <Date-Time-in-ISO-8601-format>
azcopy copy 'C:\myDirectory\*' 'https://mystorageaccount.file.core.windows.net/myfileshare?[SAS]' --include-after '2020-08-19T15:04:00Z' --preserve-permissions=true --preserve-info=true
Menentukan jenis sumber dan tujuan saat mengunggah blob
AzCopy menggunakan --from-to parameter untuk secara eksplisit menentukan jenis sumber daya sumber dan tujuan saat deteksi otomatis mungkin gagal, seperti dalam skenario perpipaan atau emulator. Parameter ini membantu AzCopy memahami konteks transfer dan mengoptimalkannya.
| Nilai Dari Ke | Description |
|---|---|
LocalFileSMB |
Mengunggah dari sistem file lokal ke berbagi SMB di Azure File Storage |
LocalFileNFS |
Mengunggah dari sistem file lokal (khusus Linux) ke berbagi NFS di Azure File Storage |
PipeFile |
Mengalirkan data dari pipa ke Azure File Storage |
Mengunduh file
Gunakan perintah azcopy copy untuk mengunduh file, direktori, dan berbagi file ke komputer lokal Anda.
Tip
Contoh dalam bagian ini mengapit argumen jalur dengan tanda kutip tunggal (''). Gunakan tanda kutip tunggal di semua shell perintah kecuali Windows Command Shell (cmd.exe). Jika Anda menggunakan Windows Command Shell (cmd.exe), sertakan argumen jalur dengan tanda kutip ganda ("") dan bukan tanda kutip tunggal ('').
Bagian ini berisi contoh-contoh berikut:
- Unduh file
- Mengunduh direktori
- Mengunduh konten direktori
- Mengunduh file tertentu
Tip
Gunakan bendera opsional untuk menyesuaikan operasi pengunduhan Anda. Berikut beberapa contohnya:
| Skenario | Bendera |
|---|---|
| Menyalin daftar kontrol akses (ACL) bersama dengan file. | --preserve-permissions=[true|false] |
| Menyalin informasi properti SMB beserta filenya. | --preserve-info=[true|false] |
| Mendekompresi file secara otomatis. | --decompress |
Untuk daftar lengkap, lihat opsi.
Catatan
Jika nilai properti Content-md5 file berisi hash, AzCopy menghitung hash MD5 untuk data yang diunduh dan memastikan bahwa hash MD5 yang disimpan di properti Content-md5 file cocok dengan hash terhitung. Jika nilai ini tidak cocok, unduhan gagal kecuali Anda mengambil alih perilaku ini dengan menambahkan --check-md5=NoCheck atau --check-md5=LogOnly ke perintah copy.
Unduh file
Sintaks
azcopy copy 'https://<storage-account-name>.file.core.windows.net/<file-share-name>/<file-path><SAS-token>' '<local-file-path>'
azcopy copy 'https://mystorageaccount.file.core.windows.net/myfileshare/myTextFile.txt?[SAS]' 'C:\myDirectory\myTextFile.txt' --preserve-permissions=true --preserve-info=true
Mengunduh direktori
Sintaks
azcopy copy 'https://<storage-account-name>.file.core.windows.net/<file-share-name>/<directory-path><SAS-token>' '<local-directory-path>' --recursive
azcopy copy 'https://mystorageaccount.file.core.windows.net/myfileshare/myFileShareDirectory?[SAS]' 'C:\myDirectory' --recursive --preserve-permissions=true --preserve-info=true
Contoh ini membuat direktori bernama C:\myDirectory\myFileShareDirectory yang berisi semua file yang diunduh.
Mengunduh konten direktori
Anda dapat mengunduh isi direktori tanpa menyalin direktori yang memuatnya dengan menggunakan simbol wildcard (*).
Sintaks
azcopy copy 'https://<storage-account-name>.file.core.windows.net/<file-share-name>/*<SAS-token>' '<local-directory-path>/'
azcopy copy 'https://mystorageaccount.file.core.windows.net/myfileshare/myFileShareDirectory/*?[SAS]' 'C:\myDirectory' --preserve-permissions=true --preserve-info=true
Catatan
Untuk mengunduh file di semua subdirektori, tambahkan --recursive bendera.
Mengunduh file tertentu
Anda dapat mengunduh file tertentu menggunakan nama file lengkap, nama parsial dengan karakter kartubebas (*), atau menggunakan tanggal dan waktu.
Menentukan beberapa nama blob lengkap
Gunakan perintah azcopy copy dengan opsi --include-path. Pisahkan nama file individual dengan titik koma (;).
Sintaks
azcopy copy 'https://<storage-account-name>.file.core.windows.net/<file-share-or-directory-name><SAS-token>' '<local-directory-path>' --include-path <semicolon-separated-file-list>
azcopy copy 'https://mystorageaccount.file.core.windows.net/myFileShare/myDirectory?[SAS]' 'C:\myDirectory' --include-path 'photos;documents\myFile.txt' --recursive --preserve-permissions=true --preserve-info=true
Dalam contoh ini, AzCopy mentransfer direktori https://mystorageaccount.file.core.windows.net/myFileShare/myDirectory/photos dan file https://mystorageaccount.file.core.windows.net/myFileShare/myDirectory/documents/myFile.txt. Sertakan opsi --recursive untuk mentransfer semua file di direktori https://mystorageaccount.file.core.windows.net/myFileShare/myDirectory/photos.
Anda juga dapat mengecualikan file menggunakan opsi --exclude-path. Untuk mempelajari selengkapnya, lihat dokumen referensi azcopy copy.
Menggunakan karakter kartubebas
Gunakan perintah azcopy copy dengan opsi --include-pattern. Tentukan nama parsial yang menyertakan karakter kartubebas. Pisahkan nama menggunakan titik koma (;).
Sintaks
azcopy copy 'https://<storage-account-name>.file.core.windows.net/<file-share-or-directory-name><SAS-token>' '<local-directory-path>' --include-pattern <semicolon-separated-file-list-with-wildcard-characters>
azcopy copy 'https://mystorageaccount.file.core.windows.net/myfileshare/myDirectory?[SAS]' 'C:\myDirectory' --include-pattern 'myFile*.txt;*.pdf*' --preserve-permissions=true --preserve-info=true
Anda juga dapat mengecualikan file menggunakan opsi --exclude-pattern. Untuk mempelajari selengkapnya, lihat dokumen referensi azcopy copy.
Opsi --include-pattern dan --exclude-pattern hanya berlaku untuk nama file dan bukan ke jalur. Jika Anda ingin menyalin semua file teks yang ada di pohon direktori, gunakan opsi --recursive untuk mendapatkan seluruh pohon direktori, lalu gunakan --include-pattern dan tentukan *.txt untuk mendapatkan semua file teks.
Mengunggah file yang diubah setelah tanggal dan waktu
Gunakan perintah azcopy copy dengan opsi --include-after. Tentukan tanggal dan waktu dalam format ISO-8601 (misalnya: 2020-08-19T15:04:00Z).
Sintaks
azcopy copy 'https://<storage-account-name>.file.core.windows.net/<file-share-or-directory-name>/*<SAS-token>' '<local-directory-path>' --include-after <Date-Time-in-ISO-8601-format>
azcopy copy 'https://mystorageaccount.file.core.windows.net/myfileshare/*?[SAS]' 'C:\myDirectory' --include-after '2020-08-19T15:04:00Z' --preserve-permissions=true --preserve-info=true
Untuk referensi terperinci, lihat dokumen referensi azcopy copy.
Mengunduh dari rekam jepret bersama
Anda dapat mengunduh versi tertentu dari file atau direktori dengan merujuk pada nilai DateTime dari rekam jepret bersama. Untuk mempelajari selengkapnya tentang rekam jepret bersama, lihat Ringkasan rekam jepret bersama untuk Azure Files.
Sintaks
azcopy copy 'https://<storage-account-name>.file.core.windows.net/<file-share-name>/<file-path-or-directory-name><SAS-token>&sharesnapshot=<DateTime-of-snapshot>' '<local-file-or-directory-path>'
Contoh (Mengunduh file)
azcopy copy 'https://mystorageaccount.file.core.windows.net/myfileshare/myTextFile.txt?[SAS]&sharesnapshot=2020-09-23T08:21:07.0000000Z' 'C:\myDirectory\myTextFile.txt' --preserve-permissions=true --preserve-info=true
Contoh (Mengunduh direktori)
azcopy copy 'https://mystorageaccount.file.core.windows.net/myfileshare/myFileShareDirectory?[SAS]&sharesnapshot=2020-09-23T08:21:07.0000000Z' 'C:\myDirectory' --recursive --preserve-permissions=true --preserve-info=true
Menentukan jenis sumber dan tujuan saat mengunduh file
AzCopy menggunakan --from-to parameter untuk secara eksplisit menentukan jenis sumber daya sumber dan tujuan saat deteksi otomatis mungkin gagal, seperti dalam skenario perpipaan atau emulator. Parameter ini membantu AzCopy memahami konteks transfer dan mengoptimalkannya.
| Nilai Dari Ke | Description |
|---|---|
FileSMBLocal |
Unduh dari berbagi SMB di Azure File Storage ke sistem file lokal |
FileNFSLocal |
Unduh dari berbagi NFS di Azure File Storage ke sistem file lokal (hanya Linux) |
FileSMBLocal |
Unduh dari berbagi SMB ke sistem file lokal |
FilePipe |
Mengalirkan data dari Azure File Storage ke pipa |
Menyalin file antar-akun penyimpanan
Anda dapat menggunakan AzCopy untuk menyalin file ke akun penyimpanan lainnya. Operasi salin sinkron sehingga semua file disalin saat perintah kembali.
AzCopy menggunakan API server-ke-server, sehingga data disalin langsung di antara server penyimpanan. Anda dapat meningkatkan throughput operasi tersebut dengan mengatur nilai variabel lingkungan AZCOPY_CONCURRENCY_VALUE. Untuk mempelajari selengkapnya, lihat Meningkatkan Konkurensi.
Anda juga dapat menyalin versi file tertentu dengan merujuk nilai DateTime rekam jepret berbagi. Untuk mempelajari selengkapnya tentang rekam jepret bersama, lihat Ringkasan rekam jepret bersama untuk Azure Files.
Tip
Contoh dalam bagian ini mengapit argumen jalur dengan tanda kutip tunggal (''). Gunakan tanda kutip tunggal di semua shell perintah kecuali Windows Command Shell (cmd.exe). Jika Anda menggunakan Windows Command Shell (cmd.exe), sertakan argumen jalur dengan tanda kutip ganda ("") dan bukan tanda kutip tunggal ('').
Bagian ini berisi contoh-contoh berikut:
- Menyalin file ke akun penyimpanan lain
- Menyalin direktori ke akun penyimpanan lain
- Menyalin berbagi file ke akun penyimpanan lain
- Menyalin semua file bersama, direktori, dan file ke akun penyimpanan lain
Tip
Anda dapat mengubah operasi salin menggunakan bendera opsional. Berikut adalah beberapa contohnya.
| Skenario | Bendera |
|---|---|
| Menyalin daftar kontrol akses (ACL) bersama dengan file. | --preserve-permissions=[true|false] |
| Menyalin informasi properti SMB beserta filenya. | --preserve-info=[true|false] |
Untuk daftar lengkap, lihat opsi.
Menyalin file ke akun penyimpanan lain
Sintaks
azcopy copy 'https://<source-storage-account-name>.file.core.windows.net/<file-share-name>/<file-path><SAS-token>' 'https://<destination-storage-account-name>.file.core.windows.net/<file-share-name>/<file-path><SAS-token>'
Contoh
azcopy copy 'https://mysourceaccount.file.core.windows.net/mycontainer/myTextFile.txt?[SAS]' 'https://mydestinationaccount.file.core.windows.net/mycontainer/myTextFile.txt?[SAS]' --preserve-permissions=true --preserve-info=true
Contoh (rekam jepret bersama)
azcopy copy 'https://mysourceaccount.file.core.windows.net/mycontainer/myTextFile.txt?[SAS]&sharesnapshot=2020-09-23T08:21:07.0000000Z' 'https://mydestinationaccount.file.core.windows.net/mycontainer/myTextFile.txt?[SAS]' --preserve-permissions=true --preserve-info=true
Menyalin direktori ke akun penyimpanan lain
Sintaks
azcopy copy 'https://<source-storage-account-name>.file.core.windows.net/<file-share-name>/<directory-path><SAS-token>' 'https://<destination-storage-account-name>.file.core.windows.net/<file-share-name><SAS-token>' --recursive
Contoh
azcopy copy 'https://mysourceaccount.file.core.windows.net/myFileShare/myFileDirectory?[SAS]' 'https://mydestinationaccount.file.core.windows.net/mycontainer?[SAS]' --recursive --preserve-permissions=true --preserve-info=true
Contoh (rekam jepret bersama)
Menyalin berbagi file ke akun penyimpanan lain
Sintaks
azcopy copy 'https://<source-storage-account-name>.file.core.windows.net/<file-share-name><SAS-token>' 'https://<destination-storage-account-name>.file.core.windows.net/<file-share-name><SAS-token>' --recursive
Contoh
Contoh (rekam jepret bersama)
Menyalin semua file bersama, direktori, dan file ke akun penyimpanan lain
Sintaks
azcopy copy 'https://<source-storage-account-name>.file.core.windows.net/<SAS-token>' 'https://<destination-storage-account-name>.file.core.windows.net/<SAS-token>' --recursive'
Contoh
azcopy copy 'https://mysourceaccount.file.core.windows.net?[SAS]' 'https://mydestinationaccount.file.core.windows.net?[SAS]' --recursive --preserve-permissions=true --preserve-info=true
Contoh (rekam jepret bersama)
azcopy copy 'https://mysourceaccount.file.core.windows.net?[SAS]&sharesnapshot=2020-09-23T08:21:07.0000000Z' 'https://mydestinationaccount.file.core.windows.net?[SAS]' --recursive --preserve-permissions=true --preserve-info=true
Menentukan jenis sumber dan tujuan saat menyalin file
AzCopy menggunakan --from-to parameter untuk secara eksplisit menentukan jenis sumber daya sumber dan tujuan saat deteksi otomatis mungkin gagal, seperti dalam skenario perpipaan atau emulator. Parameter ini membantu AzCopy memahami konteks transfer dan mengoptimalkannya.
| Nilai Dari Ke | Description |
|---|---|
FileBlob |
Salin dari Azure File Storage ke Azure Blob Storage |
FileBlobFS |
Salin dari Azure File Storage ke Azure Data Lake Gen2 (BlobFS) |
FileSMBFileSMB |
Menyalin antara dua berbagi SMB di Azure File Storage |
FileNFSFileNFS |
Menyalin antara dua berbagi NFS di Azure File Storage |
FileNFSFileSMB |
Salin dari Azure File Storage NFS ke Azure Files Storage SMB |
FileSMBFileNFS |
Salin dari Azure File Storage SMB ke Azure Files Storage NFS |
Menyinkronkan file
Anda dapat menyinkronkan isi sistem file lokal dengan berbagi file atau menyinkronkan isi file share dengan file share lain. Anda juga dapat menyinkronkan konten direktori dalam berbagi file dengan konten direktori yang terletak di berbagi file lain. Sinkronisasi adalah salah satu caranya. Dengan kata lain, Anda memilih mana dari kedua titik akhir ini yang merupakan sumber dan mana yang menjadi tujuannya. Sinkronisasi juga menggunakan API server ke server.
Peringatan
Sinkronisasi AzCopy didukung tetapi tidak sepenuhnya direkomendasikan untuk Azure Files. Sinkronisasi AzCopy mendukung hingga 10 juta file per pekerjaan AzCopy dan beberapa keakuratan file mungkin hilang karena AzCopy menggunakan REST API Azure Files untuk menyalin konten ke berbagi Azure Files Anda. Untuk mempelajari selengkapnya, lihat Migrasikan ke berbagi file Azure.
Panduan
Secara default, perintah sinkronisasi membandingkan nama file dan tanda waktu terakhir yang dimodifikasi. Anda dapat mengambil alih perilaku tersebut untuk menggunakan hash MD5 alih-alih tanda waktu terakhir yang dimodifikasi dengan menggunakan --compare-hash bendera . Atur bendera opsional --delete-destination ke nilai true atau prompt untuk menghapus file di direktori tujuan jika file tersebut tidak ada lagi di direktori sumber.
Jika Anda mengatur bendera
--delete-destinationmenjaditrue, AzCopy akan menghapus file tanpa memberikan perintah. Jika Anda ingin perintah muncul sebelum AzCopy menghapus file, atur bendera--delete-destinationmenjadiprompt.Jika Anda berencana untuk mengatur bendera
--delete-destinationmenjadipromptataufalse, pertimbangkan untuk menggunakan perintah salin bukan perintah sinkronisasi lalu atur parameter--overwritekeifSourceNewer. Perintah salin menggunakan lebih sedikit memori dan menimbulkan lebih sedikit biaya tagihan karena operasi salin tidak harus mengindeks sumber atau tujuan sebelum memindahkan file.Jika Anda tidak berencana untuk menggunakan
--compare-hashbendera, maka komputer tempat Anda menjalankan perintah sinkronisasi harus memiliki jam sistem yang akurat karena waktu terakhir yang dimodifikasi sangat penting dalam menentukan apakah file harus ditransfer. Jika sistem Anda memiliki penyimpangan jam yang signifikan, hindari mengubah file di tujuan terlalu dekat dengan waktu yang Anda rencanakan untuk menjalankan perintah sinkronisasi.AzCopy menggunakan API server-ke-server untuk menyinkronkan data antar akun penyimpanan. Itu berarti bahwa data disalin langsung di antara server penyimpanan. Namun, AzCopy memang menyiapkan dan memantau setiap transfer, dan untuk akun penyimpanan yang lebih besar (Misalnya, akun yang berisi jutaan blob), AzCopy mungkin memerlukan sejumlah besar sumber daya komputasi untuk menyelesaikan tugas-tugas ini. Oleh karena itu, jika Anda menjalankan AzCopy dari Komputer Virtual (VM), pastikan bahwa VM memiliki cukup core/memori untuk menangani beban.
Tip
Anda dapat mengubah operasi sinkronisasi menggunakan bendera opsional. Berikut adalah beberapa contohnya.
| Skenario | Bendera |
|---|---|
| Menyalin daftar kontrol akses (ACL) bersama dengan file. | --preserve-permissions=[true|false] |
| Menyalin informasi properti SMB beserta filenya. | --preserve-info=[true|false] |
| Mengecualikan file berdasarkan pola. | --exclude-path |
| Menentukan seberapa detail Anda ingin entri log terkait sinkronisasi dibuat. | --log-level=[WARNING|ERROR|INFO|NONE] |
Untuk daftar lengkap, lihat opsi.
Contoh dalam bagian ini mengapit argumen jalur dengan tanda kutip tunggal (''). Gunakan tanda kutip tunggal di semua shell perintah kecuali Windows Command Shell (cmd.exe). Jika Anda menggunakan Windows Command Shell (cmd.exe), sertakan argumen jalur dengan tanda kutip ganda ("") dan bukan tanda kutip tunggal ('').
Memperbarui file bersama dengan perubahan pada sistem file lokal
Dalam hal ini, file bersama adalah tujuan, dan sistem file lokal adalah sumbernya.
Tip
Contoh ini menyertakan argumen jalur dengan tanda kutip tunggal (''). Gunakan tanda kutip tunggal di semua shell perintah kecuali Windows Command Shell (cmd.exe). Jika Anda menggunakan Windows Command Shell (cmd.exe), sertakan argumen jalur dengan tanda kutip ganda ("") dan bukan tanda kutip tunggal ('').
Sintaks
azcopy sync '<local-directory-path>' 'https://<storage-account-name>.file.core.windows.net/<file-share-name><SAS-token>' --recursive
Contoh
azcopy sync 'C:\myDirectory' 'https://mystorageaccount.file.core.windows.net/myfileShare?[SAS]' --recursive
Memperbarui sistem file lokal dengan perubahan pada file bersama
Dalam hal ini, sistem file lokal adalah tujuan, dan file berbagi adalah sumbernya.
Tip
Contoh ini menyertakan argumen jalur dengan tanda kutip tunggal (''). Gunakan tanda kutip tunggal di semua shell perintah kecuali Windows Command Shell (cmd.exe). Jika Anda menggunakan Windows Command Shell (cmd.exe), sertakan argumen jalur dengan tanda kutip ganda ("") dan bukan tanda kutip tunggal ('').
Sintaks
azcopy sync 'https://<storage-account-name>.file.core.windows.net/<file-share-name><SAS-token>' 'C:\myDirectory' --recursive
Contoh
azcopy sync 'https://mystorageaccount.file.core.windows.net/myfileShare?[SAS]' 'C:\myDirectory' --recursive
Memperbarui berkas berbagi dengan perubahan dari berkas berbagi lain
Berbagi file pertama dalam perintah ini adalah sumbernya. Perintah menyalin perubahan dari berkas sumber yang dibagikan ini. Pembagian berkas kedua adalah tujuan.
Sintaks
azcopy sync 'https://<source-storage-account-name>.file.core.windows.net/<file-share-name><SAS-token>' 'https://<destination-storage-account-name>.file.core.windows.net/<file-share-name><SAS-token>' --recursive
Contoh
azcopy sync 'https://mysourceaccount.file.core.windows.net/myfileShare?[SAS]' 'https://mydestinationaccount.file.core.windows.net/myfileshare?[SAS]' --recursive --preserve-permissions=true --preserve-info=true
Memperbarui direktori dengan perubahan pada direktori di berbagi file lain
Direktori pertama yang muncul dalam perintah ini adalah sumbernya. Yang kedua adalah tujuannya.
Sintaks
azcopy sync 'https://<source-storage-account-name>.file.core.windows.net/<file-share-name>/<directory-name><SAS-token>' 'https://<destination-storage-account-name>.file.core.windows.net/<file-share-name>/<directory-name><SAS-token>' --recursive
Contoh
azcopy sync 'https://mysourceaccount.file.core.windows.net/myFileShare/myDirectory?[SAS]' 'https://mydestinationaccount.file.core.windows.net/myFileShare/myDirectory?[SAS]' --recursive --preserve-permissions=true --preserve-info=true
Memperbarui berbagi file agar sesuai dengan konten rekam jepret bersama
Berbagi file pertama yang muncul dalam perintah ini adalah sumbernya. Di akhir URI, tambahkan untai (karakter) &sharesnapshot= diikuti dengan nilai DateTime dari rekam jepret.
Sintaks
azcopy sync 'https://<source-storage-account-name>.file.core.windows.net/<file-share-name><SAS-token>&sharesnapsot<snapshot-ID>' 'https://<destination-storage-account-name>.file.core.windows.net/<file-share-name><SAS-token>' --recursive
Contoh
azcopy sync 'https://mysourceaccount.file.core.windows.net/myfileShare?[SAS]&sharesnapshot=2020-09-23T08:21:07.0000000Z' 'https://mydestinationaccount.file.core.windows.net/myfileshare?[SAS]' --recursive --preserve-permissions=true --preserve-info=true
Untuk mempelajari selengkapnya tentang rekam jepret bersama, lihat Ringkasan rekam jepret bersama untuk Azure Files.
Properti dan izin yang akan dipertahankan
Tip
Saat mengunduh file ke sistem Linux lokal, Anda memerlukan hak istimewa yang ditingkatkan jika pemilik atau grup yang ditentukan berbeda dari pengguna saat ini. Untuk mengubah kepemilikan atau grup file yang diunduh, jalankan azcopy dengan sudo atau sebagai pengguna root.
| Type | Properti (--preserve-info) | Izin (--preserve-permissions) |
|---|---|---|
| Azure Files SMB | NTFSFileAttributes (ReadOn BacaSaja, Hidden Tersembunyi, System Sistem, Directory Direktori, Archive Arsip, None TidakAda, Temporary Sementara, Offline LuarJaringan, NotContentIndexed TidakDiindeksIsi, NoScrubData TanpaDataScrub) (x-ms-file-attributes) CreationTime (waktu pembuatan berkas x-ms) WaktuTulisTerakhir (x-ms-file-last-write-time) |
ACL (x-ms-file-permission) |
| Azure Files NFS | CreationTime (waktu pembuatan berkas x-ms) WaktuTulisTerakhir (x-ms-file-last-write-time) |
Pemilik (x-ms-owner) Grup (x-ms-group) FileMode (mode x-ms) |
Langkah berikutnya
Temukan contoh lainnya dalam salah satu artikel ini:
Lihat artikel ini untuk mengonfigurasi pengaturan, mengoptimalkan performa, dan memecahkan masalah: