Безопасное извлечение USB-устройств одним кликом. Безопасное извлечение USB-устройств в ОС Windows

Независимо от операционной системы, при извлечении флешки всегда рекомендуется перед тем как физически вытянуть устройство из компьютера, отключить его от системы программно.Действительно ли это так важно и нужно?

В этой статье мы попытаемся разобраться зачем нужно безопасное извлечение флешки и действительно ли оно так необходимо. Хотя статья ориентированна более на Linux, но эта задача общая для всех операционных систем, поэтому она будет полезна также пользователям MacOS и Windows.

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

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

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

Почему Linux, MacOS и Windows ведут себя по-разному?

Операционные системы ведут себя почти одинаково при работе с любым диском. Это относится не только к флешкам, но и встроенным в корпус жестким дискам. Данные, которые нужно записать сначала попадают в память и находятся там кое-какое время. Также прочитанные данные кэшируются в оперативной памяти, на случай если они еще раз будут нужны.

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

Безопасное извлечение флешки Linux и MacOS даже больше нужно, чем в Windows при настройках по умолчанию. Почему так? Операционная система Windows не использует кэширование для дисков, которые считает съемными. Такое поведение системы по умолчанию, но его можно изменить в сторону лучшей производительности. Для этого откройте Диспетчер устройств> Дисковые устройства> Название диска> Свойства> Политики:

С другой стороны, Linux и Mac используют кэширование для всех дисков по умолчанию, в том числе и съемных. Точно так же себя будет вести Windows если вы выберите вариант Лучшая производительность . Linux дает вам полный контроль над управлением дисками, в том числе вы можете указать нужно ли кэшировать данные. Для этого достаточно создать запись для монтирования флешки в /etc/fstab и добавить опцию монтирования sync . Например:

/dev/sdb1 /run/media/flash users,noatime,sync 0 0

Если вы используете опцию монтирования sync, то все данные, которые будут отправляться на диск будут сразу же записаны. Но обратите внимание, что опция sync не отменяет безопасное извлечение usb устройства. Правильное размонтирование гарантирует, что больше никакое приложение не работает с флешкой и там нет не сохраненных данных.

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

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

Для файловых систем FAT можно использовать опцию монтирования flush. Она записывает данные как только диск становится неактивным. Это немного улучшает ситуацию.

Всегда используйте безопасное извлечение

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

Тем более, что выполняется все это в пару кликов мышкой. В Ubuntu это можно сделать с помощью проводника. В KDE есть специальный виджет на панели задач, который позволяет безопасно извлечь флешку:

Если вы хотите выполнить это действие через терминал, то все делается тоже ненамного сложнее:

sudo umount /dev/sdb1

Здесь sdb1 - имя устройства флешки в вашей системе. После этого флешка будет подготовлена к извлечению. В Windows это нужно делать обязательно, потому что в отличие от Linux, эта система может сама, без вашего ведома начать выполнять какие-либо действия с флешкой, например создать папку System Volume Information с метафайлами.

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

Для начала небольшое введение, прочтите - это позволит Вам понять суть...

Увеличение производительности за счёт кэширования

Кэширование - это накопление данных в некотором хранилище, с целью быстрого последующего доступа к ним по мере надобности. Процесс кэширование ускоряет многие процессы обработки данных.

Так вот, операционная система Windows (с которой вы работаете), грубо говоря имеет две политики работы с накопителями информации (коим и является флэшка).

1) ВКЛ юченое кэширование

2) ВЫКЛ юченое кэширование.

Когда кэширование записи включено , данные сразу на диск не записываются , а попадают в кэш (некоторая область посредник). А собственно запись (физическая запись) на флэшку производится через некоторое время, такое поведение ещё принято называть - отложенная запись . Этим достигается повышение производительности.

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

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

Аргументы в пользу отказа от безопасного извлечения устройства

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

