Aracılığıyla paylaş


Dosya Kopyala

Copy File işlemi bir blobu veya dosyayı depolama hesabındaki hedef dosyaya kopyalar. Bu işlem, SMB protokolü etkinleştirilmiş Dosya Paylaşımları için 2015-02-21 ve sonraki sürümlerde ve NFS protokolü etkinleştirilmiş Dosya Paylaşımları için 2025-05-05 ve sonraki sürümlerde desteklenir.

Protokol kullanılabilirliği

Etkin dosya paylaşımı protokolü Mevcut
SMB Evet
NFS Evet

İstek

Copy File isteği aşağıdaki gibi oluşturulur. HTTPS kullanmanızı öneririz.

2013-08-15 sürümünden başlayarak, kaynak dosyayla aynı hesaptaysa hedef dosya için paylaşılan erişim imzası belirtebilirsiniz. 2015-04-05 sürümünden başlayarak, farklı bir depolama hesabındaysa hedef dosya için paylaşılan erişim imzası da belirtebilirsiniz.

Yöntem İstek URI'si HTTP sürümü
KOYMAK https://myaccount.file.core.windows.net/myshare/mydirectorypath/myfile HTTP/1.1

İstek URI'sinde gösterilen yol bileşenlerini aşağıdaki gibi kendinizle değiştirin:

Yol bileşeni Açıklama
myaccount Depolama hesabınızın adı.
myshare Dosya paylaşımınızın adı.
mydirectorypath Opsiyonel. Üst dizinin yolu.
myfile Dosyanın adı.

Yol adlandırma kısıtlamaları hakkında ayrıntılı bilgi için bkz. Paylaşımları, dizinleri, dosyaları ve meta verileriadlandırma ve başvurma.

URI parametreleri

İstek URI'sinde aşağıdaki ek parametreleri belirtebilirsiniz:

Parametre Açıklama
timeout Opsiyonel. timeout parametresi saniye cinsinden ifade edilir. Daha fazla bilgi için bkz. Azure Dosyalar işlemleri için zaman aşımlarını ayarlama.

İstek üst bilgileri

Gerekli ve isteğe bağlı istek üst bilgileri aşağıdaki tablolarda açıklanmıştır:

Ortak istek üst bilgileri

İstek üst bilgisi Açıklama
Authorization Gerekli. Yetkilendirme düzenini, hesap adını ve imzayı belirtir. Daha fazla bilgi için bkz. azure depolama istekleri yetkilendirme.
Date veya x-ms-date Gerekli. İstek için Eşgüdümlü Evrensel Saati (UTC) belirtir. Daha fazla bilgi için bkz. azure depolama istekleri yetkilendirme.
x-ms-version Tüm yetkili istekler için gereklidir. Bu istek için kullanılacak işlemin sürümünü belirtir. Bu işlem, SMB protokolü etkinleştirilmiş Dosya Paylaşımları için 2015-02-21 ve sonraki sürümlerde ve NFS protokolü etkinleştirilmiş Dosya Paylaşımları için 2025-05-05 ve sonraki sürümlerde desteklenir.

Daha fazla bilgi için bkz. Azure Depolama hizmetleri için sürüm oluşturma.
x-ms-meta-name:value Opsiyonel. Dosyayla ilişkili ad/değer çiftlerini meta veri olarak belirtir. Ad/değer çifti belirtilmezse, işlem meta verileri kaynak blobdan veya dosyadan hedef dosyaya kopyalar. Bir veya daha fazla ad/değer çifti belirtilirse, hedef dosya belirtilen meta verilerle oluşturulur ve meta veriler kaynak blobdan veya dosyadan kopyalanır. Meta veri adları, C# tanımlayıcıları için adlandırma kurallarına uymalıdır.

Azure Dosyalar aracılığıyla belirtilen dosya meta verilerine SMB istemcisinden erişilemez.
x-ms-copy-source:name Gerekli. En fazla 2 kibibayt (KiB) uzunluğunda olan kaynak dosyanın veya blobun URL'sini belirtir.

