Newsgroup: it.comp.os.linux.software
Titolo: deframmentare fat32 sotto linux

Dato che non installerò Windows solo per questa esigenza, c'è qualcosa
che mi faccia un buon defrag di un disco in fat32 che uso per scambio dati?

 ... un buon defrag di un disco in fat32...
tar -c ...  && mkdosfs && tar -x ...    
Poscritto: i deframmentatori danneggiano 
le penne USB, lo sai vero?

 le penne USB, lo sai vero?
Sì grazie, si tratta di un normale disco rigido in uno scatolotto usb.
Mkdosfs non serve a creare il volume fat? Io ho già il disco formattato
in fat con i dati dentro, e lo uso da diverso tempo, volevo solo
deframmentarlo.

 deframmentarlo.
penso t'abbia detto qualcosa come "salva i dati, formatta e ripristina"
-- 
Under construction


la situazione di base:
i dati sono sparpagliati sull'hd,
c'è un indice (fat: file allocation table) che qundo accedi ai dati ti dice
in quali settori del disco si trovano.
la procedura che ti hanno consigliato:
copi i dati da qualche parte (diversa dall'hd da deframmentare),
cancelli il vecchio indice creandone uno nuovo/vuoto(mkdosfs -F 32 etc),
riscrivi i dati sull'hd: i dati vengono scritti uno dopo l'altro e
non frammentati.

 Poscritto: i deframmentatori danneggiano le penne USB, lo sai vero?
Come mai?
Ciao,
  Void


Le penne USB utilizzano come supporto delle celle di memoria FlashNAND.
Queste celle di memoria sono non volatili (non hanno bisogno di energia per 
mantenere lo stato), possono essere scritte (azzeramento dei bit) senza problemi 
quante volte si vuole, ma azzerate (riportare i bit a 1) solo un numero limitato 
di volte (elevato, ma pur sempre limitato). In più le operazioni di 
cancellazioni sono a livello di blocchi.
La scrittura di un file necessita di un'operazione di cancellazione di tutti i 
blocchi interessati e la scrittura dei dati del file.
Già il filesystem FAT non è proprio indicato per questo tipo di supporti (basta 
guardare dove si trova la fat e quante volte viene toccata quando cambi il 
contenuto di una directory), molti sistemi (tra cui anche il comportamento di 
default di Win) lavorano senza cache (quindi non ottimizzano i cicli di 
scrittura) per fare in modo che gli utonti non perdano tutti i dati quando 
staccano la scheda senza smontarla prima, abbreviandone la vita in maniera 
consistente.
I deframmentatori prendono i file, li spostano lontano dalla loro zona per 
prepararsi lo spazio, prendono un altro file e provano a metterlo nella zona 
vuota. Se non ce la fanno, via anche questo file e avanti con il prossimo.
In pratica sono tantissimi cicli di cancellazione e scrittura della memoria 
flash che non fanno bene, quantità che aumenta considerevolmente quando la 
memoria è quasi piena.
Aggiungi anche il fatto che i deframmentatori spostano tutti i file verso 
l'inizio della memoria, e ottieni una usura spaventosa dei primi blocchi.
Esistono filesystem (come il flashfilesystem) studiati apposta per questo tipo 
di memorie (ogni volta che modifichi un file, uno o più record con le modifiche 
sono aggiunti al filesystem senza sovrascrivere le informazioni vecchie, in modo 
da limitare le cancellazioni della memoria), ma il sistema di casa Redmond non 
legge nient'altro che FAT e NTFS (non considero il fantomatico WinFS).
Luca

Void ha scritto:

probabilmente perché le memorie a stato solido hanno un tot di cicli di 
scrittura di vita e deframmentando ne fai tanti
-- 
Roberto Tagliaferri-Linux user #30785 <-> r.tagliaferri@(forse)
tosnet.it
Christ:
	A man who was born at least 5,000 years ahead of his time.

 le operazioni di cancellazioni sono a livello di blocchi.
Molto interessante!!
Ciao e grazie a tutti,
  Void :-)

 Le penne USB utilizzano come supporto delle celle di memoria FlashNAND.
Ottima spiegazione.
Aggiungo solo che non ha senso deframmentare le memorie flash, per il
semplice motivo che non ci sono testine da muovere, e quindi non c'e`
praticamente latenza per la ricerca dei dati.
Bye.

 ...
