Błąd na włączonej sondzie: syscall :: open_nocancel: entry): nieprawidłowy dostęp użytkownika w akcji nr 2 w DIF

11

Mam następujący jeden wiersz, aby wyświetlić pliki otwarte przez proces:

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

jednak mam wiele powtarzających się błędów, takich jak:

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

Wiem, że mogę je ukryć, przekierowując na adres 2> /dev/null.

Co oznaczają te błędy i dlaczego się zdarzają?

Czy to dtracewina, czy jakiś konkretny proces, który to powoduje? Jak rozwiązać ten problem?

Używam OS X 10.11.2

kenorb
źródło

Odpowiedzi:

14

Jest to potencjalnie powiązane z El Capitan i jego System Integrity Protection ( csrutil status), które mogą wpływać na dtracezachowanie.

Potencjalna poprawka obejmuje ponowne uruchomienie komputera Mac w trybie odzyskiwania ( - Rpodczas rozruchu), a następnie w trybie uruchamiania terminalu:

csrutil enable --without dtrace

aby utrzymać SIP włączony, ale wyłącz ograniczenia DTrace (uwaga: jest to parametr nieudokumentowany ).

Lub całkowicie wyłącz SIP przez:

csrutil disable # Not recommended.

Widzieć:

kenorb
źródło