3

Иногда, когда я использую Git и не могу выполнить команду sudo , он сообщает

fork: Resource temporarily unavailable

Что это значит, и что мне с этим делать?

1 ответ1

0

Эта ошибка ветвления обычно означает, что родительская программа не смогла выполнить один или несколько дочерних процессов, поскольку был достигнут предел ресурсов: максимально допустимое количество процессов (ошибка EAGAIN ) или максимально допустимый объем памяти (ошибка ENOMEM ). Справочная страница Fork (2) гласит:

 Fork() will fail and no child process will be created if:

 [EAGAIN]  The system-imposed limit on the total number of processes under execution would
           be exceeded.  This limit is configuration-dependent.

 [EAGAIN]  The system-imposed limit MAXUPRC (<sys/param.h>) on the total number of pro-
           cesses under execution by a single user would be exceeded.

 [ENOMEM]  There is insufficient swap space for the new process.

Есть несколько способов наложения ограничений на OS X:

  • Предел сеанса, установленный командой ulimit . Вы можете просмотреть текущий лимит, запустив ulimit -a и установить новый лимит, например, ulimit -u 1000 чтобы установить максимальный предел срабатывания равным 1000. Этот лимит сохраняется до окончания текущего сеанса термина.
  • Системные ограничения устанавливаются с помощью launchd в файле по адресу /Library/LaunchDaemons/limit.maxfiles.plist (только OS X 10.9+).

Для более подробной информации смотрите этот ответ.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .