Paylaşımları, dizinleri, dosyaları ve meta verileri adlandırma ve buna başvurma
Depolama hesabı sıfır veya daha fazla Azure dosya paylaşımı içerebilir. Paylaşım özellikler, meta veriler ve sıfır veya daha fazla dosya veya dizin içerir. Dizin özellikleri ve sıfır veya daha fazla dosya veya dizin içerir. Dosya, ikili verilerden, özelliklerden ve meta verilerden oluşan herhangi bir tek varlıktır.
Kaynak adları
Bir paylaşıma, dizine veya dosyaya başvurmak için URI benzersiz olmalıdır. Belirli bir depolama hesabı içinde her paylaşımın benzersiz bir adı olmalıdır. Belirli bir paylaşım veya dizin içindeki her dosyanın da bu paylaşım veya dizin içinde benzersiz bir adı olmalıdır.
Adlandırma kurallarını ihlal eden bir ada sahip bir paylaşım, dizin veya dosya oluşturmaya çalışırsanız, istek durum kodu 400 (Hatalı İstek) ile başarısız olur.
Adları paylaşma
Dosya hizmeti paylaşım adları kuralları, SMB paylaşım adları için SMB protokolü tarafından belirtilenden daha kısıtlayıcıdır, böylece Blob ve Dosya hizmetleri kapsayıcılar ve paylaşımlar için benzer adlandırma kurallarını paylaşabilir. Paylaşımlar için adlandırma kısıtlamaları aşağıdaki gibidir:
- Paylaşım adı geçerli bir DNS adı olmalıdır.
- Paylaşım adları bir harf veya sayı ile başlamalıdır ve yalnızca harf, sayı ve kısa çizgi/eksi (-) karakterini içerebilir.
- Her kısa çizgi/eksi (-) karakterinin hemen önüne ve arkasına bir harf veya sayı eklenmelidir; paylaşım adlarında ardışık kısa çizgilere izin verilmez.
- Paylaşım adındaki tüm harfler küçük harf olmalıdır.
- Paylaşım adları 3 ila 63 karakter uzunluğunda olmalıdır.
Aşağıdaki tabloda, Azure Dosyalar ve Azure Blob depolama için adlandırma kısıtlamaları karşılaştırlanmaktadır:
Kapsayıcıları, Blobları ve Meta Verileri Adlandırma ve Buna Başvurma | SMB Paylaşım Adı Kısıtlamaları |
---|---|
• Kapsayıcı adı geçerli bir DNS adı olmalıdır. • Kapsayıcı adları bir harf veya sayı ile başlamalıdır ve yalnızca harf, sayı ve kısa çizgi/eksi (-) karakterini içerebilir. • Her kısa çizgi/eksi (-) karakterinin hemen önüne ve arkasına bir harf veya sayı eklenmelidir; kapsayıcı adlarında ardışık kısa çizgilere izin verilmez. • Kapsayıcı adındaki tüm harfler küçük harf olmalıdır. • Kapsayıcı adları 3 ile 63 karakter uzunluğunda olmalıdır. |
• Paylaşım adı en fazla 80 karakter uzunluğunda olmalıdır. • Paylaşım adında aşağıdaki karakterler geçersizdir: \ / [ ] : ¦ < > + = ; , * ? " • 0x1F(dahil) aracılığıyla 0x00 aralıktaki denetim karakterleri paylaşım adında geçersizdir. • Diğer tüm Unicode karakterler yasaldır. • Adlar büyük/küçük harf koruyucu ve büyük/küçük harfe duyarlı değildir. |
Dizin ve dosya adları
Azure Dosyalar, dizin ve dosya adları için aşağıdaki adlandırma kurallarını zorunlu kılar:
- Dizin ve dosya adları büyük/küçük harf koruyucu ve büyük/küçük harfe duyarlı değildir.
- Dizin ve dosya bileşeni adları en fazla 255 karakter uzunluğunda olmalıdır.
- Dizin adları eğik çizgi karakteriyle (/) bitemez. Sağlanırsa, otomatik olarak kaldırılır.
- Dosya adları eğik çizgi karakteriyle (/) bitmemelidir.
- Ayrılmış URL karakterleri doğru şekilde atlanmalıdır.
- Aşağıdaki karakterlere izin verilmez:
" \ / : | < > * ?
- Geçersiz URL yolu karakterlerine izin verilmez. NTFS dosya adlarında geçerliyken gibi
\uE000
kod noktaları geçerli Unicode karakterleri değildir. Ayrıca, denetim karakterleri (0x00
- ) gibi bazı ASCII veya Unicode karakterlere0x1F
de izin verilmez. HTTP/1.1'de Unicode dizelerini yöneten kurallar için bkz . RFC 2616, Bölüm 2.2: Temel Kurallar ve RFC 3987. - Geçersiz Unicode karakterleri (geçersiz vekil çiftler olarak adlandırılır) desteklenmez.
- Şu dosya adlarına izin verilmez: LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, LPT9, COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9, PRN, AUX, NUL, CON, CLOCK$, nokta karakteri (.) ve iki nokta karakteri (..).
- Sürüm 2021-12-02'den başlayarak, dizin ve dosya adları tüm işlemler boyunca U+FFFE ve U+FFFF karakterlerini destekler. Bu karakterler SMB ve REST protokolleri aracılığıyla da desteklenir. Liste Dizini ve Dosyalar ve Liste Tanıtıcıları işlemleri, ilgili belgelerinde belirtildiği gibi bu karakterler için özel işlemeye ihtiyaç duyar.
Varsayılan olarak, dizinin sonundaki nokta (.) karakterler ve istek URL'lerindeki dosya adları yoksayılır veya dışarıda bırakılır.
- Örneğin, adlı
file1...
bir dosya oluşturuluyorsa, sonundaki noktalar yoksayılır ve adlıfile1
bir dosya oluşturulur. Aynı durum yoldaki dizinler için de geçerlidir. Dosya oluşturma isteği yolunu\Dir1\Dir2…\File1
içeriyorsa, dosya konumunda\Dir1\Dir2\File1
oluşturulur. - Ancak, 2022-11-02 sürümünden başlayarak, URL isteğinde üst bilgi
x-ms-allow-trailing-dot
true
olarak ayarlanarak varsayılan davranış geçersiz kılınabilir. - Örneğin, adlı
file1...
bir dosya oluşturmak ve sondaki noktaları eklemek istiyorsanız,x-ms-allow-trailing-dot
istek üst bilgisine eklenip olarak ayarlanmalıdırtrue
. Aynı durum dizin adları oluşturmak için de geçerlidir. - Dosya kopyalama isteği söz konusu olduğunda, kaynak dosya adına sondaki noktaları eklemek istiyorsanız üst
x-ms-source-allow-trailing-dot
bilgi olaraktrue
ayarlanmalıdır. Daha fazla bilgi için her rest API için kullanılabilir üst bilgi seçeneklerine göz atın.
Aşağıdaki tabloda, Azure Dosyalar ve Azure Blob depolama için adlandırma kısıtlamaları karşılaştırlanmaktadır:
Kapsayıcıları, Blobları ve Meta Verileri Adlandırma ve Buna Başvurma | SMB Protokolü Adı Kısıtlamaları |
---|---|
• Blob adı en az bir karakter uzunluğunda olmalı ve 1.024 karakterden uzun olamaz. • Blob adları büyük/küçük harfe duyarlıdır. • Ayrılmış URL karakterlerinin doğru şekilde kaçış karakteri olması gerekir. • Blob adları eğik çizgi (/) gibi bir sanal dizin sınırlayıcısı ile bitebilir • Geçersiz URL yol karakterlerine izin verilmiyor: NTFS dosya adlarında geçerliyken \uE000 gibi kod noktaları geçerli Unicode karakterleri değildir. Ayrıca, denetim karakterleri (0x1F 0x00) gibi bazı ASCII veya Unicode karakterlere de izin verilmez. HTTP/1.1'de Unicode dizelerini yöneten kurallar için bkz . RFC 2616, Bölüm 2.2: Temel Kurallar ve RFC 3987. |
• Yol adı en fazla 32.760 karakter uzunluğunda olabilir. • Her yol adı bileşeni (dosya/dizin) en fazla 255 karakter uzunluğunda olabilir. • Yol adı, (\) ters eğik çizgi karakteriyle ayrılmış bir veya daha fazla yol adı bileşeninden oluşur. • Yol adı büyük/küçük harf koruyucu ve büyük/küçük harfe duyarlı değildir (yalnızca büyük/küçük harfe izin verilmemesi durumunda farklı olan iki ad). • Dosya yolu ile aynı dizin yolu olamaz. • Aşağıdaki karakterler bir bileşen adında geçersizdir: \ / : ¦ < > * ? " • 0x1F(dahil) aracılığıyla 0x00 aralıktaki denetim karakterleri paylaşım adında geçersizdir. |
Yol adları
Yol adı, eğik çizgi (/) karakteriyle ayrılmış bir veya daha fazla yol adı bileşeninden (dizin veya dosya adı) oluşur. Son yol adı bileşeni dışındaki tüm yol adı bileşenleri dizinleri belirtir. Son yol adı bileşeni bir dizini veya dosyayı belirtir. Aşağıdaki adlandırma kuralları geçerlidir:
- Yol adı en fazla 2.048 karakter uzunluğunda olabilir. Yoldaki tek tek bileşenler en fazla 255 karakter uzunluğunda olabilir.
- Yol adı, eğik çizgi (/) karakteriyle ayrılmış bir veya daha fazla yol adı bileşeninden oluşur.
- Yoldaki alt dizinlerin derinliği 250'yi aşamaz.
- Aynı üst dizini paylaşan bir dosya ve dizin için aynı ad kullanılamaz. Örneğin, her biri adlandırılmış
data
bir dosya ve dizin aynı üst yol altında bulunamaz.
Meta veri adları
Bir paylaşım veya dosya kaynağının meta verileri, kaynakla ilişkilendirilmiş ad-değer çiftleri olarak depolanır. Meta veri adları , C# tanımlayıcıları için adlandırma kurallarına uymalıdır.
Meta veri adlarının oluşturuldukları büyük/küçük harf durumunu koruduğunu, ancak ayarlandığında veya okunduğunda büyük/küçük harfe duyarsız olduğunu unutmayın. Bir kaynak için aynı ada sahip iki veya daha fazla meta veri üst bilgisi gönderilirse, Azure Dosya hizmeti 400 (Hatalı İstek) durum kodunu döndürür.
Kaynak URI söz dizimi
Her kaynağın kendisine karşılık gelen temel URI'leri vardır. Depolama hesabı için temel URI yalnızca hesabın adını içerir:
https://myaccount.file.core.windows.net
Bir paylaşım için temel URI hesabın adını ve paylaşımın adını içerir:
https://myaccount.file.core.windows.net/myshare
Bir dizin için temel URI hesabın adını, paylaşımın adını ve dizinin yolunu içerir:
https://myaccount.file.core.windows.net/myshare/myparentdir/mydir
Bir dosya için temel URI hesabın adını, paylaşımın adını ve dosyanın yolunu içerir:
https://myaccount.file.core.windows.net/myshare/myfile
https://myaccount.file.core.windows.net/myshare/mydir/myfile
https://myaccount.file.core.windows.net/myshare/myparentdir/mydir/myfile