Bir dosyayı aynı depolama hesabı içindeki başka bir dosyaya kopyalamak için, kaynak dosyayı yetkilendirmek için paylaşılan anahtar kullanabilirsiniz. Başka bir depolama hesabından dosya kopya ediyorsanız veya aynı depolama hesabından veya başka bir depolama hesabından bir blob kopya ediyorsanız, paylaşılan erişim imzası kullanarak kaynak dosyayı veya blobu yetkilendirmeniz gerekir. Kaynak bir genel blob ise, kopyalama işlemini gerçekleştirmek için yetkilendirme gerekmez. Ayrıca, paylaşım anlık görüntüsündeki bir dosyayı kopya kaynağı olarak da belirtebilirsiniz.

Kaynak nesne URL'lerine bazı örnekler aşağıda verilmiştir:
  • https://myaccount.file.core.windows.net/myshare/mydirectorypath/myfile
  • https://myaccount.blob.core.windows.net/mycontainer/myblob?sastoken
  • http://myaccount.file.core.windows.net/myshare/mydirectorypath/myfile?sharesnapshot=<DateTime>
x-ms-lease-id:<ID> Hedef dosyanın etkin bir kirası varsa gereklidir. 2019-02-02 ve sonraki sürümlerde kullanılabilir. Bu üst bilgi için belirtilen kira kimliği, hedef dosyanın kira kimliğiyle eşleşmelidir. İstek kira kimliğini içermiyorsa veya kimlik geçerli değilse, işlem 412 durum koduyla başarısız olur (Önkoşul Başarısız oldu).

Bu üst bilgi belirtilirse ve hedef dosyanın şu anda etkin bir kirası yoksa, işlem 412 durum koduyla başarısız olur (Önkoşul Başarısız oldu).

Hedef dosya, dosya kiralamalarını desteklemeyen NFS protokolü etkinleştirilmiş bir Dosya Paylaşımında bulunuyorsa bu üst bilgi yoksayılır.
x-ms-file-creation-time Opsiyonel. Sürüm 2019-07-07 ve üzeri için kullanılabilir. Bu üst bilgi, hedef dosyada ayarlanacağı oluşturma zamanı özelliğini UTC olarak belirtir. Oluşturma zamanını kaynak dosyadan hedef dosyaya kopyalamak için source değerini kullanabilirsiniz.
x-ms-file-last-write-time Opsiyonel. Sürüm 2019-07-07 ve üzeri için kullanılabilir. Bu üst bilgi, hedef dosyada ayarlanacağı son yazma zamanının (UTC) özelliğini belirtir. Kaynak dosyadan hedef dosyaya son yazma zamanını kopyalamak için source değerini kullanabilirsiniz.
x-ms-client-request-id Opsiyonel. Günlüğe kaydetme yapılandırıldığında günlüklere kaydedilen 1 KiB karakter sınırıyla istemci tarafından oluşturulan, opak bir değer sağlar. İstemci tarafı etkinlikleriyle sunucunun aldığı istekler arasında bağıntı sağlamak için bu üst bilgiyi kullanmanızı kesinlikle öneririz. Daha fazla bilgi için bkz. azure blob depolama izleme.
x-ms-file-request-intent Authorization üst bilgisi bir OAuth belirteci belirtiyorsa gereklidir. Kabul edilebilir değer backup. Bu üst bilgi, Microsoft.Storage/storageAccounts/fileServices/readFileBackupSemantics/action veya Microsoft.Storage/storageAccounts/fileServices/writeFileBackupSemantics/action, Authorization üst bilgisi kullanılarak yetkilendirilmiş kimliğe atanan RBAC ilkesine dahil edilirse verilmesi gerektiğini belirtir. Sürüm 2022-11-02 ve üzeri için kullanılabilir.
x-ms-allow-trailing-dot: { <Boolean> } Opsiyonel. Sürüm 2022-11-02 ve üzeri. Boole değeri, istek URL'sinde bulunan sondaki bir noktanın kırpılıp kırpılmaması gerektiğini belirtir.

