La mia unità flash USB SanDisk mostra che 43 GB vengono utilizzati quando ho appena copiato una cartella da 10 GB dopo la formattazione [duplicato]


17

Di recente ho acquistato un'unità flash USB SanDisk da 128 GB.

E dopo aver formattato l'unità flash USB in formato exFAT, ho copiato una cartella la cui capacità è di circa 10 GB. Ci sono molti file di piccole dimensioni, quindi ci è voluto del tempo.

Tuttavia, quando vedo in Esplora risorse dopo aver copiato la cartella, si dice che sono occupati circa 43 GB di spazio di archiviazione e ora solo 70 GB di spazio di archiviazione sono gratuiti.

Cosa sta succedendo e come dovrei affrontarlo? La mia unità flash USB è fisicamente rotta?

È ancora strano perché quando ho copiato un singolo file con una capacità di 7 GB, ha mostrato la capacità rimanente correttamente a circa 110 GB disponibili.


7
Se fai clic con il pulsante destro del mouse su un piccolo file e vai alle proprietà, cosa viene visualizzato per "dimensione" e "dimensione su disco"
Scott Chamberlain,


20
Hai detto a 10GB filenel titolo ma in realtà copiato a 10GB folder of small files. Sono completamente diversi . Se la dimensione del cluster è 4KB e i file sono in media 1 KB, ovviamente saranno necessari 40 GB su disco. Per impostazione predefinita, la dimensione di allocazione di exFAT è molto più elevata rispetto ad altri file system
phuclv,

Perchè lo hai fatto? Devi usare la chiavetta USB con qualcosa di diverso da laptop, desktop e hardware simile? AFAIK solo alcune autoradio e simili non supportano NTFS o un'alternativa simile ...
Bakuriu,

