如何在 Ubuntu 中增加 Neo4j 的最大文件打开限制(ulimit)?
- 2024-11-12 08:36:00
- admin 原创
- 27
问题描述:
目前ulimit -n
显示10000
。我想将其增加到40000
。我已编辑“/etc/sysctl.conf”并输入fs.file-max=40000
。我还编辑/etc/security/limits.conf
并更新了硬值和软值。但 ulimit 仍然显示10000
。完成所有这些更改后,我重新启动了笔记本电脑。我可以访问 root 密码。
usr_name@usr_name-lap:/etc$ /sbin/sysctl fs.file-max
fs.file-max = 500000
在以下行中添加了/etc/security/limits.conf
-
* soft nofile 40000
* hard nofile 40000
我还添加了以下行/etc/pam.d/su
-
session required pam_limits.so
我尝试了其他论坛上提供的所有可能方法,但我只能达到 的最大限制10000
,而不能超过这个限制。问题可能出在哪里?
我进行此更改是因为neo4j
引发了已达到最大打开文件限制的错误。
解决方案 1:
您正在执行的操作对 root 用户不起作用。也许您正在以 root 身份运行服务,因此看不到更改。
要增加 root 用户的 ulimit,您应该将 替换*
为 root。*
不适用于 root 用户。其余操作与您所做的相同。我将在这里重新引用。
在文件中添加以下行:/etc/security/limits.conf
root soft nofile 40000
root hard nofile 40000
然后在文件中添加以下行:/etc/pam.d/common-session
session required pam_limits.so
这将更新 root 用户的 ulimit。正如评论中提到的,您甚至不必重新启动即可看到更改。
解决方案 2:
1)检查sysctlfile-max
限制:
$ cat /proc/sys/fs/file-max
如果限制低于您想要的值,请打开sysctl.conf
并在文件末尾添加此行:
fs.file-max = 65536
最后,应用sysctl
限制:
$ sysctl -p
2)编辑/etc/security/limits.conf
并添加以下内容
* soft nproc 65535
* hard nproc 65535
* soft nofile 65535
* hard nofile 65535
这些限制不适用于root
用户,如果您想更改root
限制,则必须明确执行此操作:
root soft nofile 65535
root hard nofile 65535
...
3)重新启动系统或在末尾添加以下行/etc/pam.d/common-session
:
session required pam_limits.so
注销并重新登录。
4)检查软限制:
$ ulimit -a
以及硬性限制:
$ ulimit -Ha
....
open files (-n) 65535
参考: http: //ithubinfo.blogspot.in/2013/07/how-to-increase-ulimit-open-file-and.html
解决方案 3:
我使用的是 Debian,但此解决方案应该适用于 Ubuntu。您必须在neo4j-service
脚本
中添加一行。
以下是我所做的:
nano /etc/init.d/neo4j-service在do_start 部分中的start-stop-daemon 行之前
添加“ ulimit –n 40000 ”
请注意,我使用的是 2.0 企业版。希望这对您有所帮助。
解决方案 4:
我遇到了同样的问题,并通过向 中添加条目使其正常工作/etc/security/limits.d/90-somefile.conf
。请注意,为了看到限制工作,我必须从 ssh 会话中完全注销,然后重新登录。
我想为运行服务的特定用户设置限制,但似乎我得到的是为我登录的用户设置的限制。下面是一个示例,展示了如何根据经过身份验证的用户而不是有效用户设置 ulimit:
$ sudo cat /etc/security/limits.d/90-nofiles.conf
loginuser soft nofile 10240
loginuser hard nofile 10240
root soft nofile 10241
root hard nofile 10241
serviceuser soft nofile 10242
serviceuser hard nofile 10242
$ whoami
loginuser
$ ulimit -n
10240
$ sudo -i
# ulimit -n
10240 # loginuser's limit
# su - serviceuser
$ ulimit -n
10240 # still loginuser's limit.
您可以使用*
来指定所有用户的增加。如果我以我登录的用户身份重新启动服务,并添加ulimit -n
到 init 脚本,我会看到初始登录用户的限制已经到位。我还没有机会验证在系统启动期间使用了哪些用户的限制,或者确定我正在运行的服务(使用 start-stop-daemon 启动)的实际 nofile 限制是多少。
目前有两种可行的方法:
在 start-stop-daemon 之前,向 init 脚本添加 ulimit 调整。
安全文件中的通配符或更广泛的 ulimit 设置。
解决方案 5:
您可以修改初始化脚本以在运行之前neo4j
执行操作。ulimit -n 40000
`neo4j`
但是,我忍不住觉得你找错了方向。neo4j
真的需要超过 10,000 个打开的文件描述符吗?这听起来很像是neo4j
你使用它的方式中的一个错误。我会尝试解决这个问题。
解决方案 6:
我为使这个工作顺利进行而遇到了很多麻烦。
使用以下内容允许您更新它,无论您的用户权限如何。
sudo sysctl -w fs.inotify.max_user_watches=100000
编辑
刚刚在另一个 stackexchange 网站上从另一个用户那里看到此信息(都可以使用,但此版本永久更新系统设置,而不是暂时更新):
echo fs.inotify.max_user_watches=100000 | sudo tee -a /etc/sysctl.conf;
sudo sysctl -p
解决方案 7:
尝试运行此命令它将*_limits.conf
在下面创建一个文件/etc/security/limits.d
echo "* soft nofile 102400" > /etc/security/limits.d/*_limits.conf && echo "* hard nofile 102400" >> /etc/security/limits.d/*_limits.conf
只需退出终端并再次登录并验证ulimit -n
它将为*个用户设置
解决方案 8:
tl;dr 设置软限制和硬限制
我确信它按预期工作,但为了以防万一,我会在这里添加它。为了完整起见,限制设置在这里(语法见下文):/etc/security/limits.conf
some_user soft nofile 60000
some_user hard nofile 60000
并在 /etc/pam.d/common-session 中使用以下命令激活:
session required pam_limits.so
如果仅设置硬限制,ulimit -a
将显示默认值 (1024):如果仅设置软限制,ulimit -a 将显示 (4096)
如果您设置它们,两者ulimit -a
都会显示软限制(当然最高可达硬限制)
解决方案 9:
我这样做了
echo "NEO4J_ULIMIT_NOFILE=50000" >> neo4j
mv neo4j /etc/default/
解决方案 10:
ULIMIT 配置:
通过 root 登录
vi 安全/限制.conf
进行以下输入
开始为网站用户配置 Ulimit
website soft nofile 8192
website hard nofile 8192
website soft nproc 4096
website hard nproc 8192
website soft core unlimited
website hard core unlimited
为所有用户输入以下信息
每个用户的 ulimit 配置
* soft nofile 8192
* hard nofile 8192
* soft nproc 4096
* hard nproc 8192
* soft core unlimited
* hard core unlimited
修改文件后,用户需要注销并重新登录才能看到新的值。
- 2024年20款好用的项目管理软件推荐,项目管理提效的20个工具和技巧
- 2024年开源项目管理软件有哪些?推荐5款好用的项目管理工具
- 项目管理软件有哪些?推荐7款超好用的项目管理工具
- 项目管理软件哪个最好用?盘点推荐5款好用的项目管理工具
- 项目管理软件有哪些最好用?推荐6款好用的项目管理工具
- 项目管理软件有哪些,盘点推荐国内外超好用的7款项目管理工具
- 2024项目管理软件排行榜(10类常用的项目管理工具全推荐)
- 项目管理软件排行榜:2024年项目经理必备5款开源项目管理软件汇总
- 2024年常用的项目管理软件有哪些?推荐这10款国内外好用的项目管理工具
- 项目管理必备:盘点2024年13款好用的项目管理软件