Ubuntu danneggia le unità USB?

73

Ogni volta che disinstalla un'unità USB con Nautilus e la collego a una macchina Windows, ricevo un avviso che indica che l'unità deve essere riparata.


(lo stesso messaggio come in questo screenshot)

Per oltre 10 anni di lavoro con Windows non ho mai avuto un'unità USB danneggiata o danneggiata, ma negli ultimi due anni tre delle mie unità USB sono diventate inutilizzabili, quindi non posso provarlo, ma è ovvio che questo è legato a Ubuntu (un ) comportamento di montaggio.

Un amico mi ha detto che posso prevenire questo tipo di danno usando gli udisks e la sincronizzazione, ma spero che questo non sia il modo per farlo, montando unità con comandi di shell nel 2016.

    
posta jan6352781 01.04.2016 - 11:54

8 risposte

103

Nessun problema Ubuntu non ha danneggiato la tua unità USB. Ma non usiamo flag di bit scarsamente documentati di un filesystem FAT32, FAT16 o NTFS. Su Windows questi flag indicano un filesystem eventualmente danneggiato quando non avevamo smontato correttamente l'unità o si era verificato un errore I / O.

Questi bit si trovano in una voce riservata di una tabella di partizione FAT. Secondo un documento interno Microsoft del 2004 lo scopo di questi bit sono:

% Bl0ck_qu0te%

Qualche anno fa alcune discussioni con gli sviluppatori del file system del kernel su come superare questo problema, ma non sono stato in grado di seguire i risultati. Apparentemente non è entrato nei kernel recenti.

Poiché è coinvolto solo un bit flag, ma in generale i nostri dati dovrebbero essere in perfetta forma, possiamo ignorare i problemi di Windows relativi alle unità che avevamo precedentemente utilizzato in Ubuntu.

    
risposta data Takkat 01.04.2016 - 16:38
73

Questo è principalmente un problema con Windows. Pensa che sia l'unico sistema operativo al mondo e agisce se rileva qualcosa che non capisce.

Solo perché Windows dice che è necessario riparare l'unità non lo rende vero.

Tutte le mie unità utilizzate con Ubuntu ricevono questo messaggio da Windows, dico solo no e funzionano bene con Windows.

In breve, non c'è niente di sbagliato nell'unità, è solo che c'è qualcosa che Windows non capisce e la sua risposta lo distrugge.

Non repair del disco, lo formatterà senza dirlo e perderai tutti i dati sul disco.

    
risposta data Mark Kirby 01.04.2016 - 11:59
17

Come suggerito in un commento, questo è probabilmente correlato a Ubuntu che non completa il processo di scrittura prima di rimuovere l'unità flash. Ubuntu scrive i file nella RAM durante il processo di copia e scrive questi file dal buffer sull'unità USB in background dopo la chiusura della finestra di copia. C'è un'altra risposta che suggerisce che questo è particolarmente un problema per le macchine con grandi quantità di memoria, ma è probabile che tu stia rimuovendo l'unità prima che la scrittura in background sia completata. Quando si espelle un'unità, questo forza il buffer da scrivere sul disco, ma è difficile dire quando la scrittura è effettivamente completata. C'è un pop-up nelle versioni più recenti (15.10 per alcuni, forse 15.04) destinato a porre rimedio a questo - un avviso viola appare dopo un po '(generalmente breve) tempo che dice qualcosa sulla falsariga di "[Drive] può essere rimosso" una volta la scrittura è finita.

Questa è probabilmente la ragione per cui il tuo amico ha suggerito la sincronizzazione. L'esecuzione di sync nel terminale forza la scrittura su disco di tutti i dati memorizzati nel buffer e deve essere restituita solo una volta completate le scritture (vedere questa risposta ). Vedi questa risposta per un'utilità che ti aiuterà a determinare se questo è in realtà il problema

    
risposta data alex_d 01.04.2016 - 15:09
5

Ho visto molte chiavette USB, in particolare schede flash (SD, ecc.) in adattatori USB, con file system FAT (praticamente tutte le unità USB sono pre-formattate con FAT32) che si corrompono mentre si utilizza Ubuntu & amp; Distribuzioni derivate da Ubuntu. Era quasi un evento normale ogni pochi mesi di uso quotidiano regolare.

