Überwachen Sie / sys-Partition auf Änderungen

1846
Abhijeet Rastogi

Inotify funktioniert nicht auf / sys- und / proc-Dateisystemen. Wie kann ich also eine / sys-Partitionsdatei ohne Abfrage überwachen?

2
Zugehörige Antwort: https://unix.stackexchange.com/a/390191/249512 Nelson vor 7 Jahren 0

1 Antwort auf die Frage

2
Mikel

Was für eine Umfrage? Meinen Sie eine Schlaf / Check-Schleife? Oder meinen Sie den pollSystemaufruf wie in dokumentiert man 2 poll?

Laut einer 2009 E-Mail des Kernel-Entwicklers Greg KH ist die beste Option die Verwendung select. Siehe man 2 selectfür weitere Einzelheiten. Beachten Sie, dass der pollSystemaufruf im Wesentlichen derselbe ist.

Auf der anderen Seite deuten die aktuellen inotify-FAQ an, dass es funktionieren könnte.

Warum probieren Sie es nicht und finden Sie es heraus?

Ich denke, wir können sicher davon ausgehen, dass das OP von einer Shell aus funktionierte und er nicht über C-Funktionen sprach. Im Moment funktioniert es immer noch nicht in / sys-Dateien (Linux 3.6.3), ich bekomme nur OPEN / ACCESS-Events, aber keine Änderungen, die vom Kernel vorgenommen wurden. tokland vor 11 Jahren 0
@tokland Ich kenne keinen Befehl namens "inotify"? Mikel vor 11 Jahren 0
FWIW, `inotifywatch` von` inotify-tools` scheint gut zu funktionieren, um Änderungen an `/ proc / sys` auf meinem Linux 3.5.0-System zu zählen. Mikel vor 11 Jahren 0
Mikel, ich verwende "inotifywait" von "inotify-tools". Kannst du das in einem Laptop versuchen? `inotifywait -m / sys / class / power_supply / BAT0 / status`. Ich bekomme keine Ereignisse, wenn sich dieser Wert ändert (Batterie trennen / anschließen). tokland vor 11 Jahren 2