Визначте, які файли отримують доступ до процесу


9

Як я можу дізнатись, які файли мають певний процес доступу?

Я використовую Ubuntu 9.04.

Відповіді:


11

lsof перелічить відкриті файли та пов’язані ідентифікатори процесу. У ньому перераховано все, якщо не вказано жодних варіантів.

Існує можливість, -pщоб перелічити відкриті файли для одного процесу. Отже, для процесу з PID 6714 у цьому списку будуть перелічені файли, відкриті цим процесом:

    lsof -p 6714

Для переліку лише звичайних файлів grep можна використовувати для фільтрації виводу lsof:

    lsof -p 6714 | grep REG

Якщо це потрібно бути більш надійним, ніж з грепом, тоді -Fваріант можна використовувати, але тоді він стає складнішим. Зі сторінки lsof man :

Коли задано параметр -F, lsof видає вихід, який підходить для обробки іншою програмою - наприклад, скрипт awk або Perl або програма C.

Це залежить від ваших вимог.


1
Мені подобається додавати '-b' до lsof, це піде трохи швидше. Крім того, я додаю 2> / dev / null перед тим, як труба буде grep.
kbyrd
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.