Стоит ли отключать USB-накопитель перед его отключением?

45

Когда вы отключаете USB-накопитель без отключения, ваша ОС предупреждает вас о том, насколько ужасной может быть такая операция для ваших устройств (я работаю на OSX).

Я обычно следую совету, отключая перед отключением, но много раз (тысячи) случалось так, что в конце своих задач я просто отключал (хранилище HD, мобильные телефоны и т. Д.) И никогда не замечал испорченных данных на моем устройства.
Мне повезло, или это досадное предупреждение можно просто игнорировать?

systempuntoout
источник
2
Ответ не публикуется, поскольку мои данные полностью анекдотичны. Я был сисадмин , а затем разработчик программного обеспечения в течение 15 лет , и многие из моих друзей в той же торговле , и я не могу вспомнить один человек жалуется на потери данных от отсоединением устройства USB без размонтирования. Просто используйте здравый смысл. Не вынимайте его, пока вы копируете / перемещаете вещи.
Нифля
@Nifle, это то, о чем я говорю :) (на самом деле я указал «в конце своих задач»)
systemptotoout
1
Я хотел бы предложить дополнительный анекдотический рассказ - в лаборатории в Uni люди (очевидно) подключали USB-флешки для переноса работы. У нас не было соответствующих разрешений на размонтирование (не спрашивайте ...), и после первого срока появилось несколько крупных важных знаков, говорящих людям не использовать USB-порты на клавиатурах, потому что они продолжали портить палки (я знал лично как минимум о четырех инцидентах). Но те же базовые блоки, используемые таким же образом (без размонтирования разрешений), вроде бы работали нормально!
DMA57361
1
@ DMA57361, если у вас нет прав на размонтирование (интересно, как вы монтировали, то сначала ... плохой плохой админ), вы можете в любом случае запустить sync, подождать несколько секунд, а затем отключить.
user39559
2
еще один приз ?! кто маффин я с маслом? ;-) здесь, еще один голос ...
Sky Sanders

Ответы:

42

Либо вам повезло, что у вас никогда не было поврежденных данных, либо вам не повезло, что вы никогда не заметили, что ваши данные были повреждены.

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

Если вам случится отключить устройство до того, как все будет написано, вы можете пропустить последние данные. Хуже того, если ОС выполняет операции не по порядку, вы можете перевести ваше устройство в несогласованное состояние и потерять больше, чем самые последние данные.

Некоторые операционные системы переходят в более консервативный (но более медленный) режим для съемных устройств, чтобы снизить риски, связанные с отключением устройства перед его отключением.

ДОБАВЛЕНО :
Выполнение операций не по порядку - это иногда не просто вопрос скорости. Недорогие флэш-носители (которые не относятся к перераспределению секторов на аппаратном уровне) ограничивают количество записей, которые вы можете записать в любой данный сектор. Если вы наивно пишете все изменения по мере их появления, это может привести к уничтожению секторов, содержащих таблицу размещения файлов в (V) файловой системе FAT (наиболее распространенный случай для съемных дисков) или в журнале в типичной современной файловой системе. (См., Например, это обсуждение в syncсписке рассылки ядра Linux .) Здесь, не обновлять FAT или журнал каждый раз, когда файл записывается, это не просто большой выигрыш в производительности, это также хорошо для срока службы оборудования.

До недавнего времени Linux предоставлял только выбор между sync(записывайте все изменения по мере их возникновения) и async(пишите, когда это удобно). В последних версиях появилась flushопция для файловых систем FAT, которая находится где-то посередине (сбросить все отложенные записи, как только диск станет неактивным); он включен по умолчанию в Ubuntu 10.04.

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

Жиль "ТАК - перестань быть злым"
источник
3
Перейти на syncмонтаж! : D
BloodPhilia
Это все еще проблема при использовании журнализированной файловой системы?
NReilingh
1
@NRei Да. Журнализированные файловые системы просто предотвращают повреждение данных, если что-то идет не так в середине процесса записи. Это не предотвращает повреждение или потерю данных из-за того, что запись вообще не выполнялась, потому что диск был отключен до того, как операционная система занялась записью данных.
deceze
@BloodPhilia: syncиногда больно больше, чем производительность, см. Мое редактирование.
Жиль "ТАК - перестать быть злым"
2
Договорились - systemmpuntoout пока что повезло. Я потерял немало работы, не отмонтируя перед извлечением флешки. Вы можете сохранить все, что вы хотите в своем приложении, но если записи буферизуются, это не произошло там, где это важно. Вы только сгорели от этого один раз.
Брайс
5

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

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

