ОШИБКА: Неожиданный вывод команды «ps» при запуске «срочного обновления» с «безопасным для узла»

Я использую Node-Safe для запуска команд Node.js, помещенных в санбокс в macOS. Я также пытаюсь использовать Rush.js

Когда я бегуrush update, я получаю следующую ошибку:

      ERROR: Unexpected output from "ps" command

Ошибка не возникает, когда я запускаю команду с помощью--allow-allфлаг дляnode-safe, но эта песочница полностью отключена. Когда я вручную даю команде все возможные разрешения ((allow system*)и другие), я все еще получаю эту ошибку

1 ответ

После долгих поисков я нашел этот комментарий в репозитории Bazel (они также используют встроенную песочницу macOS)

rush updateиспользует для получения времени запуска процесса (не знаю почему). Ошибка возникает где-то здесь , если вам интересно

В комментарии объясняется, что/bin/psнеобходимо запускать без песочницы. Чтобы сделать это в файле конфигурации песочницы, вам нужно добавить(allow process-exec (with no-sandbox) (literal "/bin/ps"))в ваш файл песочницы

В настоящее время нет возможности сделать это в . Вы можете разветвить его и добавить эту опцию или использовать мою вилку , чтобы добавить это предложение (см. верхнюю часть readme.md).

Это можно было бы сделать красивее, но это похоже на неясный вариант использования. Если у вас была такая же проблема и это вам помогло, я подумаю о том, как добавить такую ​​функцию вnode-safeрепо. Пожалуйста, прокомментируйте, чтобы сообщить мне в таком случае.

Другие вопросы по тегам