Non credo che le cartelle abbiano una "capacità" (un po 'massima che possono contenere) si aspettano forse un numero di file. Cosa intendi?
jpmc26,

Risposte:


57

Hai già risposto alla tua domanda: ci sono molti file di piccole dimensioni

Ogni file su un volume exFAT richiede almeno un blocco. Quindi un file di un singolo byte di dimensioni richiede almeno 4K - un'amplificazione di dimensioni di 1: 4096. Stai vedendo un'amplificazione delle dimensioni di 4.3, che è molto plausibile con molti file di piccole dimensioni.

È possibile verificare questa ipotesi comprimendo i file con WinRAR e le impostazioni di compressione zero, quindi copiare questo file sulla chiavetta USB.


14
Significa esattamente cosa significa. Lo spazio su disco viene allocato con incrementi di 4kb, ca. Un file di un byte occupa 4kb di spazio su disco. Un file a due byte occupa lo stesso 4kb di spazio su disco. Idem per 3 byte e fino a 4096 byte. Un file di 4097 byte occupa 8192 byte di spazio su disco e così via (questo ignora il sovraccarico della creazione di voci di directory). La dimensione media dei tuoi file sembra essere di circa 1kb, quindi finisci per consumare quattro volte più della somma totale dei tuoi dati. Tutti i filesystem funzionano in questo modo, FAT o NTFS, differendo solo per dimensioni blk, ma occasionalmente sono possibili alcune ottimizzazioni.
Sam Varshavchik,

7
NTFS è sostanzialmente più efficiente di qualsiasi versione di FAT nella gestione di molti file di piccole dimensioni. Se hai intenzione di utilizzare questa unità USB solo con computer di dimensioni standard che eseguono Windows, formattarla come NTFS è una cosa perfettamente ragionevole da fare. Se hai pianificato di collegarlo a una fotocamera, d'altra parte, o un prodotto Apple, non sarebbero in grado di leggerlo.
zwol,

3
È possibile che exFAT sia stato formattato gratuitamente con una dimensione del blocco molto più grande di 4k? Ciò potrebbe essere risolto riformattando come exFAT con opzioni sane, senza perdita di compatibilità.
R ..

3
@zwol I prodotti Apple possono leggere unità NTFS. Non sono in grado di scrivergli di default
awksp

4
MSDN afferma che la dimensione del cluster predefinita per una partizione exFAT con 128 GB è 128 kB. Ciò si comporterà molto male con file di piccole dimensioni. Lo zipping è il tuo amico qui.
Peter - Ripristina Monica il

14

Durante la formattazione come exFAT, hai quasi sicuramente scelto un'unità di allocazione di grandi dimensioni (dimensione del blocco) come 128k o 512k. Riformattare con le unità di allocazione 4k standard e il problema dovrebbe scomparire.



2
Sì, questo è un grosso problema. Riformatta con 4k.
R ..

1
Per me, la dimensione di allocazione predefinita era 512 KB.
Felix Lee,

@FelixLee significa che anche un file da 1 byte richiederà 512 KB.
Captain Man,

1
@GalacticCowboy: al momento potrebbe non essere un requisito, ma sono solo buone pratiche generali. Può diventare particolarmente un problema in caso di necessità di accedere ai file da un sistema diverso o se c'è corruzione sull'unità e OP sta cercando di recuperare quanti più dati possibili (buona fortuna se è nidificato in un file di archivio, in particolare un compresso uno).
R ..

7

Perché sta succedendo?

Perché stai memorizzando molti piccoli file.

I filesystem hanno una dimensione minima che possono essere archiviati. Per i filesystem NTFS, di solito è 4KB. Per exFAT, può essere molto più grande. Si chiama blocco o dimensione del cluster. I file più piccoli di questa dimensione continueranno a utilizzare la dimensione minima, quindi un file da 1 KB potrebbe utilizzare 4KB di spazio su disco. Un file da 3 KB userebbe anche 4KB di spazio su disco. Se hai un file da 5 KB, utilizzerà 8 KB di spazio su disco.

Puoi immaginarlo come una griglia di buchi. Ogni buca può contenere una certa quantità di dati. I file sono distribuiti su tutti i fori necessari per contenere tutti i dati del file, ma i fori non possono avere dati da più di un file. Quindi, se i dati di un file non riempiono completamente un buco, parte di quello spazio viene sprecato. Nessun altro file può usarlo in quel buco quindi lo spazio inutilizzato non è disponibile.

Cosa puoi fare al riguardo?

Nel tuo caso, hai molti file che non riempiono i buchi, quindi c'è molto spazio sprecato. Se dovessi mettere tutti i file in un file ZIP, tutti i dati sarebbero contenuti in un singolo file e utilizzerebbero molto meno spazio sull'unità.

Alcune unità USB sono formattate come exFAT per impostazione predefinita, quindi in alternativa, se stai solo utilizzando questa unità per copiare file tra computer Windows (o solo per l'archiviazione), potresti provare a riformattare l'unità come NTFS (ma prima copia tutti i file , ovviamente!) per cercare di ottenere una dimensione del cluster più piccola.


2

Come suggerito dall'altra risposta, usa un archiviatore, ma ti consiglio di usare 7z invece di WinRAR perché è gratuito e puoi anche evitare di installare archivi di terze parti se usi "Invia a> Compresso (compresso) di Windows ) cartella "quando si fa clic con il pulsante destro del mouse su file e cartelle. È più veloce di 7z ma archivia leggermente più lentamente.

Nel caso in cui sia necessario archiviare principalmente immagini JPEG o qualcos'altro che non comprime affatto, si dovrebbe beneficiare dell'uso di 7z e della scelta esplicita dell'opzione "nessuna compressione".

L'uso del formato di archivio .zip su .rar o .7z è importante perché Windows supporta la navigazione come se fosse qualsiasi altra cartella (anche se con alcune limitazioni).

Se stai bene non essere in grado di sfogliare file come quelli sull'unità flash, puoi usare un altro formato, ma la parte importante dei file che non occupa così tanto spazio è avere un singolo file di archivio invece di tutti i file originali separatamente.


3
Se la dimensione è cresciuta di 4x rispetto alla dimensione nominale, la stragrande maggioranza dei file è 1k o inferiore. Questi quasi sicuramente non sono file jpeg.
R ..

L'altra cosa è, perché mai dovresti selezionare "nessuna compressione"? Sarà comunque leggermente più piccolo, anche se i file non sono eccessivamente comprimibili.
Clonkex,

1
@clonkex perché la velocità e la latenza sono una cosa
PlasmaHH,

2
@Clonkex Poiché gli algoritmi di compressione sono relativamente lenti e dispendiosi in termini di risorse per loro stessa natura, se sai che non otterrà un vantaggio significativo dalla compressione con il tempo extra per comprimere / decomprimere i file, perché non dire alla cerniera di saltare quel passaggio ?
Trotski94,

1
@JamesTrotter per algoritmi di compressione ordinari (non LZMA), su macchine ordinarie, il codice di compressione viene eseguito più velocemente di quanto il disco possa scrivere, quindi non ci sono "tempi supplementari": la scrittura dell'archivio compresso è più veloce perché scrive meno byte e il disco è il collo di bottiglia.
Hobbs,
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.