我正在尝试在 CentOS 机器上复制一些文件和文件夹。
我这样做: sudo cp source destination & 在后台运行它。
我cp现在运行时看到有三个进程ps aux | grep cp:其中一个是grep命令本身,但另外两个是上述cp命令的副本:一个包含上面列出的整个命令,另一个没有sudo前面的命令。两个进程的PID也相差一。两者的所有者都被列为 root。
为什么有两个进程?
Ste*_*itt 15
这两个过程是sudo一方面,另一方面cp。当你跑
sudo cp source destination &
Run Code Online (Sandbox Code Playgroud)
shellsudo以完整的命令行开始;然后sudo(root因为它是 setuid而运行root)检查您是否可以这样运行cp,然后 fork 和 starts cp。因此,cp在运行时,您会看到sudo和cp进程。