Se si trattasse di un problema hardware, la formattazione delle partizioni con ext3 (o 4) non dovrebbe essere d'aiuto, ma ext3 / 4 rende i file system praticamente a prova di proiettile. (Anche ext2 è stato danneggiato durante i pochi mesi in cui l'ho provato, si supponeva che avesse meno scritture quindi una vita più lunga per le unità flash, principalmente da nessun diario).

Quindi, Ubuntu dovrebbe non danneggiare fisicamente le unità USB, ma non mi fido ancora del 100% con i filesystem FAT.

Penso che la corruzione del filesystem possa essere meglio evitata da:

  • Non scollegare mai un'unità USB fino a quando non è stata smontata / umount / espulsa. Anche se l'unità non sta attualmente scrivendo nulla (se ha una luce non lampeggia) e anche se hai fatto un sync il filesystem potrebbe ancora
  • Attendi almeno alcuni secondi dopo umount / eject prima di scollegarlo. Sembra che anche dopo umount la luce di attività dell'unità a volte continui a lampeggiare per un po '. Altri utenti come questo ragazzo dicono che potrebbe andare avanti a un minuto.
  • Non fare affidamento solo su sync , come questo ragazzo che ha subito un danneggiamento dei file.

Link (generalmente) correlati:

risposta data Xen2050 02.04.2016 - 18:45
3

Questo ha poco a che fare con qualsiasi sistema operativo. Si tratta di un errore del file system, che nella maggior parte dei casi indica che l'unità non è stata smontata correttamente (errore dell'utente). Non è un'indicazione assoluta di danno, indica semplicemente una possibilità di un danno. Se presente, il danno è solitamente limitato all'ultimo file scritto. Il comando "Repair" di Windows in questo caso analizza l'unità per i settori contrassegnati come "occupati", ma non assegnati a nessun file e quindi assegna questi scrap e pieces ai nuovi file.

Questo errore può anche essere creato su Windows, se si estrae l'unità solo durante la scrittura senza prima smontarla (in Windows "Espelli" esegue lo smontaggio).

La visualizzazione di questo messaggio indica che l'unità non è stata smontata correttamente.

Puoi verificare da solo se il file system è veramente danneggiato o è solo un falso positivo: se dopo aver eseguito "Repair" appare una nuova cartella chiamata "found000" con alcuni file, significa che c'era davvero un scrivi non finito che è stato interrotto. Alcuni dati sono andati persi e questa è una preoccupazione.

    
risposta data Agent_L 04.04.2016 - 16:07
2

Uso diversi anni di Ubuntu e Windows con dual-boot, e quando smonto l'unità nel modo corretto, in Windows viene sempre visualizzato il messaggio di errore, ma non è mai stato un errore sul mio drive USB. In W10 puoi disattivare questo messaggio di errore pop-up.

    
risposta data tviragh 05.04.2016 - 11:53
1

Non c'è quasi alcun modo in cui un sistema operativo possa danneggiare l'unità USB, dopo un formato normale (non veloce), non dovrebbe esserci traccia che l'unità sia mai stata utilizzata con Ubuntu.

Controlla le unità con "H2testw" o "USB Flash Drive Tester": i settori danneggiati potrebbero essere fonte di molti strani errori.

    
risposta data user158037 01.04.2016 - 15:55
1

Non posso dire se l'unità è stata "danneggiata", forse lo era e forse no. Ma come qualcuno che può dire lo stesso: "Per oltre 10 anni di lavoro con Windows ...", posso dirti che se stai usando Windows 10 potresti essere la fonte dei tuoi nuovi problemi. Ho avuto un nuovo problema il mio primo giorno su 10: in 10 è stato creato un database per unità esterne (potrebbe essere il database di indicizzazione, non ricordo). Se quel database non corrisponde all'unità, ti dirà che l'unità è danneggiata, a volte puoi ignorare questo avviso e talvolta non puoi (vedi aneddoto). L'esecuzione di "riparazione" risolverà il database.

Aneddoto:

% Bl0ck_qu0te%

Anche l'esecuzione di sync non è una cattiva idea.

    
risposta data Black 06.04.2016 - 11:17

Leggi altre domande sui tag