Hedef, varsayılan olarak sondaki noktayı destekleyen NFS protokolü etkinleştirilmiş bir Dosya Paylaşımında bulunuyorsa bu üst bilgi yoksayılır.

Daha fazla bilgi için bkz. Paylaşımları, dizinleri, dosyaları ve meta verileriadlandırma ve başvurma.
x-ms-source-allow-trailing-dot: { <Boolean> } Opsiyonel. Sürüm 2022-11-02 ve üzeri. Boole değeri, kaynak URL'de bulunan sondaki noktanın kırpılıp kırpılmaması gerektiğini belirtir. Bu üst bilgi yalnızca kopyalama kaynağı bir Azure Dosya Paylaşımı'nda bulunuyorsa belirtilmelidir. Bu üst bilgi, başka bir kopyalama kaynağı türü için desteklenmez.

Kopyalama kaynağı varsayılan olarak sondaki noktayı destekleyen NFS protokolü etkinleştirilmiş bir Dosya Paylaşımında bulunuyorsa bu üst bilgi yoksayılır.

Daha fazla bilgi için bkz. Paylaşımları, dizinleri, dosyaları ve meta verileriadlandırma ve başvurma.

Yalnızca SMB istek üst bilgileri

İstek üst bilgisi Açıklama
x-ms-file-change-time: { <DateTime> ¦ source } Opsiyonel. Sürüm 2021-06-08 ve üzeri. DOSYANıN ISO 8601 biçiminde biçimlendirilmiş UTC değişiklik zamanı özelliği. source değeri, değişiklik zamanını kaynak dosyadan hedef dosyaya kopyalamak için kullanılabilir. Varsayılan zaman damgası, isteğin saatidir.
x-ms-file-permission-copy-mode: { source ¦ override } Opsiyonel. Sürüm 2019-07-07 ve üzeri için kullanılabilir. Dosyanın güvenlik tanımlayıcısının kopyalama davranışını belirler:
  • source: Hedef dosyadaki güvenlik tanımlayıcısı kaynak dosyadan kopyalanır.
  • override: Hedef dosyadaki güvenlik tanımlayıcısı x-ms-file-permission veya x-ms-file-permission-key üst bilgisi aracılığıyla belirlenir.
x-ms-file-permission: { <SDDL> ¦ <binary> } x-ms-file-permission-copy-mode override olarak belirtilirse ve x-ms-file-permission-key belirtilmezse gereklidir. Sürüm 2019-07-07 ve üzeri için kullanılabilir. Bu izin, Güvenlik Tanımlayıcısı Tanım Dili (SDDL) veya (sürüm 2025-01-05 veya üzeri) base64 ile kodlanmış ikili güvenlik tanımlayıcısı biçimindebelirtilen dosyanın güvenlik tanımlayıcısıdır. x-ms-file-permission-format üst bilgisi ile hangi biçimin kullanılacağını belirtebilirsiniz. İzin boyutu 8 kibibayt (KiB) veya daha azsa bu üst bilgiyi kullanabilirsiniz. Aksi takdirde, x-ms-file-permission-keykullanabilirsiniz. Belirtilirse, bir sahip, grup ve isteğe bağlı erişim denetimi listesi (DACL)olmalıdır.

x-ms-file-permission veya x-ms-file-permission-key yalnızca biri belirtilebilir.
x-ms-file-permission-key x-ms-file-permission-copy-mode override olarak belirtilirse ve x-ms-file-permission belirtilmezse gereklidir. Sürüm 2019-07-07 ve üzeri için kullanılabilir. Bu üst bilgi, dosya için ayarlanacak iznin anahtarını belirtir. Create Permission işlemini kullanarak bu anahtarı oluşturabilirsiniz.

