Fehler bei aktiviertem Test: syscall :: open_nocancel: entry): Ungültiger Benutzerzugriff in Aktion 2 bei DIF

11

Ich habe den folgenden Einzeiler, um Dateien anzuzeigen, die durch den Prozess geöffnet wurden:

sudo dtrace -n 'syscall::open*:entry { printf("%s %s",execname,copyinstr(arg0)); }'

Ich habe jedoch viele wiederholte Fehler wie:

dtrace: error on enabled probe ID 4 (ID 946: syscall::open_nocancel:entry): invalid user access in action #2 at DIF offset 24

dtrace: error on enabled probe ID 7 (ID 160: syscall::open:entry): invalid user access in action #2 at DIF offset 24

Mir ist bewusst, dass ich sie unterdrücken kann, indem ich zu umleite 2> /dev/null.

Was bedeuten diese Fehler und warum treten sie auf?

Ist es ein dtraceFehler oder ein bestimmter Prozess, der das verursacht? Und wie kann dieses Problem angegangen werden?

Ich verwende OS X 10.11.2

Kenorb
quelle

Antworten:

13

Dies hängt möglicherweise mit El Capitan und seinem Systemintegritätsschutz ( csrutil status) zusammen, der das dtraceVerhalten beeinflussen kann .

Das mögliche Update umfasst das Neustarten des Mac im Wiederherstellungsmodus ( - Rbeim Booten) und anschließend im Terminal:

csrutil enable --without dtrace

um SIP aktiviert zu lassen, aber DTrace-Einschränkungen zu deaktivieren (Hinweis: Dies ist ein nicht dokumentierter Parameter ).

Oder deaktivieren Sie SIP vollständig durch:

csrutil disable # Not recommended.

Sehen:

Kenorb
quelle