gpt4 book ai didi

python - 使用 sudo 权限运行单个命令的最 Pythonic 方式

转载 作者:太空宇宙 更新时间:2023-11-03 19:14:10 25 4
gpt4 key购买 nike

我有一个 python 脚本,它正在执行一些 nagios 配置。该脚本以具有完整 sudo 权限的用户身份运行(用户可以使用 sudo 运行任何命令,无需密码提示)。配置的最后一步是这样的:

open(NAGIOS_COMMAND_FILE, 'a').write(cmdline)

NAGIOS_COMMAND_FILE 只能由 root 写入,因此该命令应由 root 运行。我可以想到两种实现此目的的方法(均不令人满意):

  1. 以 root 身份运行整个脚本。我不喜欢这样做,因为我的脚本中的任何错误都将以完全 root 权限执行。
  2. open(NAGIOS_COMMAND_FILE, 'a').write(cmdline) 命令放入单独的脚本中,并使用 subprocess 库通过 sudo 调用该脚本。我不喜欢创建额外的脚本只是来运行单个命令。

我想在我当前的脚本中,无法更改单个命令的运行用户,还是我错了?

最佳答案

为什么不向拥有所有 sudo 权限的用户授予对 NAGIOS_COMMAND_FILE 的写权限?

关于python - 使用 sudo 权限运行单个命令的最 Pythonic 方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11932448/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com