什么用户运行 /etc/rc.local 中定义的命令?

什么用户运行 /etc/rc.local 中定义的命令?

/etc/rc.local默认情况下运行的命令是什么su
我是否需要sudo在每个命令之前具体说明,还是无论如何都会运行它们su

答案1

su不是一个用户它是程序以与执行该命令的用户不同的另一用户身份运行后续命令/程序。sudo在这方面,它非常相似。

除非指定了另一个用户,否则这两个命令将默认以该用户的备用身份运行该命令。root用户,超级用户/管理员。

su和之间的主要区别sudo在于:

  • su要求您知道该备用用户的密码,其中
  • sudo将提示输入运行命令的用户的密码sudo,并需要进行设置,以便允许用户运行请求的命令/程序。

(什么时候root运行su或者sudo不需要密码。)


与任何 init 脚本一样,该/etc/rc.local脚本由root用户,您不需要在需要以 root 身份运行的命令/程序前添加su或。sudo

您可能仍然需要使用susudo如果需要执行这些命令,不作为root但另一个用户/服务帐户...

su -oracle/do/something/as/oracle/user

答案2

是的,所有的脚本和程序都是由root直接调用的。

/etc/rc.local文件由 init 进程直接调用。

相关内容