为什么在 rc.local 文件中执行 sudo 命令会创建两个进程?一种使用 sudo 命令,另一种不使用

为什么在 rc.local 文件中执行 sudo 命令会创建两个进程?一种使用 sudo 命令,另一种不使用

为了在启动时运行该进程,我使用 sudo 命令在 rc.local 文件中编写了一个脚本。

但是,如果使用 ps 命令查找进程,则会发现有两个进程,一个使用 sudo 命令,另一个不使用 sudo 命令。

不影响实际操作,但我想知道为什么会创建两个进程。

例子

root       430     1  0 12월02 ?      00:00:00 sudo python3 process.py
root       511   423  0 12월02 ?      00:04:54 python3 process.py

你可以回答我吗?

答案1

我使用 sudo 命令在 rc.local 文件中编写了一个脚本

您不需要使用sudo,因为rc.local无论如何都是以 root 身份执行的。

尽管如此,让我们看看这里发生了什么。

root       430     1  0 12월02 ?      00:00:00 sudo python3 process.py
root       511   423  0 12월02 ?      00:04:54 python3 process.py

rc.local进程 430 是从您使用的地方调用的进程sudo。不过,进程 511 让我有点困惑;我本以为它的父级是 430,但它似乎来自更早的版本。这将有助于查看您的rc.local.这是实际从 调用的命令sudo。当进程结束时,sudo将完成并且也将退出。

相关内容