【问题标题】:Creating a tty for Sensu with Python使用 Python 为 Sensu 创建一个 tty
【发布时间】:2018-02-15 18:50:42
【问题描述】:

大家好,我正在尝试在 python 中创建一个 sensu 检查,它需要一个 shell,但目前给我一个 tty 错误。

cmd = '/usr/bin/pstorage stat |grep %s |grep failed' % hostname
output = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.STDOUT, shell=True).communicate()[0]

Sensu 默认没有 tty,所以当它尝试执行脚本时

sudo /etc/sensu/plugins/diskauto.py --storage_name pool-01

输出是

sudo: no tty present and no askpass program specified

我已经有了以下 sudo 规则

Cmnd_Alias DRIVE_AUTOMATION=/apptio/scripts/diskauto.py

【问题讨论】:

    标签: python linux tty sensu


    【解决方案1】:

    您可以将 sudo 配置为在某些情况下不需要 tty。

    假设sensusensu 用户身份运行,请将以下内容添加到/etc/sudoers

    Defaults:sensu !requiretty
    

    【讨论】:

    • 可能无关,但您的别名用于与您的示例不同的命令。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-28
    • 1970-01-01
    • 2021-03-29
    • 2019-08-11
    相关资源
    最近更新 更多