Esiste un limite al numero di file che posso inserire in una determinata cartella?


19

Quanti file può contenere una cartella? Ho 30k cartelle all'interno di 1 cartella. Ciascuna delle cartelle ha 1 file di immagine. Esiste un limite al numero di file che una cartella può memorizzare?

Sto usando Windows Server 2003, IIS6.

Risposte:


22

Nota: supponendo che NTFS, poiché nessuno nella propria mente corretta userebbe FAT per nient'altro che chiavette USB o schede di memoria, figuriamoci su un server (ok, quel pensiero fa paura).

Sì, c'è un limite. Memorizzare più file che particelle nell'universo può rivelarsi poco pratico. Tuttavia, il limite effettivo è molto più basso.

NTFS ha un massimo di 4.294.967.295 (2 32 - 1) file per volume . Alcuni di questi sono già utilizzati dal file system stesso e anche la cartella deve essere considerata come file.

30.000 non sono così tanti file, in realtà. Ma Microsoft consiglia di disattivare la generazione automatica di nomi brevi compatibili con DOS se passi oltre 300.000 poiché trovare un nome breve univoco diventa difficile.


Hmm la raccomandazione si applica a NT 3.5. Non menziona alcun nuovo sistema operativo.
Ganesh R.

2
Questo fatto non è cambiato da allora. La generazione di nomi brevi è ancora lì e il problema alla base della ricerca di un nome corto rimane ancora una volta che ce ne sono troppi, semplicemente perché sono ... beh ... brevi :-)
Joey

Stavo cercando queste informazioni. Ho dovuto semplicemente abbandonare i nomi brevi di DOS 8.3 per un programma con cui sto lavorando in cui ho superato un limite di caratteri per il percorso del file. Ho iniziato a pensare che potrebbero esserci dei limiti. Poi ho capito che dopo alcuni file simili hanno iniziato a usare hash di 4 caratteri. Ci sono (26 + 10) ^ 4 = 1679616 nomi possibili allora. Ho provato a bloccarlo rinominando un file con il nome breve di un altro file, ma lo ha convertito dietro le quinte e sostanzialmente ha detto "File esiste. LooooongName (2) invece?". Dal momento che non ho intenzione di arrivare vicino a 300000, starò bene! Roba interessante!
flutefreak7,

16

Non esiste un limite pratico per le dimensioni combinate di tutti i file in una cartella, anche se potrebbero esserci limiti al numero di file in una cartella. Ancora più importante, ci sono limiti alle dimensioni dei singoli file che dipendono dal filesystem che stai usando sul tuo disco rigido. (Il "filesystem" non è altro che la specifica di come i file vengono archiviati sul disco.)

Analizziamo questo per file system:

• FAT aka FAT16

FAT, per la tabella di allocazione dei file, è il successore del file system FAT12 originale fornito con MS-DOS molti, molti anni fa.

◦ Dimensione massima del disco: 4 gigabyte

◦ Dimensione massima del file: 4 gigabyte

◦ Numero massimo di file sul disco: 65.517

◦ Numero massimo di file in una singola cartella: 512 (se ricordo bene, la cartella principale "/" aveva un limite inferiore di 128).

• FAT32

"Non esiste un limite pratico per le dimensioni combinate di tutti i file in una cartella, sebbene possano esserci limiti al numero di file in una cartella." FAT32 è stato introdotto per superare alcune delle limitazioni di FAT16.

◦ Dimensione massima del disco: 2 terabyte

◦ Dimensione massima del file: 4 gigabyte

◦ Numero massimo di file sul disco: 268.435.437

◦ Numero massimo di file in una singola cartella: 65.534

• NTFS

NTFS, o "New Technology File System" introdotto con Windows NT, è un file system completamente ridisegnato.

◦ Dimensione massima del disco: 256 terabyte

◦ Dimensione massima del file: 256 terabyte

◦ Numero massimo di file sul disco: 4.294.967.295

◦ Numero massimo di file in una singola cartella: 4.294.967.295

Nota che quando dico "disco" sopra, sto davvero parlando di dischi "logici", non necessariamente fisici. Nessuno crea un'unità disco da 256 terabyte, ma utilizzando NTFS è possibile trattare un array di unità disco come un singolo disco logico. Presumibilmente se ne hai abbastanza, puoi costruire un enorme disco logico.

Si noti inoltre che la limitazione di 256 terabyte di NTFS potrebbe essere semplicemente una limitazione dell'implementazione: ho letto che il formato NTFS può supportare dischi fino a 16 exabyte (16 volte 1.152.921.504.606.846.976 byte).

fonte


1
Potresti voler sito la tua fonte.
John T,

Se la dimensione massima del disco per FAT32 è 256 terabyte, perché il limite di 32 GB per creare una partizione?
Ganesh R.

@GaneshR. è solo il limite artificiale del programma di formattazione in Windows XP e versioni successive. Tutti gli altri formattatori non hanno problemi a creare una grande partizione FAT32. Probabilmente perché vogliono che le persone cambino in NTFS. Questa è una cosa spericolata, perché NTFS è molto meglio di FAT32 nella gestione dei file: unità più grandi, dimensioni di file più grandi, migliore tolleranza agli errori (a causa del journal), dimensione del cluster più piccola per unità di grandi dimensioni, ricerca / apertura dei file più veloce (grazie alla B- struttura ad albero), prestazioni migliori per file molto grandi e file molto piccoli ... Non c'è quasi motivo di usare una grande partizione FAT32 al giorno d'oggi
phuclv

2

È possibile avere solo un massimo di 65535 file nella directory temp di Windows, altrimenti il ​​metodo .Net Framework Path.GetTempFileName smetterà di funzionare. L'eliminazione di file temporanei precedenti gli consentirà di funzionare nuovamente fino a quando non verrà raggiunto nuovamente il limite

Vedi: Path.GetTempFileName


0

Se stai usando NTFS, allora no, non ci sono limiti reali.

Le prestazioni ne risentiranno in altri modi: tentare di aprire una cartella con 30k sottocartelle richiederà molto tempo.

FATXX ha dei limiti.

Altri file system moderni, nessun limite reale.


1
Da dove viene l'idea che le sottocartelle 30k "succhiano enormi quantità di tempo"? L'apertura di una tale cartella (con 50k sottocartelle) richiede un secondo in Esplora risorse, un altro secondo per essere ordinato correttamente. In FAR Manager ci vuole circa 1 secondo per aprire quella cartella.
Joey,

2
Vedo perché lo direbbe. Se si utilizza la visualizzazione delle anteprime, Windows tenterà di visualizzare un'anteprima del contenuto di ciascuna cartella. Anche se nella visualizzazione delle anteprime è improbabile che sullo schermo vengano visualizzate più di una dozzina di cartelle alla volta.
Kenneth Cochran,

Sì, ci ho pensato dopo aver scritto questo. Una vista delle cartelle non richiederà molto tempo. Visualizzazione miniature ...
SuperMagic

le anteprime dovrebbero essere disabilitate su grandi cartelle
phuclv
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.