x-ms-file-permission veya x-ms-file-permission-key yalnızca biri belirtilebilir.
x-ms-file-permission-format: { sddl ¦ binary } Opsiyonel. Sürüm 2025-01-05 veya üzeri. x-ms-file-permission geçirilen değerin SDDL'de mi yoksa ikili biçimde mi olduğunu belirtir. Bu üst bilgi ayarlı değilse, varsayılan sddl değeri kullanılır.
x-ms-file-attributes Opsiyonel. Sürüm 2019-07-07 ve üzeri için kullanılabilir. Bu üst bilgi, hedef dosyada ayarlanacak dosya sistemi özniteliklerini belirtir. kullanılabilirözniteliklerin listesine bakın. Öznitelikleri kaynak dosyadan hedef dosyaya kopyalamak için source değerini kullanabilirsiniz. Hedef dosyadaki tüm öznitelikleri temizlemek için none değerini kullanabilirsiniz.
x-ms-file-copy-ignore-readonly Opsiyonel. Sürüm 2019-07-07 ve üzeri için kullanılabilir. Bu Boole değeri, önceden var olan bir hedef dosyadaki ReadOnly özniteliğine uyulup uyulmayacağını belirtir. trueise kopyalama işlemi başarılı olur. Aksi takdirde, ReadOnly öznitelik kümesine sahip hedefte önceki bir dosya kopyalama işleminin başarısız olmasına neden olur.
x-ms-file-copy-set-archive Opsiyonel. Sürüm 2019-07-07 ve üzeri için kullanılabilir. Bu Boole değeri, Archive üst bilgi değerinden bağımsız olarak x-ms-file-attributes özniteliğinin ayarlanıp ayarlanmayacağını belirtir.

Yalnızca NFS istek üst bilgileri

İstek üst bilgisi Açıklama
x-ms-file-mode-copy-mode: { source ¦ override } Opsiyonel. Sürüm 2025-05-05 ve üzeri. Yalnızca kopyalama kaynağı NFS protokolü etkinleştirilmiş bir Dosya Paylaşımında bulunan bir dosya olduğunda geçerlidir. Dosyanın mod bitlerinin kopyalama davranışını belirler:
  • source: Hedef dosyadaki mod kaynak dosyadan kopyalanır.
  • override: Hedef dosyadaki mod, x-ms-mode üst bilgisi aracılığıyla belirlenir.
x-ms-mode Sürüm 2025-05-05 ve üzeri. x-ms-file-mode-copy-mode overrideolarak belirtilmişse gereklidir. Dosyada ayarlanacak mod bitleri. Mod, 12 bit sayısal sekizli biçimde veya sembolik 'rwx' biçiminde temsil edilir. bkz. POSIX dosya izinleri (mod).
x-ms-file-owner-copy-mode: { source ¦ override } Opsiyonel. Sürüm 2025-05-05 ve üzeri. Yalnızca kopyalama kaynağı NFS protokolü etkinleştirilmiş bir Dosya Paylaşımında bulunan bir dosya olduğunda geçerlidir. Dosyanın sahip kullanıcı tanımlayıcısının (UID) ve grup tanımlayıcısının (GID) kopya davranışını belirler:
  • source: Hedef dosyadaki sahip kullanıcı tanımlayıcısı (UID) ve grup tanımlayıcısı (GID) kaynak dosyadan kopyalanır.
  • override: Hedef dosyadaki sahip kullanıcı tanımlayıcısı (UID) ve grup tanımlayıcısı (GID), sırasıyla x-ms-owner ve x-ms-group üst bilgileri aracılığıyla belirlenir.
x-ms-owner Sürüm 2025-05-05 ve üzeri. Dosya üzerinde ayarlanacak dosya sahibinin kullanıcı tanımlayıcısı (UID). x-ms-file-owner-copy-mode overrideolarak belirtilmişse gereklidir.
x-ms-group Sürüm 2025-05-05 ve üzeri. Dosya üzerinde ayarlanacak dosya sahibinin grup tanımlayıcısı (GID). x-ms-file-owner-copy-mode overrideolarak belirtilmişse gereklidir.

