![Ubuntu 12.04 で ulimit を変更しても機能しない](https://rvso.com/image/623646/Ubuntu%2012.04%20%E3%81%A7%20ulimit%20%E3%82%92%E5%A4%89%E6%9B%B4%E3%81%97%E3%81%A6%E3%82%82%E6%A9%9F%E8%83%BD%E3%81%97%E3%81%AA%E3%81%84.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 の変更は、再起動後にのみ有効であることがわかりました。