Jarvin
источник
4
Я полагаю, что большинство операционных систем отключают этот тип отложенной записи для съемных носителей.
Джефф Этвуд
@Джефф, это, безусловно, разумный способ лечения USB-накопителей. Есть ли способ проверить это? В Windows 7?
Торбен Гундтофте-Брюн
@torbengb: На самом деле, это не всегда разумно - смотрите мой отредактированный ответ .
Жиль "ТАК - перестать быть злым"
Мой USB, если я вхожу в параметры политики, по умолчанию используется Быстрое удаление, которое в описании говорит, что Безопасное удаление не требуется. Другой вариант - «Лучшая производительность», который не используется по умолчанию, но потребует безопасного удаления. Таким образом, для большинства по умолчанию будет быстрое удаление, что означает отсутствие необходимости безопасного удаления.
ComputerLocus
@Fogest, это правда, но это также специфично для Windows; OP использует OSX. Конечно, я уверен, что OSX делает нечто подобное.
Synetech
4

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

tcrosley
источник
3

Я работаю в казино, и многие производители игровых автоматов теперь используют USB-накопители для установки бинарных файлов (игр и ОС) на игровой автомат.

Игровой автомат с поврежденной микропрограммой может выдавать или не выдавать тысячи, если не десятки тысяч долларов, является отличным стимулом для проверки целостности данных на этом USB-накопителе. Соответствие / Регулятор проверяет это в любом случае, но это все еще сохраняет работу, чтобы сделать это правильно с первого раза.

В корпоративной среде потеря данных может стоить миллионы, и лично вы можете потерять что-то незаменимое.

Я бы, конечно, позаботился о том, чтобы размонтировать, безопасно удалить или использовать любую терминологию, чтобы убедиться, что любое USB-устройство с данными на нем безопасно для удаления.

dghughes
источник
1
Но копировать mp3 для прослушивания не так уж и много.
cgp
3

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

Так да. Даже если большую часть времени простое извлечение USB-накопителя без демонтажа может быть безопасным, это определенно не рекомендуется.

Янне Пиккарайнен
источник
3

Когда привод записывался на диск, я видел повреждение, когда он был демонтирован слишком рано. Хотя операционная система не хранит данные, не записанные как обычно, XP, по крайней мере, будет принимать запросы на запись для резервного копирования.

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

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

Лорен Печтель
источник
2

Если система выполняет файловые операции на диске, есть вероятность, что она повредит данные. Так как с тобой этого никогда не случалось, тебе повезло. Используйте здравый смысл, чтобы решить, есть ли шанс, что ваша ОС выполняет операции. (Есть ли программы / файлы с диска, открытые / используемые? Есть ли у меня кэширование на диске? Индексируется ли он? В моей ОС хранятся временные файлы на нем?)

BloodPhilia
источник
2

Неподтвержденное доказательство, а не доказательство, но у меня была испорченная информация из-за отключения USB, но это происходило только с телефонами Blackberry.

Дэйв Джейкоби
источник
2

Поверь мне, ДА.

Возможно, вы ничего не знаете о доступе к USB-накопителю, но на самом деле что-то есть. Таким образом, я уничтожил 3 внешних резервных жестких диска и потерял данные в объеме, близком к 2 терабайту.

ВСЕГДА, ВСЕГДА, размонтируйте перед отключением.

Сварливый медведь
источник
Вау, 3 HDD это невезение.
systempuntoout
3
@systempuntoout: «Раз смешно, дважды глупо, трижды стоит потрясти». После первых нескольких инцидентов вы можете захотеть взглянуть глубже, чем «невезение».
Крис Берджесс
1

Размонтируйте его, чтобы быть безопасным (если вы полностью параноик), но, как уже упоминалось, потеря данных в основном происходит из-за отложенной записи.

Есть еще одна вещь, которая связана с моим портативным диском WD Essentials. Если я просто отключу его без чистого крепления, в следующий раз, когда я подключу его, он сделает диск доступным только для чтения. Я должен перезагрузить компьютер с дисководом, чтобы снова сделать его доступным для записи ... что однозначно раздражает!

user47602
источник
0

Другой сценарий в системе Windows 10 - это когда (в данном случае 64 ГБ, без ReadyBoost) флэш-диск физически извлекается, когда система находится в режиме гибернации. После программной загрузки системы из режима гибернации перемещение или копирование любых измененных файлов на флэш-карте может привести к повреждению файла или каталога и появлению нечитаемой ошибки.
Чтобы обойти ошибку (наряду с необходимым действием chkdsk, создающим один или два фрагмента chk и «восстанавливающим» совершенно исправный диск), мы пробуем right_click_on_drive_to_eject или отключаем флешку. Хорошо, но когда пользователь затем отключает / включает его в Устройствах, диск не отображается ни в одном из окон проводника и по-прежнему отображается как « Нет носителя» в управлении дисками., Единственный способ полностью подключить устройство - просто физически отключить и снова подключить устройство.
Таким образом, предпочтительнее изящно отключить устройство перед его отключением.

Лори Стерн
источник