![Изменение ulimit в Ubuntu 12.04 Никогда не работает](https://rvso.com/image/623646/%D0%98%D0%B7%D0%BC%D0%B5%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5%20ulimit%20%D0%B2%20Ubuntu%2012.04%20%D0%9D%D0%B8%D0%BA%D0%BE%D0%B3%D0%B4%D0%B0%20%D0%BD%D0%B5%20%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0%D0%B5%D1%82.png)
Я работаю с 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/
каталога были файлы для пользователей hbase
mapred
и 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
Вы перезагрузились? Я обнаружил, что изменения в /etc/security/limits.conf работают у меня только после перезагрузки.