ps 显示不可能运行的进程?

ps 显示不可能运行的进程?

不确定这是否与 proxmox 相关,但是当我运行时,ps aux我看到一堆以 uid 100000(有些更高)运行的进程,其中一些进程涉及文件系统上甚至不再存在的 shell 脚本。

如何?为什么?

我从未在其他系统上见过这个。

我尝试终止进程并重新启动,但每次重新启动时,它们都会回来,就好像它们是从某些我找不到的初始化脚本中“幻象运行”一样。

几周前我确实从该位置运行了这些脚本,但我已将它们移动到另一个位置,并且这些进程应该不再运行。

ps aux 的片段:

100033      2300  0.0  0.1 225156 12552 ?  S    20:21   0:00 /usr/sbin/apache2 -k start 
100000      2347  0.0  0.1  99964  9740 ?  Ss   20:21   0:00 /sbin/init 
100000      2361  0.0  0.0   2484   572 ?  S    20:21   0:00 /bin/sh /home/cap/bin/scripts/script1.sh 
100000      2362  0.0  0.0   2484   512 ?  S    20:21   0:00 /bin/sh /home/cap/bin/scripts/script2.sh

有很多进程具有有效的 uid 值,但这一个让我难住了。

有任何想法吗?

编辑:将措辞从 PID 更改为 UID。

答案1

这正是来自非特权容器的进程在ps主机上运行时的样子。

Proxmox 可以运行非特权 LXC 容器。使他们没有特权的是 UID 映射; Proxmox 已配置为将 100000 添加到容器内 UID,以获取映射的主机内 UID。因此,您在主机上看到的 100000 是容器的 0(根),您看到的 100033 在某些容器中是 33,依此类推。因此,容器的根在主机上没有任何特定的权限,没有特权,因此是无害的。

相关内容