mainSlogopaceclick Blog  · informatica · elettronica · astronomia..

Creare sparse files, con lunghezza a piacere in Windows e Linux

Un file sparso (dall'inglese sparse file), è un tipo di file per cui si cerca di occupare in maniera più efficiente lo spazio del file system nei casi in cui il file sia prevalentemente vuoto.

Il vantaggio dei file sparsi consiste nel fatto che lo spazio fisico nel file system viene allocato solo quando è effettivamente necessario: si risparmia spazio e si possono creare file di grandi dimensioni anche se lo spazio libero nel file system è insufficiente.

undefined

Tra gli svantaggi dell'uso di file sparsi:

Essi possono diventare frammentati, in quanto lo spazio nel file system viene allocato a mano a mano che le aree vuote sono riempite, e quindi non è necessariamente contiguo. Le informazioni sullo spazio libero nel file system possono essere fuorvianti se si considera la dimensione apparente dei file sparsi.

Uso

Un uso tipico dei file sparsi è per il testing delle connessioni di rete o per i benchmark degli hard disk: si creano file di grandi dimensioni con un semplice comando, che poi saranno utilizzati per capire la velocità di copia/trasferimento dei vari dispositivi.

Creazione su Windows

Da prompt dei comandi, dirigersi in una cartella

cd C:

eseguire il comando

fsutil file createnew <filename> <length>

la lunghezza deve essere inserita in Byte, esempio

fsutil file createnew myfile.txt 1000000000
(=1GB)

fsutil file createnew myfile.txt 2500000000
(=2.5 GB)

undefined

Creazione su Linux

dd if=$INPUT-FILE of=$OUTPUT-FILE bs=$BLOCK-SIZE count=$NUM-BLOCKS

Dove:

  $INPUT-FILE deve sempre essere /dev/zero per file di grandi dimensioni (vuoti).
  La dimensione totale del file sparso sarà $BLOCK-SIZE * $NUM-BLOCKS.
  Il nuovo file sarà chiamato come $OUTPUT-FILE.

Esempio:

dd if=/dev/zero of=file_sparso bs=1024 count=1

bs è la dimensione di uscita in Byte.

Allineamento delle partizioni da HDD verso SSD, come si verifica

Quando compriamo un nuovo SSD per installare da zero un sistema operativo, non ci sono problemi. 
Windows provvederà ad effettuare da subito il corretto allineamento.

undefined

Tuttavia se si esegue una migrazione di dati da un HDD verso un SSD, può capitare (anzi capita spesso) che la partizione non venga allineata come dovrebbe.

Questo perché negli HDD vengono lasciati liberi i primi 63 blocchi, negli SSD invece i primi 64 (prima dell'inizio della 1° partizione).

 

undefined

Gli SSD sono composti da 'pagine' e i dati vengono scritti in 'blocchi'; questi ultimi vengono suddivisi in settori, e dovrebbero essere scritti a partire dall'inizio di una pagina fisica.
Come analogia, sarebbe come iniziare ad incidere sul lato A di un nastro non all'inizio, così da dover finire gli ultimi minuti sul lato B: c'è uno spreco di spazio, ed una significativa perdita di prestazioni.
Il controller ogni volta deve leggere da 2 pagine differenti, anzichè da 1 (nell'esempio del nastro, la perdita di tempo sarebbe il 'girarlo').

Allineare l'SSD quindi porta ad un incremento notevole delle prestazioni R/W.

NOTA: l'allineamento deve essere fatto una sola volta, quando si passa da un HDD a un SSD tramite l'uso di programmi di clonazione.

1. Verificare se c'è bisogno di allineamento

Andiamo su un prompt dei comandi (click destro sul logo di windows del menu start), e digitiamo:

C:\Windows\System32> msinfo32
[premere invio]

Andiamo nella sezione

 Componenti > Archiviazione > Dischi

nella sezione di destra apparirà una lista di dati per ciascuna partizione,
a questo punto per la prima partizione (Disco #0, Partizione #0), leggete il valore in Byte chiamato

'Offset avvio partizione'

undefined

A questo punto aprite la calcolatrice di Windows e provate a dividere quel valore per 4096.

  • Se il numero è divisibile (il risultato è un numero intero qualsiasi, esempio 512), il disco è allineato.
  • Se il numero non è divisibile (il risultato è un decimale, esempio 284.65), il disco è da allineare.

2. Allineare l'SSD 

Non è necessario reinstallare tutto, si può optare per dei tool di partizionamento gratuiti come MiniTool Partition Wizard 

Nel tab di sinistra troverete il pulsante 'Align all partitions', in quello di destra selezionate il disco da allineare (il vostro SSD con il SO), e confermate con Apply in alto.

undefined

Il tool vi indicherà di riavviare poiché il disco è in uso e che eseguirà l'allineamento al riavvio.

Consigliamo come sempre di eseguire un backup dei vostri dati PRIMA di eseguire un'operazione come questa.

Come forzare uno Scan Disk approfondito su Windows 8 e 10

Se provate ad eseguire un controllo del disco su Windows 8 o Windows 10, noterete che il sistema provvede prima ad effettuare una analisi.

Solo se vengono rilevati problemi si procede al controllo approfondito.

Se tuttavia volessimo forzare la pianificazione del controllo del disco 'all'avvio' (ovvero con correzione e ripristino dei settori dell'hdd danneggiati), dobbiamo aprire un prompt dei comandi come amministratore (che troviamo facendo click destro sul logo di windows del menu start) ed eseguire il comando:

chkdsk C: /f /x /r

Inserire S (o Y se il PC è in inglese) e premere invio per confermare.

In questo modo il PC, al riavvio successivo, effettuerà lo scan-disk approfondito che volevamo.

Come verificare la salute del disco con un controllo SMART (HDD & SSD)

Esistono molti tool per verificare la salute degli hard disk, che rilevano i dati di diagnostica S.M.A.R.T. e segnalano se ci sono dei deterioramenti o altri problemi.

SMART sta per "Self Monitoring Analysis and Reporting Technology" e funziona solo se supportata/abilitata da BIOS/UEFI.

Sappiamo che molte volte questi dati sono da prendere 'con le molle', visto che un test 'passato' non vuol dire che il nostro hard disk stia effettivamente bene. Anzi è capitato in diverse occasioni che un disco 'in rottura' abbia dato comunque risultati SMART buoni.

In ogni caso, se vedremmo in questo test qualcosa di anomalo, non dovremmo pensarci su due volte e cambiare subito il disco.

Esistono delle differenze tra HDD (meccanici) e SSD (solidi), i parametri SMART danno risultati diversi, come riferimento per analisi dettagliate vedere questa lista.

Il tool (HDD & SSD)

Uno dei tool consigliati è il CrystalDiskInfo, scaricabile dal sito ufficiale gratuitamente.

Una volta installato, avremo di fronte la panoramica della diagnostica eseguita, e potremmo essere di fronte a vari scenari.

Di solito apparirà la scritta GOOD, con tutti i pallini celesti accanto ai vari test: in questo caso la salute del nostro hdd potrà essere giudicata buona (notare che comunque non garantisce la presenza di futuri guasti).

undefined

Nel caso dovessero apparire pallini gialli o rossi, con la scritta CAUTION: consigliamo di sostituire al più presto l'hdd.

undefined

Questo tool integra anche altre funzioni (come ad esempio il grafico dell'alimentazione e della temperatura), potrete trovarli nella scheda 'Disk' o in 'Function'.

Il tool (specifico SSD)

Nel caso volessimo monitorare la salute di un disco SSD, esiste un programma apposito.
Si chiama SSDLife (a pagamento, ma prelevabile in versione Trial dal loro sito).

Anche questo programma esegue un controllo SMART, tuttavia oltre ai semplici dati, fornisce anche una visuale di riepilogo molto semplice da leggere: mostra infatti una barra della attuale 'salute' del disco.

undefined

Alternativa

Windows integra anche nativamente un tool SMART basilare: WMIC.
E' possibile eseguire un test dell'hdd senza installare alcun tool e ricevere un OK o un CAUTION.

 1. Aprire un prompt dei comandi come amministratore.

     Su Windows 7 digitare 'cmd' nel menu start,
     cliccare con il destro su cmd.exe e selezionare 'esegui come amministratore'.

 2. Inserire il comando

wmic

     e premere Invio, si avvierà il tool a riga di comando, apparirà:

wmic:root\cli>

 3. Inserire ed eseguire

diskdrive get status

 In questo modo verrà mostrato lo status rilevato dell'hard disk (di solito un OK).

Home