打开文件太多错误!安装许多插件后无法打开Jenkins

时间:2017-09-06 00:18:49

标签: ubuntu jenkins hudson

我搜索了以前的帖子,但没有解决我的问题。我正在使用Ubuntu。

问题在于:

错误java.nio.file.FileSystemException:/var/lib/jenkins/config.xml:

打开的文件过多 在Sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java)的sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:114)下的

sun.nio.fs.UnixException.translateToIOException(UnixException.java:103) :119)在java.nio.file.Files.newByteChannel(文件。 java:418)at java.nio.file.spi.FileSystemProvider.newInputStream(FileSystemProvider.java:395)at java.nio.file.Files.newInputStream(Files.java:163)at hudson.XmlFile.unmarshal(XmlFile.java) :158)jenkins.model.Jenkins.loadConfig(Jenkins.java:3078)jenkins.model.Jenkins.access $ 1200(Jenkins.java:307)jenkins.model.Jenkins $ 16.run(Jenkins.java:3096)在org.jvnet.hudson.reactor.TaskGraphBuilder $ TaskImpl.run(TaskGraphBuilder.java:169)org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:282)jenkins.model.Jenkins $ 7.runTask( Jenkins.java:1090)在org.jvnet.hudson.reactor.Reactor $ 2.ru n(Reactor.java:210)位于java.util的java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1153)的org.jvnet.hudson.reactor.Reactor $ Node.run(Reactor.java:117) .concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:628)at java.lang.Thread.run(Thread.java:785)

在jenkins.model的jenkins.InitReactorRunner.run(InitReactorRunner.java:47)的org.jvnet.hudson.reactor.Reactor.execute(Reactor.java:269)中发生了org.jvnet.hudson.reactor.ReactorException jenkins.model.Jenkins的.Jenkins.executeReactor(Jenkins.java:1124)。(judson.java:929)hudson.model.Hudson。(Hudson.java:86)hudson.model.Hudson。(Hudson.java) :82)在hudson.WebAppMain $ 3.run(WebAppMain.java:235)

引起:hudson.WebAppMain $ 3.run(WebAppMain.java:252)的hudson.util.HudsonFailedToLoad

1 个答案:

答案 0 :(得分:2)

安装Jenkins时,会创建默认的 jenkins 用户。请注意,您在Jenkins上执行的每个操作都与“Jenkins”用户相关联。在Ubuntu(你告诉你的操作系统是Ubuntu),有开放文件限制。您可以使用用户shell中的ulimit -n来了解打开的文件限制。例如,如果您想知道“jenkins”用户的“ulimit -n”,请执行以下操作:将shell更改为“jenkins”用户执行“su - jenkins”,然后更改ulimit -n。默认值为1024.您可以将此值增加到4096或更多:ulimit -n 4096

或者,您可以在/etc/security/limits.conf文件中创建一个新的ulimit记录,如下所示。

jenkins      soft   nofile  4096
jenkins      hard   nofile  8192

解释(您可以阅读/etc/security/limits.conf文件以便更好地理解)

jenkins - 用户/群组名称

软/硬 - 链接类型。 注意:软链接可以是0到硬链接。

nofile - 打开文件的数量 而且是价值。