Думаю всем хотя бы в общих чертах стало понятно, как работает подсистема кэширования. И сейчас многие задались вопросом, а включено ли кэширование на мом компьютере? И многие подумают, что именно так и есть, раз им рекомендовали делать безопасное извлечение...

На самом деле, по умолчанию (т.е. если специально не поменять) включена политика с ОТКЛюченым кэшем, доказательством служит вот этот скриншот

Рисунок 1. Политика удаления

Внимательно вчитайтесь в текст и Вы увидите что Microsoft уже позаботилась о быстром удалении устройства.

Напрасные опасения

И так чего же Вы опасаетесь и так старательно стремитесь избежать, каждый раз отключая безопасно флэшку?

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

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

По прежнему считаете что Ваша флэшка может сгореть?

Тогда обратимся к спецификации USB интерфейса и здравому смыслу.

Здесь GND - цепь «корпуса» для питания периферийных устройств, а VBus - +5 В, также для цепей питания. Данные передаются по проводам D+ и D? дифференциально (состояния 0 и 1 (в терминологии официальной документации diff0 и diff1 соответственно) определяются по разности потенциалов между линиями более 0,2 В и при условии, что на одной из линий (D? в случае diff0 и D+ при diff1) потенциал относительно GND выше 2,8 В. Дифференциальный способ передачи является основным, но не единственным (например, при инициализации устройство сообщает хосту о режиме, поддерживаемом устройством (Full-Speed или Low-Speed), подтягиванием одной из линий данных к V_BUS через резистор 1,5 кОм (D? для режима Low-Speed и D+ для режимов Full-Speed и High-Speed.).

Ничего нового или шокирующего я здесь не рассказал, просто хотел подчеркнуть тот факт, что USB интерфейс подпитан напряжением +5 В. Напряжение питания заложено официальной спецификацией, и никакое безопасное извлечение устройств не может повлиять на размер выхода питающего напряжения.

Думаю что Вы понимаете что электрический прибор (коим является флэшка) может сгореть и горит (кстати довольно часто) только из-за перепадов, выбросов напряжения, либо кортоких замыканий. Причиной которых является неисправный или не качественный блок питания, компьютера "развиханный" USB разъём или токопроводящий мусор застрявший в порту, но никак не функция безопасного извлечения устройства в операционной системе Windows.

Если кто то из специалистов не согласен, буду рад если Вы поправите меня, обязательно внесу в текст статьи вашу корректировку.

Задумывались ли Вы каждый раз, после использования USB флешки, диска, дисковода и т.п. устройств над вопросом "А нужно ли безопасно её извлекать?" или Вы не задумываясь так извлекаете или наоборот - просто выдергиваете?
Да и что делать, если пропал этот самый значок в трее?
Сейчас до сих пор разгораются споры как между опытными пользователями, так и новичками по этому поводу.
Сейчас разберемся!
Так же я покажу как можно вернуть это самое Безопасное извлечение устройств.
А на сладенькое - небольшие махинации с , позволяющие извлекать устройства практически в один клик.

Прежде всего нужно узнать, а зачем это вообще нужно? В чем причина?
А причина кроется в кэшировании .

Кэширование - это накопление данных в некотором хранилище, с целью быстрого последующего доступа к ним по мере надобности. Процесс кэширования ускоряет многие процессы обработки данных.


Другими словами - прежде чем записать данные на флешку, ОС её помещает в КЭШ (блок оперативной памяти), а потом уже записывает через некоторое время (это ещё называют отложенная запись ). Делается это для быстроты - ведь оперативная память не зря так называется.

Так какие могут быть последствия выдергивания устройства без безопасного извлечения?
Да ничего такого, просто данные не запишутся корректно.
Бывает такое, что процесс копирования уже завершен, а Вам нужно бежать, а windows дает сообщение "Устройство не может быть остановлено из за того что занято чем то" (извините, дословно не помню что там за сообщение). И Вы всё равно выдергиваете флешку и бежите по делам.
Так вот тут как раз и получается, что данные были записаны в КЭШ, а на флешку так и не записались ещё. Хотя порой там может уже и присутствовать файл с теми же самыми свойствами и размером что и оригинал.
Но при открытии, например, картинки - получится что она откроется либо наполовину либо вообще будет отказано в доступе. Так же, если это архив, может быть сообщение о неожиданном конце поврежденного архива или SRC ошибке. Тоже из за неправильного завершения копирования.

Когда Вы выбираете "Безопасное извлечение устройства" , то система "понимает" Вас и подготавливает флешку - она завершает отложенную запись.

Но вот что тут самое главное - извлекать имеет смысл лишь тогда, когда включено кэширование файлов!

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

Итак, втыкаем флешку и идем по пути

Пуск - Панель управления - Диспетчер устройств


Находим раздел Дисковые устройства , раскрываем его и кликаем 2 раза по Вашей флешке и переходим на вкладку Политика . Здесь ставим Быстрое удаление и жмем ОК.

но на самом деле (несмотря на то, что там написано) при включенном режиме "Быстрое удаление" кэширование не отключается совсем - Windows использует так называемое "сквозное кэширование" - оно позволяет устройству работать с командами записи так, как будто кэш отсутствует.

Что делать если пропал значок со стрелочкой - безопасное извлечение устройства в трее?
Щелкаем ПКМ на Панели задач - Свойства - Область уведомлений - Настроить


Ищем в списке "Безопасное извлечение устройства" и настраиваем как Вам нужно.

Ещё вариант:
Сочетание клавиш win+r -> вставляем туда

rundll32 shell32.dll,Control_RunDLL hotplug.dll


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

Для Windows XP поможет следующий твик реестра. Скачиваете, запускаете. Не бойтесь, я плохого не даю

Ну и напоследок - интересный вариант решения значка - он появится в контекстном меню по нажатию ПКМ.

идем в Редактор реестра (win+r - Вводим regedit ) и переходим в ветку HKEY_CLASSES_ROOT\DesktopBackground\Shell\


ПКМ по Shell и создаем новый раздел с названием Safely Remove Hardware (безопасное извлечение оборудования).


Создаем в нем новый строковый параметр с названием Icon


дважды щелкаем по только что созданному параметру и в поле Значение вводим hotplug.dll,-100

Безопасное извлечение - как и для чего нужно именно безопасно извлекать USB-устройства - об этом пойдет речь в статье. Безопасное извлечение предусмотрено почти у всех ОС. В основном это нужно для того чтобы в системе не возникало конфликтов, поскольку подключенное устройство может быть всё ещё задействовано в каком-то процессе. Также, небезопасное извлечение может повлечь за собой возникновение проблем с записанными данными, поскольку при работе с дисками, Windows кэширует данные. А это значит, что данные хранятся в оперативной памяти, ожидая пока будет удобный случай для непосредственной записи. Но если в этот момент достать флешку, пока все данные не записаны реально, то система, естественно, их потеряет, а записанный файл в накопителе будет поврежден. Безопасное извлечение - может все это предотвратить, поскольку сначала проверяет, чтобы все процессы были завершены, и уже потом оповещает Вас о том, что можно извлекать накопитель.

Многие люди, в том числе и автор этой статьи никогда не пользуются функцией «». В связи с этим такие пользователи наверняка просматривая фото, перенесенное с другого РС при помощи флешки, Вы находили экземпляры в половину или треть изображения? Или архив, который был скопирован с флешки, при распаковке сообщает об СRС ошибке и т.д. Почему такое происходит?Файлы будут испорчены, поскольку производилась запись в файловую таблицу, и запись была не закончена, естественно поврежденный файл будет иметь тот же вес и характеристики что и донор, но будет поврежден. Такое иногда случается при извлечении флешки без использования функции «безопасное извлечение устройства».

Также не безопасное извлечение может повлечь за собой неисправность USB-устройств. Если кто имел удовольствие относить USB винчестер по гарантии - там первым делом спрашивают: «А как Вы уважаемый отсоединяли ваш винт?» Почесав шею… - ну как как… так…

В теории все современные переносные жесткие диски, при прекращении подачи питания на ходу, умеют парковать головки автоматически поэтому, небезопасное извлечение им как бы вредить не должно. Однако, на практике, при отключении питания на ходу, внешние винчестеры могут издавать странные звуки, что заставляет задуматься,… Что же делать?

Безопасное извлечение в один клик

Если Вы пользуетесь одной флешкой или винчестером, тогда еще можно зайти в треей, нажать…, подождать, остановить,… но при активной роботе с флэшками, переносными винчестерами, картридерами и другими устройствами так не пойдет. Нужно автоматизировать процесс извлечения. Для таких целей хорошо подойдет программа Safely Remove, (скачать сможете внизу). Очень хороший менеджер USB устройств. Программа экономит Ваше время и значительно расширяет возможности пользователя при активной работе с флэшками, переносными винчестерами, и другими USB-устройствами.

Новая версия программы включает в себя одну важную функцию - возможность отключать питание на USB портах при остановке устройств на Windows Vista и Windows 7. Как мы знаем в Windows XP, при безопасном отключении устройства, операционная система отключает также и питание на этот порт, и светодиод флэшки гаснет, а внешний диск прекращает вращение. А при остановке устройств на ОС Windows Vista и Win 7 - устройства продолжают работать. То есть флэшка продолжает светиться, а жесткий диск вращаться. Многие считают, что функция «Безопасное извлечение» попросту не работает. Но это не так, она работает, но по неизвестным причинам Microsoft изменил это поведение и начиная с Windows Vista, отключение питание на USB портах не происходит. В программе предусмотрена функция отключения питания при безопасном извлечении. Нужно всего лишь отметить этот пункт в настройках программы.

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

Эта программа удобная и надежная замена стандартного «Безопасного Извлечения Устройств». Она облегчает жизнь и экономит время тем, у кого есть несколько USB, SATA, Firewire устройств, и тем, кто их активно использует. Программа обеспечивает Безопасное извлечение в один клик! Все что нужно - просто подвести курсор мыши к иконке в системном трее. Далее появится удобное и красивое меню остановки устройств! Один клик по устройству и оно безопасно извлечено!

Основные возможности:

Командная строка для безопасного извлечения

Безопасное извлечение в один клик или горячей клавишей

Автозапуск программ при подключенииотключении

Быстрый поиск устройства для извлечения

Удобное меню с картинками устройств

Правильные имена устройств и возможность их переименования

Извлечение по отдельности карт кард-ридера

Показывает программы, мешающие извлечь устройство

Возможность скрыть ненужные устройства

Позволяет вернуть извлеченное устройство обратно!

Безопасное извлечение в картинках

Скачиваем и устанавливаем Safely Remove. Программа очень простая в использовании!

После установки в трее появиться маленькая иконка программы.

Сразу же после присоединения USB устройства будет появляться окно оповещения, в котором будет видно название устройства.

Наведя курсор на маленькую иконку в трее и нажав всего один клик Вы сможете сделать безопасное извлечение устройства.

Если нажать дважды на иконку, откроется сама программа и можно будет увидеть все USB устройства. А сейчас давайте назначим горячие клавиши для нашей флешки. Нажимаем кнопку «Свойства устройства»

В открывшемся окне можете много чего еще настроить, но я для примера покажу только, как назначить горячие клавиши. Ставим галочку и выбираем сочетание. Вот и все. Можете и другим функциям программы назначить горячие клавиши, для этого нужно нажать ссылку «Изменить».

Здесь внимательно все изучив Вы сможете поставить нужные сочетания.

Но вот на чем хотелось больше остановиться - это прекрасная функция автозапуска программ. Здесь Вы сможете назначить запуск программ при подключении или извлечении устройства. Такой программой может быть, например Total Commander, который откроется сразу же после присоединения флешки. Или, например winamp - очень удобно, не правда ли?

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

Почему нет значка извлечь флешку? windows 7 нет значка безопасное извлечение устройств: usb, мобильного телефона

В один прекрасный момент (скорее всего после манипуляций и установки Касперского) неожиданно пропала “зеленая стрелка” в трее – безопасное извлечение устройств . До этого, вставляя usb флешку в компьютер, значок появлялся, то теперь нет и usb safely remove не происходит. Хотя в списке доступных дисков (сменных устройств) присутствует. И все манипуляции с файлами на флешке производятся.

1. Исправить такой ключ в реестре


“Services”=dword:0000001b
“HotPlugFlags”=dword:00000002

2. Еще вариант можно попробовать так (для Vista, для XP - похоже)

Пуск -> Настройка -> Панель задач и меню "Пуск" -> или

Правой кнопкой мышки на панели задач -> Свойства -> Вкладка "Область уведомлений" -> Значки | Настроить

Находим "Безопасное извлечение устройств" и в "Поведении" выбираем "Всегда отображать".

3. А чтобы не мучатся с настройками нужно

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

rundll32 shell32.dll,Control_RunDLL hotplug.dll

и закрыть нужное вам устройство. Неудобно. Да. Но зато работает.

к меню

Как убрать иконку в систрее?

Пропал и не появляется, не отображается значок usb флешки (иконка в трее) безопасное извлечение устройств

Часто пользователи жалуются на то, что стандартная иконка Безопасное Извлечение Устройства не отображается в трее , хотя к компьютеру подключены hotplug устройства. Но удивительная программа USB Safely Remove полностью лишена данной проблемы. Она полностью заменяет родную иконку "Безопасное извлечение устройств" (Safely Remove Hardware) и взамен отображает свою.

По умолчанию, иконка USB Safely Remove всегда присутствует в трее, что дает быстрый доступ к функциональности программы и делает работу с USB более понятной и предсказуемой.

Однако, вы можете изменить это поведение и иконка будет исчезать тогда, когда нет ни одного подключенного устройства. Для этого включите флажок "Hide icon when there are no devices to be stopped" в секции настроек "Look And Feel".

к меню

Что это за программа такая, USB Safely Remove?

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

Программа выполняет...

  • удобное безопасное извлечение устройств , избавленное от недостатков встроенного в Windows;
  • показывает какие программы мешают извлечь устройство;
  • убирает диски пустых слотов кард-ридеров;
  • умеет возвращать обратно отключенные устройства;
  • и содержит массу других функций для комфортной и приятной работы с hot-plug устройствами (USB, SATA, FireWire) .

Устройство не может быть остановлено прямо сейчас. Почему?

Часто возникает такая ситуация, что Windows не позволяет извлечь устройство? USB Safely Remove , в отличие от Windows в таком случае показывает программы, которые мешают отключить устройство, и позволяет либо закрыть сами эти программы, либо закрыть файлы, которые они открыли на устройстве.

Скачать эту удивительную программу можно по адресу:

http://safelyremove.com/ru/

Примечание : Помните, что применяя скаченные бесплатно из сети программы, Вы принимаете на себя все риски.


к меню

Как настроить безопасное извлечение флешки в Total Commander 7.50 Final

Если пропала стандартная иконка значек в трее "Безопасное извлечение устройства" (флешки USB) , то в Тотал Коммандере в версии 7.5 есть чудесная команда "Извлечь". Я ею и пользуюсь в Виндоуз 7.0.

Работает она так. Когда вы желаете извлечь флешку кард-ридер без потери данных , то вы выбираете свое устройство с флешкой. Правой клавишей нажимаете на ваше устройство в списке дисководов Total Commander 7.50. Там выбираете команду "Извлечь". Нажимаете. Устройство закрывается. В Windows 7 выдается сообщение: "Устройство USB можно безопасно извлечь ". Поэтому его можно безопасно извлекать.

Примечание : В других версиях Windows такое сообщение может не выдаваться.