Убивает ли Ubuntu USB-накопители?

73

Всякий раз, когда я отсоединяю USB-накопитель с помощью Nautilus и подключаю его к машине Windows, я получаю предупреждение о необходимости восстановления диска.


(такое же сообщение, как на этом снимке экрана)

В течение более 10 лет работы с окнами у меня никогда не было поврежденного или поврежденного USB-накопителя, но в течение последних двух лет три из моих USB-накопителей стали неработоспособными, поэтому я не могу это доказать, но очевидно, что это связано с Ubuntu (un ).

Друг сказал мне, что я могу предотвратить такой ущерб, используя udisks и sync, но я надеюсь, что это не способ сделать это, установив диски с командами оболочки в 2016 году.

    
задан jan6352781 01.04.2016 в 11:54
источник

8 ответов

103

Не беспокойтесь, Ubuntu не повредил ваш USB-накопитель. Но мы не используем плохо документированные битовые флаги файловой системы FAT32, FAT16 или NTFS. В Windows эти флаги указывают на возможную поврежденную файловую систему, когда мы не удалили надлежащим образом диск или произошла ошибка ввода-вывода.

Эти биты расположены в зарезервированной записи таблицы разделов FAT. Согласно внутренней бумаге Microsoft за 2004 год , цель из этих бит:

  • ClnShutBitMask:
    If bit is 1, the volume is “clean”. The volume can be mounted for access. If bit is 0, the volume is “dirty” indicating that a FAT file system driver was unable to dismount the volume properly (during a prior mount operation). The volume contents should be scanned for any damage to file system metadata.
  • HrdErrBitMask:
    If this bit is 1, no disk read/write errors were encountered. If this bit is 0, the file system driver implementation encountered a disk I/O error on the volume the last time it was mounted, which is an indicator that some sectors may have gone bad. The volume contents should be scanned with a disk repair utility that does surface analysis on it looking for new bad sectors.

Несколько лет назад было несколько обсуждений с разработчиками файловой системы ядра о том, как преодолеть это, но я не смог отслеживать результаты. По-видимому, он не попал в последние ядра.

Поскольку задействован только бит-флаг, но, как правило, наши данные должны быть в идеальной форме, мы можем игнорировать предупреждения Windows на тех дисках, которые мы ранее использовали в Ubuntu.

    
ответ дан Takkat 01.04.2016 в 16:38
73

Это в основном проблема с Windows. Он считает, что это единственная ОС в мире и действует, если обнаруживает то, что не понимает.

Просто потому, что Windows говорит, что вы должны восстановить диск, это не делает его истинным.

Любой из моих дисков, используемых с Ubuntu, получает это сообщение из Windows, я просто говорю no , и они отлично работают с Windows.

Короче, в драйвере нет ничего плохого, просто есть что-то, что Windows не понимает, и его ответ уничтожает его.

Не используйте repair диска, он будет отформатировать его, не сообщая вам, и вы потеряете все данные на диске.

    
ответ дан Mark Kirby 01.04.2016 в 11:59
17

Как вы сказали в комментарии, возможно, это связано с тем, что Ubuntu не завершил процесс записи до удаления флеш-накопителя. Ubuntu записывает файлы в ОЗУ во время процесса копирования и записывает эти файлы из буфера на USB-накопитель в фоновом режиме после закрытия диалогового окна копирования. Есть другой ответ , который предполагает, что это особенно проблема для машин с большим объемом памяти, но, скорее всего, вы удалите диск до того, как будет закончена запись в фоновом режиме. Когда вы извлекаете диск, это заставляет буфер записываться на диск, но трудно сказать, когда запись действительно завершена. Существует всплывающее окно в более новых версиях (15.10, наверняка, возможно, 15.04), предназначенных для устранения этого - появляется фиолетовое предупреждение после некоторого (обычно короткого) времени, которое говорит что-то вроде строки "[Диск] теперь можно удалить" запись закончена.

Вероятно, это причина, по которой ваш друг предложил синхронизацию. Запуск sync в терминале заставляет все буферизованные данные записываться на диск и должен возвращаться только после завершения записи (см. этот ответ ). См. этот ответ для утилиты, которая поможет вам определить, является ли это на самом деле проблема.     

ответ дан alex_d 01.04.2016 в 15:09
5

Я видел множество USB-накопителей, особенно флеш-карт (SD и т. д.) в USB-адаптерах, причем файловые системы FAT (практически каждый USB-накопитель поставляется с предварительно отформатированным с FAT32) повреждаются при использовании Ubuntu & amp; Полученные от Ubuntu дистрибутивы. Это было почти обычное явление каждые несколько месяцев регулярного ежедневного использования.

