我如何知道 Jenkins 以啥用户身份运行?
Posted
技术标签:
【中文标题】我如何知道 Jenkins 以啥用户身份运行?【英文标题】:How can I tell what user Jenkins is running as?我如何知道 Jenkins 以什么用户身份运行? 【发布时间】:2013-07-18 00:08:50 【问题描述】:我有一个 bitnami Jenkins 虚拟机,我如何知道 Jenkins 以什么用户身份运行?我怀疑它是Tomcat。
【问题讨论】:
【参考方案1】:如果您可以访问 gui,则可以转到“管理 jenkins”>“系统信息”并查找“user.name”。
【讨论】:
【参考方案2】:我会使用 ps
来获取进程的 uid,然后在 /etc/passwd 中使用 grep 来获取它
【讨论】:
这似乎返回了 PID 使用 ps -u 返回的用户名【参考方案3】:您还可以使用“whoami”命令创建一个包含 shell 脚本框的 Jenkins 作业。
【讨论】:
【参考方案4】:使用此命令查看您的 Jenkins 服务器在哪个进程下工作:
ps axufwwww | grep 'jenkins\|java' -
要解释结果,请查找:
jenkins 1087 0.0 0.0 18740 396 ? S 08:00 0:00 /usr/bin/daemon --name=jenkins
jenkins 1088 1.6 20.7 3600900 840116 ? Sl 08:00 2:12 \_ /usr/bin/java
1087 和 1088 是 PID。它们可能对您有所不同。
【讨论】:
【参考方案5】:ps aux | grep '/usr/bin/daemon' | grep 'jenkins' | awk 'print $1'
该命令将显示正在运行的进程,然后 grep 显示作为守护进程运行的进程,其中包含字符串“jenkins”。最后,获取管道输出的第一行,即运行 Jenkins 的用户。
【讨论】:
以上是关于我如何知道 Jenkins 以啥用户身份运行?的主要内容,如果未能解决你的问题,请参考以下文章
Jenkins / Vagrant / VirtualBox - Virtualbox 以系统用户身份运行?
批处理文件:如果我知道文件夹名称以啥开头,但不知道全名,如何进入文件夹
如何在没有远程桌面连接的 jenkins windows slave 上运行 GUI 测试?
如何在 Jenkins 中设置多种身份验证方式,例如 LDAP 和 Jenkins 用户数据库?