Sei stato molto esauriente nella risposta.
Agiungo solo che molto spesso si e` obbligati 
formattare le flash memorie con il FAT poiche`
e` l'unico supportato dalle macchine fotografiche 
e lettori MP3. 
In quanto a Windows mi pare che la Microsoft 
sviluppo` un filesystem per flash memory.

 ...
Sei stato molto esauriente nella risposta.
Agiungo solo che molto spesso si e` obbligati 
formattare le flash memorie con il FAT poiche`
e` l'unico supportato dalle macchine fotografiche 
e lettori MP3. 
Inoltre le penne USB e le schede MMC ed SD usano
una particolare tecnica per cui usare un filesystem
specifico non comporta grossi vantaggi rispetto 
al FAT.


 
La cosa non mi sorprende, ma deve essere rimasto un vaporware, come WinFS.
Luca

 vaporware, come WinFS.
Al contrario. Ed anche Linux ha sviluppato cose
simili. Rimando al link gia` postato.

 simili. Rimando al link gia` postato.
Di Linux lo sapevo. L'ho anche utilizzato in un progetto di un embedded che 
lavorava su flash.
LP

 non frammentati.
Ecco, io vorrei evitare questa operazione perché sono 270 Gb di dati e
sarebbe complicato e macchinoso trovare spazio dove metterli. Comunque
questa risposta mi fa pensare che non esista un software del genere
sotto linux, se da una macchina virtuale con win o con un emulatore
deframmento sarebbe troppo un casino?

 ...
Certo esiste. Ma viste le molteplici paturnie di
Windows e` meglio compattare il disco da Windows.

   
No, il disco che voglio deframmentare ha 270 Gb di dati e sarebbe
complicato trovare spazio altrove dove metterli.

 trovare spazio altrove dove metterli. 
Quindi non hai nessun backup di quei dati?

mallin.shetland ha scritto:

No, sono solo su quel disco in questo momento e comincia ad essere
lento, sospetto perdita di clusters per qualche file audio che non si
sente più fino alla fine ma pare che fisicamente il disco funzioni
perfettamente. Per questo ho immaginato, memore di situazioni simili
quando avevo win98, che un bel defrag avrebbe potuto giovare. Ad una
prima analisi col partizionatore di suse pare che la tabella degli
indirizzi sia a posto ma nutro seri dubbi sull'incolumità dei miei files.
Mi sa che la prossima volta me ne frego della compatibilità e formatto
con un fs serio.

 Mi sa che la prossima volta...
Farai un backup?

   
Questo mi convincerà a non usare né hard disc né file system balordi per
i miei backup, mi armerò di dvd-r ed avrò lo stesso la compatibilità con
gli amici windowsari.

 scrittura di vita e deframmentando ne fai tanti
boh ... sulla scheda della mia macchina fotografica c'e' scritto 
"garantita 10 anni". Il che mi induce a pensare che hanno una lunga vita.
-- 
echo onailimissaM | awk 'BEGIN { FS = "" }
{ for (i = NF; i >= 1; i-- )
  printf $i }'; echo

 
ok, ma non penso tu scatti qualche migliaio di foto nell'arco di qualche ora :-)
-- 
Roberto Tagliaferri-Linux user #30785 <-> r.tagliaferri@(forse)
tosnet.it
"Hello," he lied.
		-- Don Carpenter quoting a Hollywood agent

 gli amici windowsari.
Il disco fisso esterno e' una valida possibilita'. Anche un DVD-R puo'
diventare inleggibile nel tempo. Basta qualche graffio ben fatto.
Repeat, il problema non e' il supporto ma la modalita' dei backup. Devi
avere due o piu' copie dei tuoi dati. Una sola copia non e' un backup.
Ciao Beppe

 una _copia_ dei dati...
s/copia/copia di riserva/
e condivido in pieno il tuo intervento.

 che hanno una lunga vita.
