Sdílet prostřednictvím


Pojmenování a odkazování na sdílené složky, adresáře, soubory a metadata

Účet úložiště může obsahovat nula nebo více sdílených složek Azure. Sdílená složka obsahuje vlastnosti, metadata a nula nebo více souborů nebo adresářů. Adresář obsahuje vlastnosti a nula nebo více souborů nebo adresářů. Soubor je libovolná jedna entita, která se skládá z binárních dat, vlastností a metadat.

Názvy prostředků

Identifikátor URI, který odkazuje na sdílenou složku, adresář nebo soubor, musí být jedinečný. V rámci daného účtu úložiště musí mít každá sdílená složka jedinečný název. Každý soubor v dané sdílené složce nebo adresáři musí mít také jedinečný název v dané sdílené složce nebo adresáři.

Pokud se pokusíte vytvořit sdílenou složku, adresář nebo soubor s názvem, který porušuje pravidla pojmenování, požadavek selže se stavovým kódem 400 (Chybný požadavek).

Názvy sdílených složek

Pravidla pro názvy sdílených složek souborových služeb jsou více omezující než to, co je předepsané protokolem SMB pro názvy sdílených složek SMB, aby služba Blob a File mohly sdílet podobné zásady vytváření názvů pro kontejnery a sdílené složky. Omezení pojmenování sdílených složek jsou následující:

  • Název sdílené složky musí být platný název DNS.
  • Názvy sdílených složek musí začínat písmenem nebo číslicí a mohou obsahovat pouze písmena, číslice a znak spojovníku nebo minus (-).
  • Každý znak spojovníku/minus (-) musí být bezprostředně před znakem a za ním písmeno nebo číslo; po sobě jdoucí pomlčky nejsou povoleny v názvech sdílených složek.
  • Všechna písmena v názvu sdílené složky musí být malá písmena.
  • Názvy sdílených složek musí mít délku 3 až 63 znaků.

Následující tabulka porovnává omezení pojmenování pro Azure Files a Azure Blob Storage:

pojmenování a odkazování na kontejnery, objekty blob a metadata omezení názvu sdílené složky SMB
• Název kontejneru musí být platný název DNS.
• Názvy kontejnerů musí začínat písmenem nebo číslicí a mohou obsahovat pouze písmena, číslice a znak spojovníku nebo minus (-).
• Každý znak spojovníku/minus (-) musí být bezprostředně před znakem a za ním písmeno nebo číslo; po sobě jdoucí pomlčky nejsou povolené v názvech kontejnerů.
• Všechna písmena v názvu kontejneru musí být malá písmena.
• Názvy kontejnerů musí mít délku 3 až 63 znaků.
• Název sdílené složky nesmí být delší než 80 znaků.
• V názvu sdílené složky jsou neplatné následující znaky: \ / [ ] : ¦ < > + = ; , * ? "
• Řídicí znaky v rozsahu 0x00 prostřednictvím 0x1F včetně jsou v názvu sdílené složky neplatné.
• Všechny ostatní znaky Unicode jsou legální.
• Názvy se zachovají a nerozlišují malá a velká písmena.

Názvy adresářů a souborů

Azure Files vynucuje následující pravidla pojmenování pro názvy adresářů a souborů:

  • Názvy adresářů a souborů nerozlišují velká a malá písmena.
  • Názvy součástí adresáře a souborů nesmí být delší než 255 znaků.
  • Názvy adresářů nemůžou končit znakem lomítka (/). Pokud je k dispozici, automaticky se odebere.
  • Názvy souborů nesmí končit znakem lomítka (/).
  • Znaky rezervované adresy URL musí být správně uchycené.
  • Následující znaky nejsou povolené: " \ / : | < > * ?
  • Neplatné znaky cesty URL nejsou povolené. Body kódu, jako je \uE000, zatímco jsou platné v souborech souborů NTFS, nejsou platné znaky Unicode. Kromě toho některé znaky ASCII nebo Unicode, jako jsou řídicí znaky (0x000x1F), také nejsou povoleny. Pravidla, která řídí řetězce Unicode v http/1.1 naleznete v tématu RFC 2616 oddíl 2.2: Základní pravidla a RFC 3987.
  • Neplatné znaky Unicode (označované jako neplatné náhradní páry) se nepodporují.
  • Následující názvy souborů nejsou povoleny: LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, LPT9, COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9, PRN, AUX, NUL, CON, CLOCK$, tečka (.) a dva tečky (..).
  • Od verze 2021-12-02 podporují názvy adresářů a souborů znaky U+FFFE a U+FFFF prostřednictvím všech operací. Tyto znaky jsou podporovány také prostřednictvím protokolů SMB a REST. seznam adresářů a souborů a obslužných rutin seznamu operace vyžadují pro tyto znaky zvláštní zpracování, jak je uvedeno v příslušné dokumentaci.

