我正在尝试复制 CentOS 计算机上的一些文件和文件夹。
我这样做:sudo cp source destination &
在后台运行它。
cp
当我运行时,我看到现在有三个进程ps aux | grep cp
:其中一个是grep
命令本身,但另外两个是上述cp
命令的副本:一个包含上面列出的整个命令,另一个没有sudo
前面的命令。两个进程的PID也相差一。两者的所有者都被列为 root。
为什么有两个进程?
答案1
这两个过程是sudo
一方面,cp
另一方面。当你跑步时
sudo cp source destination &
shellsudo
以完整的命令行启动;然后(因为它是 setuidsudo
而运行)检查是否允许您像这样运行,然后 forks 和starts 。因此,在运行时您会看到和进程。root
root
cp
cp
cp
sudo
cp