“Dispositivo USB non riconosciuto”, l’impossibilità di leggere o scrivere dati e situazioni del genere, parlando di una chiavetta dati USB, sono imprescindibilmente sintomo di problemi!
Spesso e volentieri tali problemi sono dovuti a blocchi danneggiati, che impediscono la corretta lettura/scrittura dei dati dalla chiavetta USB in questione e, spesso, ne impediscono anche il riconoscimento!
Dunque a meno che non abbiamo fatto fare un bagnetto alla chiavetta USB in una bella bacinella piena d’acqua, o peggio ancora in lavatrice, possiamo tentare di recuperare i dati sulla chiavetta usando Linux eseguendo una scansione con fsck.
Se questo tentativo dovesse rivelarsi vano, tenteremo di recuperare l’intera chiavetta USB danneggiata; facendo ciò, tuttavia, si andrà incontro alla perdita completa dei dati che vi erano memorizzati.
Vediamo come procedere!
Recuperare chiavetta USB danneggiata con Linux
Metodo 1: fsck
Inseriamo la chiavetta USB danneggiata nel PC, dopodiché apriamo un terminale e digitiamo il comando
lsblk
L’output sarà del tutto simile a questo:
Identifichiamo la nostra chiavetta guardando bene le dimensioni: nel nostro caso, il sistema riconosce come /dev/sdb l’intera chiavetta e come /dev/sdb1 la partizione dati in essa presente.
Fatto ciò, avviamo l’analisi dei settori danneggiati con il comando
fsck /dev/partizione
dove a partizione andremo a sostituire l’identificativo ricevuto poc’anzi. Nel nostro esempio, il comando sarà
fsck /dev/sdb1
Attendiamo pazientemente il termine della procedura e la risoluzione degli eventuali errori. La nostra chiavetta dovrebbe ora essere letta senza problemi! Il consiglio è di copiare immediatamente i dati altrove poiché, quando i blocchi iniziano ad essere danneggiati, c’è buona probabilità che l’ora di pensionamento della chiavetta USB sia vicina!
Metodo 2: cancellazione completa
Questo è un metodo che potrebbe recuperare una chiavetta USB danneggiata rendendola di nuovo leggibile ma che, tuttavia, ha come conseguenza la cancellazione completa dei dati. Di fatto questo metodo è ottimo se i dati sono completamente corrotti e se il metodo precedente non ha dato il risultato sperato.
Identifichiamo ancora una volta la nostra chiavetta USB usando il comando lsblk, come spiegato in precedenza. Controlliamo più volte di aver annotato l’identificativo corretto, poiché la procedura che stiamo per avviare comporta la completa cancellazione dei dati. Sbagliare periferica potrebbe provocare danni enormi!
Detto ciò, supponiamo che Linux abbia riconosciuto la nostra chiavetta come /dev/sdb e la partizione contenuta in essa come /dev/sdb1. Andiamo a riempire di 0 l’intera chiavetta (ciò, ripetiamo ancora una volta, eliminerà TUTTI i dati presenti sulla chiavetta) con il comando
sudo dd if=/dev/zero of=/dev/chiavetta
che, nel nostro esempio, si trasforma in
sudo dd if=/dev/zero of=/dev/sdb
Completata la procedura, creiamo ora sulla chiavetta una partizione con un filesystem nuovo di zecca. A seconda del tipo di formattazione che desideriamo, i comandi sono differenti.
Per formattare la chiavetta in NTFS (ricordando di sostituire /dev/sdb1 alla nostra partizione), andremo a digitare il comando
sudo mkfs.ntfs -f /dev/sdb1
Per formattare la chiavetta in FAT32 andremo invece a digitare
sudo mkfs.msdos -f 32 /dev/sdb1
e infine, per formattare la chiavetta in EXT4 (ricordando che Windows non legge tale formato), andremo a digitare
sudo mkfs.ext4 -f /dev/sdb1