Посмотреть к каким файлам обращается программа

Зачастую пользователям и системным администратором необходимо отслеживать, к каким файлам обращается приложение. В Linux-е уже есть все средства для этого, и тем удивительнее постоянно слышать на форумах — есть ли аналог Sysinternal Filemon. В данной статье я опишу использование утилиты strace, и рассмотрю ряд моментов, которые ускользают от некоторых пользователей, полагающих, что приложениям надо ограничивать права даже на чтение, например, ограничить доступ mplayer-а только к показываемому фильму.

strace — это трассировщик системных вызовов и сигналов. Для работы с файлами используется системный вызов «open», и соответственно, необходимо отслеживать только его. Пример команды:
$ strace -xf -eopen -o /path/to/log /path/to/program

Здесь мы указываем отслеживать все дочерние процессы, заменять непечатаемые символы на шестнадцатеричное представление и сохранять лог вызовов в файл /path/to/log. Потом полученный лог можно обработать соответствующими инструментами. Далее будут приведены примеры, как можно вычленить из лога всю нужную информацию.

КАКИМ ОБРАЗОМ ВЫ ХОТИТЕ ОТКРЫТЬ ЭТОТ ФАЙЛ — РЕШЕНИЕ | СЛЕТЕЛИ АССОЦИАЦИИ ФАЙЛОВ | EXE, PNG И ДР

Мониторинг текстового редактора nano

Мониторинг видеопроигрывателя mplayer

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

$ strace -xf -eopen -o out.log mplayer test.mp4
$ sed -n ‘s/.*open((.*))s*=.*/1/p’ out.log | grep -v O_RDONLY | sort

«/dev/3dfx», O_RDWR
«/dev/fb0», O_RDWR
«/dev/mga_vid», O_RDWR
«/dev/mga_vid», O_RDWR
«/dev/shm/pulse-shm-3056117003», O_RDWR|O_CREAT|O_EXCL|O_NOFOLLOW|O_CLOEXEC, 0400
«/home/nuald/.mplayer/config», O_WRONLY|O_CREAT|O_EXCL, 0666
«/home/nuald/.pulse-cookie», O_RDWR|O_CREAT|O_NOCTTY, 0600

Здесь мы командой grep ограничили вывод, и не включали файлы, которые были открыты с флагом O_RDONLY (только на чтение). Как видите, и здесь не все так гладко — mplayer-у приходится писать в другие файлы, и возможно ограничение доступа полностью его сломает, и он не сможет воспроизводить видео. Так что приведенную выше идею об ограничении доступа не так просто будет реализовать, и точно не реализовать в ее изначальном смысле.

Заключение

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

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

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

Process Monitor

Конечно, не исключено, что эта система заражена, и требуется тщательная проверка всевозможными антивирусными средствами. Но далеко не всегда проблема связана с вредоносным кодом, и тогда понадобится другой подход. Проще всего вычислить виновника появления таких файлов с помощью утилиты Process Monitor. Из видео за четыре минуты вы узнаете, как это сделать.

Отслеживание активности

При запуске утилита отслеживает несколько типов системной активности:

  • реестр
  • файловую систему
  • сеть
  • процессы и потоки

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

Process Monitor

Кроме того, убедитесь, что утилита отслеживает активность. Если у вас перечеркнута кнопка, которая на рисунке обведена красным, нажмите CTRL+E.

На рисунке выше активность отслеживается, причем только в файловой системе.

Основной фильтр

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

Process Monitor

На рисунке выше показан фильтр, который будет отслеживать создание и изменение всех файлов, в путях к которым содержится tmp _out. Давайте разберем фильтр подробнее слева направо:

  • Path. Путь в файловой системе. Также можно указывать разделы реестра, когда отслеживается активность в нем.
  • contains. Условие, по которому определяется поиск ключевого слова. В переводе с английского это слово означает «содержит». В зависимости от задачи можно конкретизировать условие, выбрав вариант begins with (начинается с) или ends with (заканчивается на).
  • tmp _out. Ключевое слово, которое в данном случае должно содержаться в пути. Имя файла и его расширение являются частью полного пути к файлу.
  • Include. Включение заданного условия в список отслеживаемых.
Читайте также:
Панель инструментов элемент графического дизайна программ как называется

Не забудьте нажать кнопку Add, чтобы добавить фильтр в список. Впрочем, если вы забудете, Process Monitor напомнит об этом, прежде чем закрыть окно фильтров.

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

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

