Есть ли способ узнать, какой процесс записан в файл?

1381
DanielFetchinson

Файл /sys/devices/platform/samsung/leds/samsung::kbd_backlight/brightnessзаписывается каким-либо процессом каждый раз, когда экран просыпается от пустоты.

Есть ли способ узнать, какой процесс пишет в этот файл?

2

1 ответ на вопрос

5
Horn OK Please

Ну, вначале я думал использовать inotifyа-ля inotify-tools, но кажется, что это невозможно, потому что «API inotify не предоставляет информации о пользователе или процессе, который вызвал событие inotify». ( источник ) Иногда полезно знать, что тоже не сработает, так что вот оно.

fanotifyэто отдельная конкурирующая среда уведомлений для Linux, которая является более новой и более надежной, и API действительно содержит информацию об идентификаторе процесса (pid) программы, которая выполнила событие.

Я не уверен, есть ли в Fedora 17 fanotifyвстроенная команда (или похожая). Если нет, вы можете посмотреть пример программы Fanotify здесь . Он делает распечатать ID процесса (PID) процесса, который сделал это событие, так что вы можете скомпилировать эту программу (если она по - прежнему совместим с последними fanotify ABI на Fedora 17) и запустить его, и он должен работать. Смотрите строку 231 этого файла.

Отлично, большое спасибо, fanotify работает! Оказывается, upowerd портит яркость подсветки клавиатуры. DanielFetchinson 12 лет назад 0

Похожие вопросы