İstek gövdesi

Hiç kimse.

Yanıt

Yanıt bir HTTP durum kodu ve bir dizi yanıt üst bilgisi içerir.

Durum kodu

Başarılı bir işlem 202 (Kabul Edildi) durum kodunu döndürür. Durum kodları hakkında bilgi için bkz. Durum ve hata kodları.

Yanıt üst bilgileri

Bu işlemin yanıtı aşağıdaki tablolardaki üst bilgileri içerir. Yanıt, ek standart HTTP üst bilgileri de içerebilir. Tüm standart üst bilgiler HTTP/1.1 protokol belirtimine uygundur.

Ortak yanıt üst bilgileri

Yanıt üst bilgisi Açıklama
ETag Kopyalama işlemi tamamlandıysa, hedef dosyanın ETag değerini içerir. Kopyalama işlemi tamamlanmazsa, işlemin başlangıcında oluşturulan boş dosyanın ETag değerini içerir.
Last-Modified Hedef dosyaya kopyalama işleminin bittiği tarihi/saati döndürür.
x-ms-request-id Yapılan isteği benzersiz olarak tanımlar. İstekle ilgili sorunları gidermek için bu üst bilgiyi kullanabilirsiniz. Daha fazla bilgi için bkz. API işlem sorunlarını giderme.
x-ms-version İsteği yürütmek için kullanılan Azure Dosyalar sürümünü gösterir.
Date Hizmetin yanıtı gönderdiği saati gösteren UTC tarih/saat değeri.
x-ms-copy-id: <id> Bu kopyalama işlemi için bir dize tanımlayıcısı sağlar. Bu kopyalama işleminin durumunu denetlemek için Get File veya Get File Properties ile kullanın ya da bekleyen kopyalama işlemini iptal etmek için Abort Copy File geçirin.
x-ms-copy-status: <success ¦ pending> Kopyalama işleminin durumunu şu değerlerle gösterir:

- success: Kopyalama işlemi başarıyla tamamlandı.
- pending: Kopyalama işlemi devam ediyor.
x-ms-client-request-id İsteklerde ve ilgili yanıtlarda sorun gidermek için kullanılabilir. bu üst bilginin değeri, istekte mevcutsa ve değer en fazla 1.024 görünür ASCII karakteriyse x-ms-client-request-id üst bilgisinin değerine eşittir. İstekte x-ms-client-request-id üst bilgisi yoksa, yanıtta bu üst bilgi bulunmaz.

Yalnızca SMB yanıt üst bilgileri

Hiç kimse.

Yalnızca NFS yanıt üst bilgileri

Hiç kimse.

Yanıt gövdesi

Hiç kimse

Örnek yanıt

Response Status:  
HTTP/1.1 202 Accepted  
  
Response Headers:   
Last-Modified: <date>   
ETag: "0x8CEB669D794AFE2"  
Server: Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0  
x-ms-request-id: cc6b209a-b593-4be1-a38a-dde7c106f402  
x-ms-version: 2015-02-21  
x-ms-copy-id: 1f812371-a41d-49e6-b123-f4b542e851c5  
x-ms-copy-status: pending  
Date: <date>  

İzin

Bu işlem hesap sahibi veya hedef dosyaya veya paylaşımına yazma izni olan paylaşılan erişim imzasına sahip bir istemci tarafından çağrılabilir. İstekte belirtilen paylaşılan erişim imzasının yalnızca hedef dosya için geçerli olduğunu unutmayın.

kaynak dosyaya veya bloba erişim, x-ms-copy-sourceistek üst bilgisi ayrıntılarında açıklandığı gibi ayrı olarak yetkilendirilir.

Aşağıdaki tabloda, bir Copy File işlemi için hedef ve kaynak nesnelerin nasıl yetkilendirilebileceği açıklanmaktadır:

