ОШИБКА: Неожиданный вывод команды «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
репо. Пожалуйста, прокомментируйте, чтобы сообщить мне в таком случае.