Jenkins 2.492.2修改运行用户为 root 的方法

Jenkins 2.492.2 及更新版本使用 systemd 管理服务,不再使用 /etc/sysconfig/jenkins 配置文件。因此,修改 Jenkins 运行用户的方法不同于早期版本,需要通过 systemd 的 override 机制 进行配置。


1. 检查当前 Jenkins 运行用户

在修改前,先确认 Jenkins 运行的用户:

bash 复制代码
ps aux | grep jenkins

如果看到:

plain 复制代码
jenkins   1234  2.3  1.2 1234567 56789 ? Ssl  02:33   0:15 /usr/bin/java -Djava.awt.headless=true -jar /usr/share/java/jenkins.war ...

说明 Jenkins 仍然以 jenkins 用户运行。


2. 修改 Jenkins 运行用户

2.1 使用 systemd override

执行以下命令:

bash 复制代码
sudo systemctl edit jenkins

然后在打开的编辑窗口中添加:

plain 复制代码
[Service]
User=root
Group=root

保存并退出(:wq)。


3. 重新加载 systemd 并重启 Jenkins

执行以下命令使配置生效:

bash 复制代码
sudo systemctl daemon-reload
sudo systemctl restart jenkins

4. 确认修改是否成功

检查 Jenkins 进程

bash 复制代码
ps aux | grep jenkins

如果输出类似:

plain 复制代码
root        6774 24.7  2.2 8168396 357068 ?      Ssl  02:55   0:23 /usr/bin/java -Djava.awt.headless=true -jar /usr/share/java/jenkins.war --webroot=/var/cache/jenkins/war --httpPort=8080

说明 Jenkins 已成功以 root 运行。

检查 systemd 状态

bash 复制代码
sudo systemctl status jenkins

如果 Main PID 行显示 root,则修改成功:

plain 复制代码
● jenkins.service - Jenkins Continuous Integration Server
   Loaded: loaded (/usr/lib/systemd/system/jenkins.service; enabled; vendor preset: disabled)
   Active: active (running) since ...
 Main PID: 6774 (java)
    Tasks: ...
   CGroup: /system.slice/jenkins.service
           └─6774 /usr/bin/java -Djava.awt.headless=true -jar /usr/share/java/jenkins.war ...

进一步确认

bash 复制代码
ps -eo pid,user,comm | grep jenkins

如果输出:

plain 复制代码
6774 root java

Jenkins 运行用户设为 root 可能导致权限过大,容易被恶意插件或脚本利用,建议只在测试环境中使用。

相关推荐
HalvmånEver19 分钟前
Linux:线程同步
linux·运维·服务器·线程·同步
岁杪杪25 分钟前
关于运维:LINUX 零基础
运维·服务器·php
tianyuanwo1 小时前
企业级NTP客户端配置指南:基于内部NTP服务器的实践
运维·服务器·ntp客户端
芷栀夏1 小时前
CANN开源实战:基于DrissionPage构建企业级网页自动化与数据采集系统
运维·人工智能·开源·自动化·cann
寄存器漫游者1 小时前
Linux 软件编程 - IO 编程
linux·运维·spring
charlotte102410241 小时前
高并发:关于在等待学校教务系统选课时的碎碎念
java·运维·网络
gaize12132 小时前
Moltbot(Clawdbot) 专属轻量服务器
运维·服务器
vx_Biye_Design2 小时前
【关注可免费领取源码】房屋出租系统的设计与实现--毕设附源码40805
java·spring boot·spring·spring cloud·servlet·eclipse·课程设计
鸽芷咕2 小时前
DrissionPage 成 CANN 仓库爆款自动化工具:背后原因何在?
运维·python·自动化·cann
池央3 小时前
CANN 算子生态的深度演进:稀疏计算支持与 PyPTO 范式的抽象层级
运维·人工智能·信号处理