多个 python 脚本和 root 权限

Multiple python scripts and root permissions

我对 UNIX 权限非常缺乏经验。我有一个 Python 脚本,可以启动其他一些 Python 脚本以及其他程序,例如 tcpdump。所有这些进程都通过 subprocess.Popen 启动,一些程序在终端中打开(通过 x-terminal-emulator -e 选项)。

但是,某些 scripts/programs 需要以 root 身份启动。我试图将整个功能拆分为更小的脚本,并且只在必要时使用 sudo。现在我的问题是我的设置要求我每次启动整个过程时输入 root 密码 3 或 4 次。

我正在寻找的是一种在启动原始脚本时输入一次密码但只在脚本中的指定位置授予实际 root 权限的方法。谁能帮我吗? :)

这样做的一种方法是以 root 身份启动,分叉所有子进程,然后在不需要特权的(子)进程中放弃您的特权。

有关示例,请参阅 here

同一个 post 中还有一些其他建议。