Как узнать, какой процесс для определенного пользователя обращается к файлам в общем ресурсе

Наша система управления бизнесом в течение последних нескольких недель имела некоторые сбои. Ему было отказано в доступе к некоторым файлам, которые он использует. Покопавшись в "Управлении открытыми файлами", я смог определить, какие пользователи обращаются к рассматриваемым файлам. Отсюда я использовал как Resource Manager, так и Process Explorer для поиска подстроки каталога, в котором находятся эти файлы. Я вижу процессы, которые, как предполагается, обращаются к этим каталогам, и файлы, которые предназначены для доступа. Проблема в том, что поиск дескрипторов никогда не показывает проблемных файлов, поэтому я не могу определить процесс, который их блокирует. Часть проблемы заключается в том, что к файлам обращаются периодически, а не постоянно. Чтобы убедиться, что моя попытка отследить нарушающий процесс, я выполнил следующие действия:

  1. Обновляйте Управление открытыми файлами до тех пор, пока указанные файлы не будут открыты пользователем.
  2. Ищите подстроку каталога в ручках.
  3. Снова обновите "Управление открытыми файлами", чтобы убедиться, что файлы по-прежнему доступны после завершения поиска по дескриптору.

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

У кого-нибудь есть какие-либо идеи о том, как я могу определить, какой процесс обращается к этим файлам? Я точно знаю пользователей, которые к ним обращаются, и я выполнял ручные поиски с их рабочих станций удаленно.

[EDIT1] Сервер работает под управлением Windows Server Standard, а все клиентские машины работают под управлением Windows 7 Professional. Файлы являются оценочными данными, экспортированными CCC One (это компания по ремонту после столкновений), и программа, которой запрещен доступ, - это NEX (Наша система управления бизнесом) от Nexsyis. Что касается протокола, я не совсем уверен, но я бы предположил, что это SMB.

1 ответ

Я предполагаю, что вы говорите о Windows Server. Если это так, я предлагаю взглянуть на следующие инструменты:

  • Монитор ресурсов: Start > Run > resmon, "Диск" содержит список процессов, открытых файлов и операций чтения / записи.
  • Computer Management > Shared Folders > Shares (compmgmt.msc), чтобы увидеть открытые сетевые ресурсы.
  • net session команда
  • Sysinternals Process Explorer - Вы можете искать handles с помощью Ctrl + F
  • Sysinternals Process Monitor - вы можете настроить "длительный" захват, чтобы соответствовать пути файла в вопросе и оставить его включенным на длительный период, пока вы пытаетесь воспроизвести проблему.

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

Другие вопросы по тегам