Как правильно увеличить лимит `ulimit -n`?

Я пытаюсь загрузить X-Plane 10 Demo через uTorrent, однако я все время получаю ошибку «слишком много открытых файлов». Я могу сделать альтернативную загрузку (которая берет навсегда и день), но мне интересно, как я могу увеличить настройку в Lion?

Я нашел противоречивую информацию об этом, некоторые говорят, что ulimit -n и sysctl являются инструментами выбора, в то время как другие сообщают, что правильный код launchctl.

Сообщенное значение для ulimit -n равно 256, то же для launchctl limit:

cpu         unlimited      unlimited      
filesize    unlimited      unlimited      
data        unlimited      unlimited      
stack       8388608        67104768       
core        0              unlimited      
rss         unlimited      unlimited      
memlock     unlimited      unlimited      
maxproc     709            1064           
maxfiles    256            unlimited      
7 голосов | спросил Michael Stum 26 62011vEurope/Moscow11bEurope/MoscowSat, 26 Nov 2011 11:23:37 +0400 2011, 11:23:37

1 ответ


6

Следующие решения должны разрешать большинство решений (и перечислены в порядке их иерархии):

echo 'kern.maxfiles=20480' | sudo tee -a /etc/sysctl.conf
echo -e 'limit maxfiles 8192 20480\nlimit maxproc 1000 2000' | sudo tee -a /etc/launchd.conf
echo 'ulimit -n 4096' | sudo tee -a /etc/profile

Примечания:

  1. Вам необходимо перезапустить, чтобы эти изменения вступили в силу.
  2. AFAIK вы больше не можете устанавливать ограничения на «неограниченный» в OS X
  3. launchctl maxfiles ограничены sysctl maxfiles и поэтому не может превышать их
  4. sysctl, похоже, наследует kern.maxfilesperproc от launchctl MAXFILES
  5. ulimit, похоже, наследует значение «открытых файлов» от startctl по умолчанию
  6. вы можете установить собственный ulimit в /etc /profile или ~ /.profile; в то время как это не требуется, я привел пример
  7. Будьте осторожны при установке любого из этих значений на очень большое число по сравнению с их значением по умолчанию - в функциях есть стабильность /безопасность. Я взял эти номера примеров, которые, по моему мнению, были разумными, написанными на других сайтах.
  8. Когда пределы запуска ниже, чем у sysctl, появились сообщения о том, что релевантные sysctl будут автоматически вставлены в соответствии с требованиями.
ответил errant.info 3 MonEurope/Moscow2012-12-03T16:14:34+04:00Europe/Moscow12bEurope/MoscowMon, 03 Dec 2012 16:14:34 +0400 2012, 16:14:34

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

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

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