Secondo me ci stiamo confondendo le idee. Il problema sollevato da puzuma è fondato e lo potete testare anche voi. Vi posto il resoconto:
Codice: Seleziona tutto
$>mount /mnt/pendrive
$> ls
totale 5,3M
5,3M MPlayer-SVN_r32943.tar.bz2
$> mv MPlayer-SVN_r32943.tar.bz2 /mnt/pendrive/
$> ls
totale 0
$> ls /mnt/pendrive
totale 5,3M
5,3M MPlayer-SVN_r32943.tar.bz2*
Il file è stato spostato correttamente giusto? Vediamo, stacco la pennina senza fare umount, come avverrebbe se mancasse la corrente o per distrazione. Faccio un umount per non creare problemi (ma la pennina non c'è!).
Riattacco la pennina:
Codice: Seleziona tutto
$> mount /mnt/pendrive/
$> ls /mnt/pendrive/
totale 0
Conclusione, il flie MPlayer-SVN_r32943.tar.bz2 è, usando le parole di puzuma, nell'iperspazio.
Però il problema non è dovuto alla cache di nessun supporto, HD o pennina (ma la pennina ha una cache?). Il problema avviene per via dell'opzione 'async' passata a 'mount',
man mount ha scritto:async
All I/O to the filesystem should be done asynchronously. (See also the sync option.)
questa opzione è di default abilitata anche quando nell'fstab (per chi la usa ancora) c'è inserito 'defaults':
man mount ha scritto:defaults
Use default options: rw, suid, dev, exec, auto, nouser, and async.
quindi è molto probabile che tutti i nostri filesystem siano montati in questo modo, ergo, se la corrente va giù effettivamente si potrebbe perdere qualche file spostato, anche se mv finisce correttamente la sua esecuzione.
Per rispondere a "wakkokid", non c'entra niente la cache del supporto. E' solo che il kernel si mette i file in memoria (se ha spazio) e non li sposta direttamente (in questo caso sulla pennina), lo farà in un secondo momento, o quando lo ritiene più opportuno o quando glielo chiediamo noi, ad esempio con 'umount'.
Emanuele