Dosya Paylaşılan Anahtar veya Paylaşılan Anahtar Lite ile Yetkilendirme Paylaşılan erişim imzası ile yetkilendirme Yetkilendirme gerektirmeyen genel nesne
Hedef dosya Evet Evet Uygulanamaz
Aynı hesaptaki kaynak dosya Evet Evet Uygulanamaz
Başka bir hesaptaki kaynak dosya Hayır Evet Uygulanamaz
Aynı hesaptaki veya başka bir hesaptaki kaynak blob Hayır Evet Evet

Dosya sistemi öznitelikleri

Öznitelik Win32 dosya özniteliği Tanım
ReadOnly FILE_ATTRIBUTE_READONLY Dosya salt okunur. Uygulamalar dosyayı okuyabilir ancak dosyaya yazamaz veya silemez.
Hidden FILE_ATTRIBUTE_HIDDEN Dosya gizlidir. Sıradan bir dizin listesine dahil değildir.
System FILE_ATTRIBUTE_SYSTEM İşletim sistemi dosyanın bir bölümünü veya dosyayı özel olarak kullanır.
None FILE_ATTRIBUTE_NORMAL Dosyada başka öznitelikler ayarlanmadı. Bu öznitelik yalnızca tek başına kullanıldığında geçerlidir.
Archive FILE_ATTRIBUTE_ARCHIVE Dosya bir arşiv dosyasıdır. Uygulamalar genellikle dosyaları yedekleme veya kaldırma amacıyla işaretlemek için bu özniteliği kullanır.
Temporary FILE_ATTRIBUTE_TEMPORARY Dosya geçici depolama için kullanılıyor.
Offline FILE_ATTRIBUTE_OFFLINE Dosyanın verileri hemen kullanılamaz. Bu dosya sistemi özniteliği çoğunlukla Windows ile uyumluluk sağlar. Azure Dosyalar çevrimdışı depolama seçenekleriyle desteklemez.
NotContentIndexed FILE_ATTRIBUTE_NOT_CONTENT_INDEXED İçerik dizin oluşturma hizmeti dosyanın dizinini oluşturmaz.
NoScrubData FILE_ATTRIBUTE_NO_SCRUB_DATA Arka plan veri bütünlüğü tarayıcısı kullanıcı veri akışını okumaz. Bu dosya sistemi özniteliği çoğunlukla Windows ile uyumluluk sağlar.

POSIX dosya izinleri (mod)

POSIX dosya izinleri sayısal olarak 12 bit sayısal sekizli biçimde veya sembolik "rwx" biçiminde belirtilebilir. Örnekler:

  • "0644" veya "rw-r--r--": Kullanıcının (dosya sahibi) okuma, yazma izni vardır. Grubun okuma izni var. Diğerleri okuma iznine sahiptir.
  • "0755" veya "rwxr-xr-x": Kullanıcının (dosya sahibi) okuma, yazma ve yürütme izni vardır. Grup okuma ve yürütme iznine sahiptir. Diğerleri okuma ve yürütme iznine sahiptir.

Sayısal sekizli biçim

En düşük üç sekizli sayı sahip/kullanıcı, grup ve diğer kişilerin izinlerini temsil eder ve '4' (Okuma), '2' (Yazma), '1' (Yürüt) bit düzeyinde bir birleşim kullanılarak oluşturulan sekizli bir sayı (0-7) kullanılarak belirtilir. En yüksek sıralı sekizli sayı (0-7), '4' (SetUID), '2' (SetGID), '1' (Yapışkan Bit) izinlerinin birleşimini belirtmek için kullanılır.

