Безопасное извлечение устройства (англ. Safely Remove Hardware) — компонент операционной системы, предназначенный для подготовки подключенных USB-устройств к отсоединению.
Реализация
Windows
Компонент представляет собой файл hotplug.dll, расположенный в папке %SystemRoot%system32. Этот файл по структуре аналогичен *.cpl-файлам, но из-за расширения *.dll не отображается в Панели управления. Его ручной запуск возможен командой «control.exe hotplug.dll» или «rundll32 shell32.dll,Control_RunDLL hotplug.dll».
Поддерживаемые устройства
PTP- и MTP-устройства не поддерживают Безопасное извлечение. Оно не требуется для данных типов устройств.
Работа компонента в различных версиях Windows
В Windows XP при безопасном извлечении устройства его питание отключается. Однако в Windows Vista это поведение было изменено и питание устройства не отключается. Это поведение можно изменить с помощью правки реестра. Программа USB Safely Remove, начиная с версии 4.4, также позволяет извлекать устройства с отключением питания.
Кроме того, в Windows Vista в контекстном меню съёмных дисков присутствует пункт «Безопасно извлечь» («Safely Remove»). В Windows 7 соответствующая функциональность реализована в пункте «Извлечь».
Проблемы
Apple iPod
При использовании данной функции для отсоединения Apple iPod на компьютере с ОС Windows Vista данные на iPod могут быть повреждены.
Невозможность извлечения устройства
В некоторых случаях извлечение устройства оказывается невозможным. Причиной этого может быть программа, использующая устройство или заражение компьютера Autorun-вирусом. Следует учитывать, что программа, например, Microsoft Word, в которой открывался файл, расположенный на устройстве, может продолжать «удерживать» устройство даже после закрытия файла. Наиболее часто это вызвано тем, что текущий каталог в диалогах сохранения и открытия файла указывает на устройство. В таком случае следует закрыть программу целиком или можно попробовать открывать файл не на устройстве.
Программы, реализующие аналогичную функциональность
- USB Safely Remove
Аналоги функции в других операционных системах
В Unix-подобных системах устройства монтируются тем или иным способом. Особо продвинутые графические оболочки делают это автоматически. В общем случае, процессом монтирования управляет суперпользователь root. Подключение и отключение устройства осуществляется при помощи команд mount и umount соответственно. Следует понимать, что подключается не само устройство, а тома на нём. Это утверждение набирает силу в случае, когда на устройстве несколько разделов (например, переносной жёсткий диск). Устройство также может быть заблокировано открытыми файлами на нём. В этом случае поможет утилита lsof (lsof | grep /mnt/disk). Различные графические оболочки отображают процесс монтирования по-разному.