Проверить работу фильтра очень просто. Достаточно создать в текстовом редакторе файл с искомым именем или в наблюдаемой папке, и Process Monitor моментально отреагирует на это.

Дополнительные фильтры

Запись и открытие лога

Учтите, что при длительном отслеживании размер лога может измеряться гигабайтами. По умолчанию Process Monitor записывает лог в файл подкачки. Если у вас маленький системный раздел, имеет смысл сохранять лог в файл на другом разделе диска.

Для сохранения лога в файл нажмите сочетание клавиш CTRL+B и укажите имя и желаемое расположение файла.

Process Monitor

Изменения вступают в силу после перезапуска захвата активности. Теперь можно смело оставить Process Monitor включенным на длительное время, не опасаясь за лимит дискового пространства.

Остановить отслеживание активности можно сочетанием клавиш CTRL+E.

Впоследствии вы всегда сможете загрузить в утилиту лог из сохраненного файла. Закройте Process Monitor и дважды щелкните файл лога с расширением PML. Содержимое лога отобразится в окне Process Explorer.

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

О видео

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

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

Более подробный рассказ о Process Monitor и другие примеры его практического использования вы можете посмотреть в видео моего коллеги Василия Гусева, если у вас есть свободные 40 минут 🙂

Вадим — владелец этого блога, и почти все записи здесь вышли из-под его пера. Подробности о блоге и авторе здесь. Поддержать автора вы можете тут.

Вас также может заинтересовать:

Подпишитесь на канал и читайте интересные записи чаще! Есть вопросы? Задайте их в чате.

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

Вадим.
Может стоит упомянуть еще и Filemon он тоже позволит решить задачу.

sergm, не вижу смысла, т.к. Process Monitor объединяет функционал Regmon и Filemon. Эти две утилиты больше не распространяются автором.

Годится! Согласны? +4

PS надо будет обновиться.

Ваша оценка: 0 Ваша оценка: 0

sergm, понятно, что у каждого свой привычный набор утилит (и о моем я планирую рассказать в скором времени 🙂 Но Process Monitor уже достаточно давно заменил две отдельные утилиты и расширил их функционал. Так что да, обновляться надо 🙂

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

Ваша оценка: 0 Ваша оценка: +1

Morpheus: Это может быть полезно, если сделано со вкусом. Тебе удаётся делать интересно. Спасибо! »

Morpheus: А почему нет ссылки «цитировать» для самого материала, как для комментов? »

Ваша оценка: 0

Спасибо Вадим! Очень интересно, но я с таким не сталкивался пока.
Видео суперски, кратко и ясно, такое редкость. Но и описание с нормальным количеством скринов, даже лучше.
Спасибо за Ваш блог. Читаю с удовольствием :Beer:

А я Вадим сразу вам и написал- очень будет полезно если будут хоть коротелькие ролики!! Как писал выше- нажал на паузу и разобрался)..Да и мне как то зрительно более понятно(имхо).

Ваша оценка: 0 Ваша оценка: 0

Хорошая статья и самое главное (я преподаватель информатики) с хорошими примерами.

Вадим понятно! но в любом случае будем надеяться хоть на редкие небольшие ролики:).

Ваша оценка: 0 Ваша оценка: 0 Ваша оценка: 0

Yuri, диагностику нужно проводить в два этапа:
1. Выявление папок, в которых записываются файлы.
2. Определение приложения, записывающего их.

Для первого этапа используйте специализированные утилиты. См. номер 5 в списке 10 лучших бесплатных программ для быстрой диагностики Windows. В комментариях упоминались и другие программы этого типа.

Читайте также:
Не включается Айфон программа для восстановления

Просто спасибо. Такой труд дорогого стоит.

Дмитрий, спасибо на добром слове.

Разработчики из Windows Sysinternals выпустили новую версию утилиты Process Monitor 3.0, популярной утилиты для мониторинга системы. Этот полезный инструмент предоставит подробную и актуальную информацию об активности всех приложений, выполняемых на вашем ПК. В том числе пользователь сможет узнать, к каким файлам обращаются программы, с какими ключами реестра взаимодействуют, какие процессы запускаются от их лица и многое другое. Предлагаемая версия не может похвастаться большим количеством новых функций, однако некоторые предложенные изменения наверняка вызовут интерес у пользователей.

