在CentOS系统上,如果忘记了Jenkins的密码,可以通过以下步骤进行重置,以下是一篇详细的文章,旨在帮助您解决这一问题。

登录到CentOS服务器
您需要通过SSH客户端连接到您的CentOS服务器,确保您有正确的用户名和密码。
ssh username@yourserverip
进入Jenkins目录
Jenkins通常安装在/var/lib/jenkins目录下,使用以下命令切换到该目录:
cd /var/lib/jenkins
查找Jenkins的h2数据库文件
Jenkins使用H2数据库来存储用户信息,找到以下文件:
find . -name "h2.db"
这将列出所有与H2数据库相关的文件。h2.db文件位于/var/lib/jenkins目录下。
使用JDBC连接到H2数据库
使用以下命令连接到H2数据库:
java -jar /usr/share/jenkins/jenkins.war --prefix=/var/lib/jenkins --httpPort=-1
这将启动Jenkins的JDBC服务。

访问Jenkins的JDBC URL
在浏览器中,访问以下URL:
jdbc:h2:file:/var/lib/jenkins/h2.db;user=SA 这将打开H2数据库的Web控制台。
重置Jenkins管理员密码
在H2数据库的Web控制台中,执行以下SQL命令来重置管理员密码:
UPDATE jenkinsusers SET password='newpassword' WHERE username='admin';
确保将newpassword替换为您的新密码。
重启Jenkins服务
完成密码更改后,重启Jenkins服务以使更改生效:
service jenkins restart
登录Jenkins
您可以使用新密码登录Jenkins。

修改Jenkins配置文件(可选)
为了防止未来再次发生此类问题,您可以将Jenkins的配置文件中的数据库密码加密,编辑/var/lib/jenkins/jenkins.xml文件,找到以下部分:
<security>
<realms>
<hudson.security.H2DatabaseRealm>
<configuration>
<dbUrl>jdbc:h2:file:/var/lib/jenkins/h2.db;user=SA;password=yourpassword</dbUrl>
</configuration>
</hudson.security.H2DatabaseRealm>
</realms>
</security> 将yourpassword替换为您的新密码,并保存文件。
FAQs
Q: 如果我忘记了Jenkins的普通用户密码怎么办?
A: 对于普通用户密码的重置,您可以在Jenkins的Web界面中找到“忘记密码?”链接,按照提示进行操作。
Q: 重置Jenkins密码后,我需要重新安装Jenkins吗?
A: 不需要,通过上述步骤重置Jenkins密码不会影响Jenkins的安装或配置,只需确保在Jenkins重启后使用新密码登录即可。