Biçim İzin
0700 Kullanıcının (dosya sahibi) okuma, yazma ve yürütme izni vardır.
0400 Kullanıcının okuma izni var.
0200 Kullanıcının yazma izni var.
0100 Kullanıcının yürütme izni var.
0070 Grubun okuma, yazma ve yürütme izni vardır.
0040 Grubun okuma izni var.
0020 Grubun yazma izni var.
0010 Grubun yürütme izni var.
0007 Diğerleri okuma, yazma ve yürütme iznine sahiptir.
0004 Diğerleri okuma iznine sahiptir.
0002 Başkalarının yazma izni vardır.
0001 Diğerleri yürütme iznine sahiptir.
4000 Dosyada etkin kullanıcı kimliğini ayarlayın.
2000 Dosyada etkin grup kimliğini ayarlayın.
1000 Dosyanın yalnızca dosya sahibi, dizin sahibi veya kök kullanıcı tarafından silinebileceğini veya yeniden adlandırılabildiğini belirtmek için ayarlayın.

Sembolik "rwx" biçimi

Sahip/kullanıcı, grup ve diğerleri için izinler , 'r' (Okuma), 'w' (Yazma) ve 'x' (Yürütme) karakterlerinin birleşimi kullanılarak belirtilir.

Biçim İzin
rwx------ Kullanıcının (dosya sahibi) okuma, yazma ve yürütme izni vardır.
r-------- Kullanıcının okuma izni var.
-w------- Kullanıcının yazma izni var.
--x------ Kullanıcının yürütme izni var.
---rwx--- Grup okuma, yazma ve yürütme iznine sahiptir.
---r----- Grubun okuma izni var.
----w---- Grubun yazma izni var.
-----x--- Grubun yürütme izni var.
------rwx Diğerleri okuma, yazma ve yürütme iznine sahiptir.
------r. Diğerleri okuma iznine sahiptir.
-------w- Başkalarının yazma izni vardır.
--------x Diğerleri yürütme iznine sahiptir.

Açıklamalar

Copy File işlemi zaman uyumsuz olarak tamamlanabilir. Kopyalama işleminin durumunu denetlemek veya iptal etmek için x-ms-copy-id yanıt üst bilgisinin döndürdüğü kopyalama kimliğini kullanabilirsiniz. Azure Dosyalar, dosyaları en iyi çaba temelinde kopyalar.

Hedef dosyanın üzerine yazılır. Kopyalama işlemi devam ederken hedef dosyayı değiştiremezsiniz.

Copy File işlemi her zaman kaynak blob veya dosyanın tamamını kopyalar. Bayt aralığının veya blok kümesinin kopyalanması desteklenmez.

Copy File işleminin kaynağı, paylaşım anlık görüntüsünde bulunan bir dosya olabilir. Copy File işleminin hedefi, paylaşım anlık görüntüsünde bulunan bir dosya olamaz.

Kopyalama işleminin kaynağı ETag değerler sağladığında, işlem devam ederken kaynakta herhangi bir değişiklik olursa başarısız olur. Kopyalama işlemi devam ederken hedef dosyayı değiştirme girişimi 409 (Çakışma) durum koduyla başarısız oluyor.

ETag işlemi başlatıldığında hedef dosyanın Copy File değeri değişir. Kopyalama işlemi sırasında sık sık değişmeye devam eder.

Özellikleri ve meta verileri kopyalama

Bir blob veya dosya kopyalandığında, aşağıdaki sistem özellikleri hedef dosyaya aynı değerlerle kopyalanır:

  • Content-Type
  • Content-Encoding
  • Content-Language
  • Content-Length
  • Cache-Control
  • Content-MD5
  • Content-Disposition

Hedef dosya her zaman kaynak blob veya dosyayla aynı boyuttadır. Hedef dosyanın Content-Length üst bilgisinin değeri, kaynak blob veya dosya için bu üst bilginin değeriyle eşleşir.

Kiralanan blobu veya dosyayı bir dosyaya kopyalama

Copy File işlemi yalnızca kaynak blobdan veya dosyadan okunur, bu nedenle kaynak nesnedeki kiralama işlemi etkilemez. Copy File işlemi başlatıldığında kaynak blobun veya dosyanın ETag değerini kaydeder. Kopyalama işlemi tamamlanmadan önce ETag değeri değişirse işlem başarısız olur. Kopyalama işlemi sırasında dosyayı kiralayarak dosyanın kaynak blobundaki değişiklikleri engelleyebilirsiniz.

