Изменение ulimit на Ubuntu 12.04 Никогда не работает

Я работаю с hadoop и мне нужно изменить количество открытых файлов ulimit -n, Я видел похожие вопросы по stackoverflow и в других местах и ​​перепробовал все в этих ответах, но он все еще не работает. Я работаю с ubuntu 12.04 LTS, Вот что я сделал:

изменить пределы в /etc/security/limits.confя поставил в настройках * и root, Я также изменил ограничения на некоторые числа, такие как 10000 а также unlimited,

* soft nofile 1513687
* hard nofile 1513687
root soft nofile 1513687
root hard nofile 1513687

Я также попробовал выше настройки с - вместо soft а также hard, После этих изменений я внес изменения в /etc/pam.d/ файлы, такие как:

common-session 
common-session-noninterative
login
cron
sshd
su
sudo

я добавил session required pam_limits.so в начало каждого файла. Я сделал перезапуск рассматриваемой коробки, и настройки не вступили в силу.

Я также обнаружил, что внутри были файлы /etc/security/limits.d/ каталог для пользователей hbasemapred а также hdfs, Я пытался изменить ограничения в этих отдельных файлах, но безрезультатно.

Я пытался положить ulimit -S -n unlimited внутри /etc/profile также. Это не работает.

Наконец, я попытался положить limit nofile unlimited unlimited внутри /etc/init.d/hadoop* файлы в первой строке. Не работал.

Одна интересная вещь, хотя, у меня не установлен HBase на коробке, но у меня есть hbase.conf файл внутри /etc/security/limits.d/ каталог. Настройки в этом файле отражаются ulimit -n, Но настройки из hdfs.conf а также mapred.conf не отражаются. Что говорит о том, что что-то перезаписывает настройки для hdfs а также mapred,

Думаю, я перепробовал все, что люди предлагали на нескольких форумах, есть ли что-то, что я мог пропустить или сделал неправильно?

я использую CDH 4.4.0 как мое распределение hadoop.

1 ответ

Я смог успешно изменить мой приоритет ulimit в реальном времени и блокировку памяти, выполнив это:

Откройте /etc/security/limits.conf и добавьте эти строки (замените 'tyler' на ваше имя пользователя Ubuntu)

  • Тайлер Хард РТПРИО 95
  • тайлер софт ртрио 95
  • Тайлер Хард Мемлок неограничен
  • Тайлер мягкий мемлок неограничен

Откройте /etc/pam.d/su и убедитесь, что следующая строка присутствует и не закомментирована:

session    required   pam_limits.so

После этого мне просто нужно было перезагрузить компьютер, затем я мог использовать эту команду терминала, чтобы проверить свой ulimit:

ulimit -r -l
Другие вопросы по тегам