**结束。**此问题不符合堆栈溢出准则。它目前不接受答案。
**想改进这个问题吗?**更新问题,使其成为堆栈溢出的主题。
6年前关门了。
改进这个问题
我正在使用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条答案
按热度按时间bksxznpy1#
你怎么查的?
我遇到了一个类似的问题,我要去哪里
sudo ulimit -n
,仍然可以看到1024
. 这是因为ulimit
是内置的bash。才能看到/etc/security/limits.conf
,我不得不跑ulimit
作为实际用户。