RSS

Какая программа удерживает диск/флешку от безопасного извлечения?

22 Авг

Часто получается, что мы жмем Безопасное Извлечение диска или флешки, а Windows скупо сообщает:

Проблема при извлечении "Запоминающее устройство для USB" Устройство еще используется. Завершите выполнение всех программ и закройте все окна, которые могут использовать это устройство, а затем повторите попытку.

Проблема при извлечении "Запоминающее устройство для USB"
Устройство еще используется. Завершите выполнение всех программ и закройте все окна, которые могут использовать это устройство, а затем повторите попытку.

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

Есть для поиска утилита от Марка Руссиновича Handle из пакета Windows Sysinternals. А для выяснения порядкового номера диска можно использовать DiskExt от туда же.

Для выполнения поиска нужно запустить консоль (cmd.exe) с правами Администратора.

Выясняем номер диска по букве раздела:

C:\SysinternalsSuite> diskext.exe h

Disk Extent Dumper v1.1
Copyright (C) 2001-2007 Mark Russinovich
Sysinternals - www.sysinternals.com

Volume: H:
   Mounted at: h:\
   Extent [1]:
       Disk:   2
       Offset: 135266304
       Length: 1099511627776

Диск у меня идет под номером 2. А теперь можно найти виновника:

C:\SysinternalsSuite> handle.exe h:

Handle v3.51
Copyright (C) 1997-2013 Mark Russinovich
Sysinternals - www.sysinternals.com

System             pid: 4      type: File           EEC: H:\$Extend\$RmMetadata\$TxfLog\$TxfLogContainer00000000000000000002
System             pid: 4      type: File           FA4: H:\$Extend\$RmMetadata\$TxfLog\$TxfLog.blf
System             pid: 4      type: File          10B8: H:\$Extend\$RmMetadata\$TxfLog\$TxfLogContainer00000000000000000001
System             pid: 4      type: File          10DC: H:\$Extend\$RmMetadata\$Txf
HDTunePro.exe      pid: 4776   type: File           2F4: H:\TESTFILE.TMP

Видим, что HDTunePro.exe записывает на диск. После закрытия HDTunePro Винда извлечёт диск без претензий 🙂

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

C:\SysinternalsSuite> handle.exe -a disk2

Handle v3.51
Copyright (C) 1997-2013 Mark Russinovich
Sysinternals - www.sysinternals.com

System             pid: 4      type: Directory      538: \Device\Harddisk2
HDTunePro.exe      pid: 4776   type: File           2BC: \Device\Harddisk2\DR3

P.S.
У меня не получилось таким способом определить, что блокирует TrueCrypt.

UPD по наводки от Smearg:
Через Process Explorer от Марка Руссиновича тоже можно искать вредителя:

Process Explorer search

Process Explorer search


Process Explorer search

Process Explorer search


Поиск с правами обычного пользователя может не дать результата, поэтому нужно
запустить Process Explorer с правами Администратора:
Process Explorer menu File

Process Explorer menu File

 
8 комментариев

Опубликовал на 22 августа, 2013 в Windows

 

Метки: , , , , , , , , , , , , ,

8 responses to “Какая программа удерживает диск/флешку от безопасного извлечения?

  1. Smearg

    29 августа, 2013 at 9:50 дп

    А можно просто посмотреть по поиску в Process Explorer от всё того же Марка Русиновича: в поле поиска вбить путь (в Вашем случае H:\) и Procces Explorer покажет какой процесс юзает флешку 🙂

     
    • keepun

      29 августа, 2013 at 2:37 пп

      Хм… действительно можно.
      Выдача результата поиска в Procces Explorer как без ключа -a у handle.exe, но при
      File=>"Show Details for All Processes" поиск становится более полным.

       
  2. Damert

    8 декабря, 2014 at 5:31 пп

    Добрый день!
    Увы, мне нічего не помогло! 😦
    ОС: WindowsXP3SP
    Флешка смонтирована на логический диск E: .

    !!! При попытке безопасного извлечения флешки — получаю сообщение:

    [ устройство «UFD 3.0 Silicon-Power 16G USB Device» не может быть остановлено, поскольку одна из программ использует его ]

    Мои действия:

    1. Установил UnLocker 1.9.2
    В Total Commander кликаю правой кнопкой мыши на значке диска E: , в меню кликаю на Unlocker
    Результат:
    —————
    Unlocker сообщает: Не найдет блокирующий дескриптор. …

    2. Стартую команду: diskext E
    Результат:
    ———-
    Disk Extent Dumper v1.1
    Copyright (C) 2001-2007 Mark Russinovich
    Sysinternals — http://www.sysinternals.com

    Volume: %:
    Mounted at: E:\
    Error getting extents
    ═х єфрхЄё  эрщЄш єърчрээ√щ Їрщы.

    4. Стартую команду: handle.exe E:
    Результат:
    ———
    Handle v4.0
    Copyright (C) 1997-2014 Mark Russinovich
    Sysinternals — http://www.sysinternals.com

    No matching handles found.

    5. Стартую без параметров: handle.exe
    Результат:
    —————
    в листинге нет ни одной строки с подстрокой `E:\`

    6.
    1) Стартую утилиту Process Explorer v16.04
    2) В меню стартую
    3) В окошке [Handle or DLL substring:] задаю: E:\
    Результат поиска: 0 строк.

    =========================================
    Вопрос:
    Какие могут быть ещё идеи, _Как выяснить ЧТО держит флешку_?

     
    • Keepun

      8 декабря, 2014 at 6:45 пп

      Если это всё пробовалось без прав Админа, то может поэтому данных нет.
      Можно еще попробовать искать по E: без \

       
  3. Павел

    12 февраля, 2016 at 4:24 пп

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

     
  4. ImgBurn

    8 августа, 2016 at 12:15 пп

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

     
  5. Oleg

    4 апреля, 2020 at 1:47 дп

    Возникла вот эта проблема на Windows 7×64, флешка заблокирована, и система не дает ее вытащить, Unlocker под моей x64 не работает. Диск Е или disk1.
    Handle e: даёт «No matching handles found».
    Handle -a disk1 дает:
    System pid: 4 type: Directory 178: \Device\Harddisk1
    Как я понимаю, «Система» — это программа, которую нельзя выгрузить, т.е. безопасно можно флешку вытащить только после выключения компьютера. Тем не менее, после перезагрузки ситуация повторяется. В свойствах флешки в диспетчере устройств у меня стоит политика «Быстрое удаление», т.е. безопасное выключение не нужно. Но флешка в NTFS, а при этом винда все равно кеширует запись в системную область диска. Как решить эту проблему, на знаю, а вытаскивать так не хочу, потому что уже несколько раз получал ошибки диска с потерями целых каталогов.

     
  6. Escort_Skige

    3 июня, 2020 at 8:17 пп

    Хочешь снять девочку? тогда тебе срочно к нам тут проститутки москвы
    лучшие девочки!

     

Оставьте комментарий