Questo post presenta la soluzione ad un problema in cui mi sono imbattuto recentemente. Utilizzo un hard disk USB esterno con FAT32 come file system (in modo da poterlo gestire anche da Windows) e da circa un paio di settimane, poco dopo averlo collegato al mio pc su cui uso Ubuntu 7.04, non riuscivo a scrivere o cancellare file dal disco in questione con un errore tipo:
cannot write 'x.x': Read-only file system
Quando inserite una penna USB o un hard disk esterno o un qualche altro dispositivo USB, Ubuntu li monta automaticamente all’interno della directory /media
La prima cosa da fare è pertanto verificare che abbiate i permessi giusti sul dispositivo appena montato con un ls -l da terminale:
ls -l /media
L’output potrebbe essere qualcosa di simile:
lrwxrwxrwx 1 root root 6 2006-03-23 11:08 cdrom -> cdrom0
drwxr-xr-x 2 root root 4096 2006-03-23 11:08 cdrom0
drwx------ 6 lorenzo root 16384 1970-01-01 00:00 disk
Il dispositivo è stato riconosciuto e montato da Linux come “disk”. L’output dice anche che l’utente “lorenzo” ha tutti i permessi (lettura, scrittura, esecuzione) sul file system e quindi questo non sembra essere il problema.
Il prossimo passo, che nel mio caso è risultato decisivo, è quello di controllare il file system alla ricerca di eventuali errori con dosfsck. Prima diamo da terminale:
fdisk -l
per controllare la tabella delle partizioni. Dall’output risulta che “disk” corrisponde al device /dev/sdb1. Un modo analogo (forse più intuitivo nel risultato ma meno “elegante”) di determinare quale sia il device corrispondente a /media/disk è:
df | grep "/media/disk"
il quale restituisce:
/dev/sdb1 509536 467104 42432 92% /media/disk
Stesso risultato di fdisk. A questo punto eseguiamo dosfsck senza nessuna opzione solo per controllare la presenza di eventuali errori nel file system. dosfsck, terminata l’esecuzione, lascerà intatto il vostro hard disk o penna USB senza nessuna modifica.
dosfsck /dev/sdb1
se dall’output dovessero risultare problemi (nel mio caso qualche cluster era corrotto) allora vale la pena tentare una riparazione:
dosfsck -r /dev/sdb1
Nel mio caso questo ha felicemente risolto il problema.



Grazie, hai salvato il mio ipod da sicura formattazione con la tua guida!
Grazie, credevo che la penna non fosse compatibile con Linux e invece correggendo 2 robe che non ho capito bene con il comando di riparazione, ora posso leggere, scrivere e cancellare.
Mitico
grazie!
anch’io avevo lo stesso problema con la mia pendrive ed ho risolto grazie alle tue istruzioni
Grande Pinguino Furioso!
Grande hai salvato la vita alla mia pen drive (stavo per calpestarla)
)
ho un disco usb che per un paio di settimane ha funzionato correttamente ma adesso me lo da in sola lettura. come posso fare per ripristinare la scrittura?
@cappe
E’ appunto quello che e’ spiegato nell’articolo. Spero possa risultare utile anche nel tuo caso.
ho eseguito alla lettera ma mi dice sempre
marco@marco-laptop:~$ dosfsck -r /dev/sdb1
dosfsck 2.11, 12 Mar 2005, FAT32, LFN
open /dev/sdb1:Permission denied
uso una pendrive trascend da 1 gb .
grazie
Mitticcooo!!! Grazie
@Marco
usa sudo davanti al comando
sudo dosfsck -r /dev/sdd1
dopo la scansione mi chiede:
1)Correct
2)Don’t correct
?1 [questa è la mia risposta]
dopodichè dovrebbe cominciare la riparazione ma..
il risultato sono tanti
Writing 4 bytes at XXXXXXX failed: Operation not permitted
Cosa significa?
grazie
Hai salvato anche me dato che la mia penna USB non voleva più saperne di essere scritta in nessun modo!
Grazie mille
Idomeneo
A me, dopo aver eseguito da root i tuoi comandi, come risultato mi dà questo:
root@alessandro-desktop:/home/alessandro# dosfsck -r /dev/sdb1
dosfsck 2.11, 12 Mar 2005, FAT32, LFN
/dev/sdb1: 11 files, 1496/62179 clusters
nonostante ciò mi dà ancora read-only.
Grazie per l’eventuale aiuto
Salve ho un problema identico con una SSD card montata su un AcerONE (Linux Linpus).. premetto di essere uno inesperto..
Il comando dosfsck a me non va.. il sistema dice che non trova il comando.
Sapete quale comando debba usare?
grazie!
grazie.
sei un capo!!!