Если это была аппаратная проблема, форматирование разделов с помощью ext3 (или 4) не должно помочь, но ext3 / 4 делает файловые системы практически пуленепробиваемыми. (ext2 также был поврежден в течение нескольких месяцев, когда я его пробовал, должен был иметь меньше записей, чтобы продлить срок службы флеш-накопителей, главным образом из-за отсутствия журнала).

Итак, Ubuntu должен not физически повреждать диски USB самостоятельно, но я до сих пор не доверяю ему 100% файловой системой FAT.

Я думаю, что повреждение файловой системы можно избежать:

  • Никогда не отсоединяйте USB-накопитель до тех пор, пока он не будет размонтирован / umount / ejected. Даже если диск в настоящее время ничего не пишет (если у него свет, который не мигает), и даже если вы сделали sync , файловая система все еще может
  • Подождите, по крайней мере, несколько секунд после umount / eject перед отсоединением. Похоже, что даже после umount индикатор активности диска иногда может немного мигать. Другие пользователи как этот парень говорят, что это может продолжаться до минуты.
  • Не только полагайтесь только на sync , либо на как этот парень , который получил повреждение файла.

Связанные (обычно) ссылки:

ответ дан Xen2050 02.04.2016 в 18:45
3

Это не имеет никакого отношения к какой-либо операционной системе. Это ошибка файловой системы, которая в большинстве случаев указывает на то, что диск не был размонтирован должным образом (ошибка пользователя). Это не абсолютный признак урона, он просто указывает на вероятность повреждения. Если присутствует, повреждение обычно ограничивается последним записанным файлом. Команда Windows «Ремонт» в этом случае сканирует диск для секторов, помеченных как «занятые», но не привязанные к какому-либо файлу, а затем присваивает эти фрагменты и фрагменты новым файлам.

Эта ошибка может быть также создана в Windows, если вы просто выдергиваете диск во время записи, не размонтируя его сначала (в Windows «Извлечь» выполняет размонтирование).

Увидеть это сообщение означает, что диск не был размонтирован должным образом.

Вы можете проверить самостоятельно, если файловая система была действительно повреждена или это просто ложно положительно: если после запуска «Восстановить» появляется новая папка с именем «found000» с некоторыми файлами в ней, это означает, что действительно существует незавершенная запись, которая была прервана. Некоторые из ваших данных были потеряны, и это вызывает озабоченность.

    
ответ дан Agent_L 04.04.2016 в 16:07
2

Я использую несколько лет ubuntu и windows с двойной загрузкой, и когда я правильно отключу диск, в окнах всегда появляется сообщение об ошибке, но никогда не было ошибок на моем USB-накопителе. В W10 вы можете отключить это всплывающее сообщение об ошибке.

    
ответ дан tviragh 05.04.2016 в 11:53
1

Практически невозможно, чтобы какая-либо ОС могла повредить USB-накопитель, после нормального формата (не быстро) не должно быть следов, чтобы этот диск когда-либо использовался с Ubuntu.

Проверьте диски с помощью «H2testw» или «USB Flash Drive Tester» - плохие сектора могут быть источником многих странных ошибок.

    
ответ дан user158037 01.04.2016 в 15:55
1

Я не могу сказать, был ли диск поврежден, может быть, это было, и, возможно, это не так. Но как кто-то, кто может сказать то же самое: «В течение 10 лет работая с окнами ...», я могу сказать вам, что если вы используете Windows 10, это может стать источником ваших новых проблем. Я столкнулся с новой проблемой в первый день работы 10: 10 создана база данных для внешних дисков (это может быть база данных индексирования, я не помню). Если эта база данных не соответствует диску, она сообщит вам, что ваш диск поврежден, иногда вы можете игнорировать это предупреждение, а иногда вы не можете (см. Анекдот). Запуск «ремонта» исправит базу данных.

Анекдот:

I can't remember where I found this information but I found out about it when I moved my Music folder. It complained that the drive was broken instead of just complaining about the folder it was looking for not existing anymore. Before I ran repair the new location appeared on Ubuntu and the old location on Windows 10...but all the files couldn't be opened on 10. After I ran repair the new location of the Music folder appeared in Windows, the old folder disappeared, and it worked on Windows again.

Запуск sync тоже неплохая идея.

    
ответ дан Black 06.04.2016 в 11:17