Ошибка включенного зонда: syscall :: open_nocancel: entry): недопустимый доступ пользователя в действии №2 в DIF

У меня есть следующий однострочный файл для отображения файлов, открытых процессом:

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

однако у меня много повторяющихся ошибок, например:

  

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

Я знаю, что могу подавить их перенаправлением на 2> /dev/null.

Что означают эти ошибки и почему они происходят?

Это ошибка dtrace или какой-то определенный процесс, вызывающий это? И как эту проблему можно решить?

Я использую OS X 10.11.2

10 голосов | спросил kenorb 8 PMpFri, 08 Apr 2016 18:45:57 +030045Friday 2016, 18:45:57

1 ответ


13

Это потенциально связано с El Capitan и его защитой целостности системы (csrutil status), которая может повлиять на dtrace.

Потенциальное исправление включает в себя перезагрузку Mac в режиме восстановления ( - R во время загрузки), затем в Terminal run:

csrutil enable --without dtrace

, чтобы включить SIP, но отключите ограничения DTrace (обратите внимание: это недокументированный параметр ).

Или полностью отключите SIP:

csrutil disable # Not recommended.

См:

ответил kenorb 13 PMpWed, 13 Apr 2016 18:28:13 +030028Wednesday 2016, 18:28:13

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

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132