Ve výchozím nastavení jsou u sdílených složek s povoleným protokolem SMB ignorovány nebo vynechání tečkované znaky na konci adresáře a názvů souborů v adresách URL požadavků.

  • Pokud se například vytvoří soubor s názvem file1..., tečky na konci se ignorují a vytvoří se soubor s názvem file1. Totéž platí pro adresáře v cestě. Pokud žádost o vytvoření souboru obsahuje cestu \Dir1\Dir2…\File1 pak bude soubor vytvořen v \Dir1\Dir2\File1.
  • Počínaje verzí 20222-11-02je však možné výchozí chování přepsat nastavením hlavičky x-ms-allow-trailing-dot na true v požadavku adresy URL.
  • Pokud například chcete vytvořit soubor s názvem file1... a zahrnout koncové tečky, měla by být x-ms-allow-trailing-dot zahrnuta do hlavičky požadavku a nastavena na true. Totéž platí pro vytváření názvů adresářů.
  • Pokud chcete v případě požadavku na kopírování souboru zahrnout koncové tečky do názvu zdrojového souboru, musí být hlavička x-ms-source-allow-trailing-dot nastavena na true. Další informace najdete v dostupných možnostech hlavičky jednotlivých rozhraní REST API.

Ve výchozím nastavení jsou u sdílených složek s povoleným protokolem NFS ignorovány tečky (.) na konci adresáře a názvů souborů v adresách URL požadavků.

Následující tabulka porovnává omezení pojmenování pro Azure Files a Azure Blob Storage:

pojmenování a odkazování na kontejnery, objekty blob a metadata omezení názvu protokolu SMB
• Název objektu blob musí mít alespoň jeden znak a nesmí být delší než 1 024 znaků.
• V názvech objektů blob se rozlišují malá a velká písmena.
• Znaky vyhrazené adresy URL musí být správně uchycené.
• Názvy objektů blob můžou končit oddělovačem virtuálních adresářů, například lomítkem (/).
• Neplatné znaky cesty URL nejsou povoleny: Body kódu, jako je \uE000, zatímco platné v souborech SOUBORŮ NTFS nejsou platné znaky Unicode. Některé znaky ASCII nebo Unicode, jako jsou řídicí znaky (0x00 k 0x1F), navíc nejsou povolené. Pravidla, která řídí řetězce Unicode v http/1.1 naleznete v tématu RFC 2616 oddíl 2.2: Základní pravidla a RFC 3987.
• Název cesty nesmí být delší než 32 760 znaků.
• Délka každé komponenty názvu cesty (soubor nebo adresář) nesmí být delší než 255 znaků.
• Název cesty se skládá z jedné nebo více součástí názvu cesty oddělené znakem zpětného lomítka (\).
• Název cesty zachovává velká a malá písmena bez rozlišování velkých a malých písmen (dva názvy, které se liší pouze v případě, že nejsou povoleny).
• Nelze mít cestu k adresáři, která je stejná jako cesta k souboru.
• V názvu součásti jsou neplatné následující znaky: \ / : ¦ < > * ? "
• Řídicí znaky v rozsahu 0x00 prostřednictvím 0x1F včetně jsou v názvu sdílené složky neplatné.

Názvy cest

Název cesty se skládá z jedné nebo více součástí názvu cesty (název adresáře nebo souboru) oddělených znakem lomítka (/). Všechny komponenty názvu cesty kromě komponenty názvu poslední cesty označují adresáře. Komponenta názvu poslední cesty označuje adresář nebo soubor. Platí následující pravidla pojmenování:

  • Název cesty nesmí být delší než 2 048 znaků. Jednotlivé komponenty v cestě mohou mít délku maximálně 255 znaků.
  • Název cesty se skládá z jedné nebo více součástí názvu cesty oddělené znakem lomítka (/).
  • Hloubka podadresářů v cestě nesmí překročit 250.
  • Stejný název nelze použít pro soubor a adresář, který sdílí stejný nadřazený adresář. Například soubor a adresář, které jsou všechny pojmenované data nemohou existovat ve stejné nadřazené cestě.

Názvy metadat

Metadata sdílené složky nebo prostředku souboru se ukládají jako páry název-hodnota přidružené k prostředku. Názvy metadat musí dodržovat pravidla pojmenování pro identifikátory jazyka C# .

Názvy metadat zachovávají velikost písmen, u kterých byly vytvořeny, ale při nastavení nebo čtení nerozlišují malá a velká písmena. Pokud se pro prostředek odešle dvě nebo více hlaviček metadat se stejným názvem, vrátí služba Azure File stavový kód 400 (Chybný požadavek).

Syntaxe identifikátoru URI prostředku

Každý prostředek má odpovídající základní identifikátor URI, který odkazuje na samotný prostředek. Základní identifikátor URI pro účet úložiště obsahuje pouze název účtu:

https://myaccount.file.core.windows.net

Základní identifikátor URI pro sdílenou složku obsahuje název účtu a název sdílené složky:

https://myaccount.file.core.windows.net/myshare

Pro adresář obsahuje základní identifikátor URI název účtu, název sdílené složky a cestu k adresáři:

https://myaccount.file.core.windows.net/myshare/myparentdir/mydir

Základní identifikátor URI souboru obsahuje název účtu, název sdílené složky a cestu k souboru:

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  

Viz také