К примеру, с помощью предлагаемого инструмента пользователь сможет выявлять причины утечек системных ресурсов, происходящих в его отсутствие. Для решения указанной задачи запустите Process Monitor, выберите опцию «Capture Events» в меню «File» и изучите имена процессов в левой части экрана.

На этой панели можно найти информацию о файлах, открываемых и закрываемых различными процессами, и узнать к каким ключам реестра обращается интересующая вас программа. Эта информация поможет обнаружить нежелательные программы, например приложения, работающие в фоновом режиме и удалить их с целью высвобождения ресурсов системы. Не менее полезной утилита окажется при решении проблем в работе компьютера. Допустим, вы пытаетесь запустить программу под названием app.exe, однако приложение неожиданно завершает свою работу сразу же после запуска. Благодаря Process Monitor вы сможете идентифицировать отсутствующие файлы или неправильно настроенные параметры приложения.

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

Вниманию пользователей версии Process Monitor 3.0 предлагается поддержка закладок, предназначенных для выделения наиболее важных данных (опция «Toggle Bookmark» в контекстном меню). Новая функция может использоваться даже со старыми отчетами. Выбранные пользователем строки для лучшей видимости выделяются полужирным шрифтом. А переход между закладками осуществляется одним нажатием на кнопку. Благодаря этому нововведению, владелец компьютера сможет быстро и без лишних усилий обнаружить всю интересующую его информацию.

В версии Process Monitor 3.0 был усовершенствован механизм записи переменных окружения, в особенности в момент запуска процесса. Выберите приложение и выполните операцию «Process Start», после чего вы увидите папку, из которой запускается конкретная программа и полную копию его текущего окружения. Разработчики также сообщают, что выпущенная версия утилиты может похвастаться более тесной совместимостью с новой операционной системой Windows 8.

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

Обычно в окне с ошибкой прямо указывается, что за процесс препятствует дальнейшим действиям с объектом, но бывает и так, что вместо этого сообщается, что файл или папка открыты в другой программе. Это понятно, но вот в какой именно?

Ошибка

Так вот, определить её очень просто. Во всех популярных версиях Windows (начиная с 7) есть такая встроенная утилита как «Монитор ресурсов», предназначающаяся для контроля использования программных и аппаратных ресурсов. В её поле зрения попадают все процессы, в том числе и зависшие. Она то как раз и подскажет, что именно держит файл или папку.

Нажмите сочетание клавиш Win + R и выполните в открывшемся окошке команду resmon .

Программа выполнить

Откроется окно монитора ресурсов. Переключитесь в нём на вкладку «ЦП» и введите в поле «Поиск дескрипторов» название объекта, при удалении, перемещении или переименовании которого возникла ошибка. Результаты отобразятся тут же, чуть ниже. В нашем примере удалению папки «Всякая всячина» препятствовал архиватор WinRAR , но в самом окне с описанием ошибки об этом ничего не говорилось.

Монитор ресурсов

Вот так всё просто. Кстати, если удерживающий процесс не является критическим, его можно завершить прямо из окна монитора ресурсов.

Завершение процесса

После этого проблемный файл, папка или другой объект легко смогут быть удалены обычным способом.

Источник: telefony-gid.ru

10 примеров команд lsof в Linux

10 примеров команд lsof в Linux

Как открыть и прочитать дамп памяти в ОС Windows 10, какой лучше поставить

Как открыть и прочитать дамп памяти в ОС Windows 10, какой лучше поставить

Информацию о проблемах, возникших при работе с ОС Windows, помогают узнать сведения на экране или файлы в памяти – дампы. В них хранятся данные о текущем состоянии процессора, ядра и других компонентов. Сохранение этих сведений нередко отключено в Виндовс 10, поэтому пользователи самостоятельно настраивают их автоматическое появление. Разберемся, для каких целей необходим дамп памяти в ОС Windows 10, какие типы бывают, как установить.

Для чего он нужен

Данные «оперативки» и материалы, имеющие отношение к критической ошибке, попадают в файл. При запуске ОС появляется аварийный дамп, где сохраняется запись отладочной информации. Сбой блокирует функционирование ОС, поэтому dump – единственный способ получения данных о ней.

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

Читайте также:
Программа которая решает корни

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

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

Как включить функцию дамп памяти на Windows 10 и настроить ее

  • Тапнуть кнопкой мышки по значку «Пуск».
  • В открывшемся окошке выбрать раздел «Система».