Hedef dosyanın etkin bir sonsuz kirası varsa, Copy File işlemine yapılan çağrıda kira kimliğini belirtmeniz gerekir. Kopyalama işlemi beklemedeyken, hedef dosyadaki herhangi bir kiralama işlemi 409 (Çakışma) durum koduyla başarısız olur. Kaynaktan farklı bir ada sahip bir hedef dosyaya veya kaynakla aynı ada sahip bir hedef dosyaya kopyaladığınızda, kopyalama işlemi sırasında hedef dosyadaki sonsuz kiralama bu şekilde kilitlenir. İstemci henüz varolmayan bir dosyada kira kimliği belirtirse, Azure Dosyalar durum kodu 412 (Önkoşul Başarısız) döndürür.

Bekleyen kopyalama işlemiyle çalışma

Copy File işlemi dosyaları zaman uyumsuz olarak kopyalamayı tamamlayabilir. Copy File döndürdüğü durum koduna göre sonraki adımı belirlemek için aşağıdaki tabloyu kullanın:

Durum kodu Anlam
202 (Kabul Edildi), x-ms-copy-status: success Kopyalama işlemi başarıyla tamamlandı.
202 (Kabul Edildi), x-ms-copy-status: beklemede Kopyalama işlemi tamamlanmadı. Kopyalama işlemi bitene veya başarısız olana kadar Get File Properties incelemek için x-ms-copy-status kullanarak hedef blobu yoklama.
4xx, 500 veya 503 Kopyalama işlemi başarısız oldu.

bir Copy File işlemi sırasında ve sonrasında, hedef dosyanın özellikleri Copy File işleminin kopya kimliğini ve kaynak blobun veya dosyanın URL'sini içerir. İşlem tamamlandığında Azure Dosyalar hedef dosyanın özelliklerine zaman ve sonuç değerini (success, failedveya aborted) yazar. İşlemin failed bir sonucu varsa, x-ms-copy-status-description üst bilgisi bir hata ayrıntı dizesi içerir.

Bekleyen bir Copy File işleminin iki haftalık zaman aşımı vardır. İki hafta zaman aşımına uğradıktan sonra bitmeyen ve x-ms-copy-status alanı failed ve x-ms-status-description alanı 500 (OperationCancelled) olarak ayarlanmış boş bir dosya bırakan bir kopyalama girişimi. Kopyalama işlemi sırasında oluşabilecek aralıklı, önemli olmayan hatalar işlemin ilerlemesini engelleyebilir ancak başarısız olmasına neden olmaz. Bu gibi durumlarda, x-ms-copy-status-description aralıklı hataları açıklar.

Kopyalama işlemi sırasında hedef dosyayı değiştirme girişimleri 409 (Çakışma), "Devam Eden Dosyayı Kopyala" durum koduyla başarısız oluyor.

bir Abort Copy File işlemi çağırırsanız bir x-ms-copy-status:aborted üst bilgisi görürsünüz. Hedef dosyada bozulmamış meta veriler ve 0 baytlık bir dosya uzunluğu bulunur. İşlemi yeniden denemek için özgün Copy File çağrısını yineleyebilirsiniz.

Fatura

bir Copy File işleminin hedef hesabı, işlemi başlatmak için bir işlem için ücretlendirilir. Hedef hesap, kopyalama işleminin durumunu iptal etmek veya istemek için her istek için bir işlem de uygular.

Kaynak dosya veya blob başka bir hesapta olduğunda, kaynak hesap işlem maliyetlerine neden olur. Ayrıca, kaynak ve hedef hesaplar farklı bölgelerde (örneğin, ABD Kuzey ve ABD Güney) bulunuyorsa, isteği aktarmak için kullandığınız bant genişliği çıkış olarak kaynak hesaba ücretlendirilir. Aynı bölgedeki hesaplar arasında çıkış ücretsizdir.

Ayrıca bkz.