Visto che ormai siamo andati fori tema continuo.
Le celle NAND usate attualmente sopportano circa 
un milione di cicli di riscrittura.
Verrebbe da dire che se riscrivi la scheda 
una volta al secondo questa durerebbe circa 
una trentina d'anni ma purtroppo non e` cosi`.
Il problema e` che i filesystem tradizionali,
che sono progettati per i dischi rigidi che 
non si danneggiano nelle scritture, riscrivono 
le metainformazioni molte volte di seguito
anche durante la lettura per cui la vita di 
una scheda in queste  e ` molto corta.
Particolarmente stressanti sono EXT2, FAT 
e NTFS 
Per fortuna esistono rimedi per cui io direi
che con l'uso normale il problema non sussiste.
Ma la questione (peraltro era solo una ipotesi)
era che la deframmentazione di una scheda di memoria
con un filesystem FAT non rientra nell'uso normale
(oltre ad essere non necessaria).

   
Si potrebbe quasi dire che è una soluzione ovvia, e ovviamente lo dico
dopo NON averla adottata.

 dopo NON averla adottata.
Pazienza, dall'altra parte si impara anche da queste noiose situazione
no ? :)
Buoan serata.
Giuseppe

 consistente.
A questo proposito personalmente monto i filesystem FAT su Flash con
un'opzione che al momento non riesco a ricordare. Previene l'aggiornamento
delle informazioni temporali di accesso ai file. Non è molto ma è già qualche
ciclo di scrittura in meno.
A questo punto ho una domanda, si fa un gran parlare di hard disk non
meccanici che dovrebbero essere introdotti nel mercato dei portatili per
diminuire consumi, dimensioni riscaldamento ecc. Non ho capito su che
tecnologia si basano però. Escludo Flash NOR/NAND.
-- 
      Daniele Giglio      Dona i tuoi cicli di clock alla ricerca!
 
dgi...@iol.it
 
http://boinc.berkeley.edu/
                          --------------------
 Come posso sapere se funziona?  A questo servono i beta tester.  Io ne
 ho solamente scritto il codice.
 		-- Attribuita a Linus Torvalds, in un qualche posting

 tecnologia si basano però. Escludo Flash NOR/NAND.
Bella domanda.
Anche perché le flashNor sono lente e costose e le flashNand hanno mortalità e 
imperfezioni molto elevate.
Mi piacerebbe sapere anche che classe di durata hanno questi nuovi "dischi a 
stato solido" (milioni di riscritture, migliaia, miliardi o cosa)
Da quello che ho visto finora, non è tanto la velocità di trasferimento (quella 
può essere sempre aumentata :-) anche solo con il read ahead o l'uso di cache), 
quanto l'affidabilità in termini temporali e in termini di riscritture.
Non finisco mai di sorprendermi pensando al fatto che abbiamo tavolette di 
argilla vecchie migliaia di anni e non possiamo leggere un floppy scritto con un 
programma di 15 anni fa, oppure che i dati di alcuni dischi risultino 
inaccessibili per via dei raggiunti limiti di età (e si parla sempre di anni) o 
perché non esistono più apparecchi in grado di leggerli (come l'harddisk da 30 
mega che ho appeso in camera, un disco di metallo del diametro di 30 centimetri)
PSK

 risultino
Beh, questo parallelo vale fino a un certo punto. *Tu* (in prima persona),
sei in grado di leggere/recuperare una tavoletta d'argilla mesopotamica o
un papiro egizio?
È questione di mezzi e volontá (anche se effettivamente non è comunque
paragonabile la facilità d'usura e rottura delle forme di immagazinamento
informatico rispetto a quelle tradizionali, ed è un serio problema per il
futuro).
-- 
Vide

 
Infatti.
Già abbiamo un tale inquinamento di informazioni (dovute alla loro quantità) che 
rende inevitabile la perdita di una gran parte di queste.
Se aggiungiamo anche che i supporti sono altamente deperibili per conto loro e 
la loro deperibilità aumenta se non vengono archiviati con cura, le cose non 
migliorano.
In più c'è l'aggravante che i dati sono spesso codificati, criptati o anche solo 
compressi.
Risulta più semplice (se rapportato) decodificare papiri egizi piuttosto che una 
scheda SD (sempre che sia accessibile).
Ulteriore punto a sfavore, per accedere ai dati, alcuni dispositivi vanno anche 
alimentati e interrogati con dei comandi specifici.
Initettare una tensione sbagliata o anche semplicemente ad una uscita può 
danneggiare irreparabilmente i circuiti e rendere irrimediabile la perdita dei 
dati contenuti.
Al giorno d'oggi recuperare i dati da un HDD IDE è costoso, ma semplice.
Tra 50 anni non ne sono così sicuro.
LP