说下背景:
使用systemctl start jenkins后,再使用lsof -i:8080查看端口状态(也可以使用netstat -tunlp|grep 8080),并没有信息,也就是没有监听8080端口(我的是8080,看自己的而定)。
查找原因
OK,遇见问题我们就解决问题,我们先来看下jenkins的日志:
#进入jenkins日志目录
cd /var/log/jenkins
#查看日志
cat jenkins.log
可以看到日志有报错,我们可以清楚看到java.io.FileNotFoundException: /var/cache/jenkins/war/META-INF/MANIFEST.MF (Permission denied),Permission denied的意思就是没有权限,到这里我们就找到原因了,就是没有把 /var/cache/jenkins的权限赋予给用户,解决办法就是给用户赋权,不想看日志的可直接看最下面的解决办法。
报错摘要如下:
2020-04-16 03:09:31.292+0000 [id=1] WARNING winstone.Logger#logInternal: Failed to delete dirs /var/cache/jenkins/war
java.nio.file.AccessDeniedException: /var/cache/jenkins/war
at sun.nio.fs.UnixException.translateToIOException(UnixException.java:84)
at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
at sun.nio.fs.UnixException.rethrowAsIOException