screenshot_3

  • Далее выбрать раздел «Дополнительные параметры».

screenshot_4

  • В открывшемся окне выбрать «Параметры».

screenshot_5

  • Настроить аварийный дамп.

screenshot_6

Желательно ставить галочки напротив значений, связанных с созданием журнала, сохранением информации о системе. Данные при этом могут достигать нескольких сотен гигабайт. Поэтому целесообразно отметить маркером «Заменить существующий файл дампа».

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

Типы аварийных дампов памяти

В Виндовс предусмотрены различные типы .dmp. К основным видам относятся:

  • Мини-дамп памяти – файл с минимумом данных о BSoD, процессоре, драйверах, которые работали во время появления критической ошибки. Весит 256 Кб, для извлечения информации требуется установка дополнительной утилиты, например, Blue Screen View. Minidump преимущественно пользуются непрофессионалы.

screenshot_7

  • Дамп памяти ядра – тоже имеет небольшие размеры, но содержит более подробную информацию, чем m В нем сохраняется информация о памяти ядра, процессора или всей ОС.
  • Полный дамп памяти – копирует оперативку системы. Его размер соответствует объему оперативки, это одновременно является его плюсом и, в то же время, существенным минусом. Его размеры могут оказаться огромными, требуя невероятных размеров памяти устройства. Он недоступен на устройствах с оперативной системой 32 бита.
  • Автоматический дамп памяти – новый вид, который разработчики впервые ввели в Виндовс 8. Система самостоятельно решает, какой dump записывать, учитывая особенности сбоя, частоту его проявления.
  • Активный дамп памяти – внедрен в Виндовс 10, отсортировывает компоненты, неспособные распознать причину ошибки. Полезен для серверов и других виртуальных сервисов.

screenshot_8

Установка WinDbg в Windows

Инструмент от разработчиков Microsoft, используется для загрузки, анализа файлов .dmp, созданных во время ошибки или BSoD. Для скачивания пакета нужно перейти по ссылке https://developer.microsoft.com/ru-ru/windows/downloads/windows-10-sdk/. Затем найти «Скачать отдельный пакет SDK». Далее пользователю потребуется открыть скачанную утилиту, инсталлировать ее.

screenshot_9

После завершения процесса установки Windbg нужно ассоциировать с файлами .dmp. Для этого выполнить следующее:

  • Вызвать строку поиска.
  • Скопировать путь к нему и вставить в строку.
  • Нажать «Ok».

screenshot_10

Далее потребуется настроить путь к символам через «Пуск».

  • Найти «Все приложения», затем «Windows Kits» и «WinDbg».
  • В появившемся окне выбрать «File», в разделе «Symbol File Path».

screenshot_11

  • Ввести путь: SRV*C:SymCache*http://msdl.microsoft.com/download/symbols и нажать «Ok».
  • На завершающем этапе открыть «File», затем перейти в «Save Workspace».
  • Закрыть WinDbg.

screenshot_12

Просмотр и анализ файла мини-дампа

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

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

screenshot_13

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

Выполнение анализа и устранение ошибки:

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

screenshot_14

  • Тапнуть по имени мини-дампа, запустить поиск решения в Google, посмотреть варианты устранения проблемы.

screenshot_15

В таких случаях среди подсвеченных проблемных драйверов находится истинный источник появления синего «экрана смерти». Для более точного анализа можно применить несколько вариантов анализа.

screenshot_16

Как удалить этот файл

Если пользователю понадобилось удалить minidump, то выполняет он эту процедуру ручным способом. А именно: перейти по пути месторасположения файлов на диске: C:WindowsMinidump. Для удаления элементов minidump в каталоге Windows нужно воспользоваться встроенным инструментом системы «Очистка диска»:

  • Вызвать командную строку.
  • Ввести команду Cleanmpg.

screenshot_17

  • Тапнуть по кнопке очищения системных файлов.
  • Найти в списке объекты, касающиеся мини-дампа, поставить галочки.
  • Начнется удаление, которое потребует некоторое время.

screenshot_18

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

Дамп памяти в ОС Windows 10 – инструмент, помогающий диагностировать и устранять причины сбоев и появление BSoD. Если автоматическое создание и сохранение дампов памяти отключено, рекомендуется активировать их. Чаще причиной отключения файлов становятся утилиты для очистки ПК и оптимизации работы системы.

Источник: it-tehnik.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru