我通过 ssh 登录 Linux CentOS。有一个进程已经运行了一段时间,我可以通过以下方式找到它的PID
顶部
加 fn+f4 并输入生成该进程的文件的名称或
ps -辅助| grep <file_that_spawned_the_process>
两种方法都显示生成该进程的用户是 <Some_User>,但是我很确定它是 <Some_Other_User> 通过
sudo -u <Some_User> ./<file_that_spawned_the_process>
我想找出<Some_Other_User> 是谁,是否还有其他用户。找出他从哪台机器(IP)登录 CentOS 主机也将不胜感激。
我阅读了所有用户的所有 .bash_history,但找不到任何建议使用 sudo su <Some_Other_User> 的内容。我找到了一些答案,例如这但这似乎不是我想要的。有没有人有什么建议?我发现的所有内容都是关于找出哪个是我的原始用户或找出哪个用户(非原始用户)产生了一个进程,但两者的组合对我来说似乎并不微不足道。
答案1
你可以用pstree -u
...
这应该会显示 uid 转换。我刚刚对一个盒子进行了测试,top
通过su - user2 -c top
......启动
|-sshd-+-sshd---sshd(user2)---bash---screen
| `-sshd---sshd(user1)---sudo(root)---su---top(user2)