AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题

问题[ssmtp](unix)

Martin Hope
phil
Asked: 2021-09-25 01:45:19 +0800 CST

升级后我的 cron 脚本找不到命令 /usr/sbin/ssmtp

  • 1

我有几个运行相同的 cron 脚本的覆盆子,但是在其中一个上更新/升级 jessie 之后,我得到了

ssmtp:: command not found

我可以从命令行运行该命令,但从命令行运行脚本失败,所以不是真正的 cron 问题。

我正在使用完整路径:/usr/sbin/ssmtp

并且在命令行上使用该命令可以正常执行

echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/games:/usr/games

这是脚本代码的片段

#!/bin/bash
set -o pipefail

mysendmail="/usr/sbin/ssmtp"
…
$(echo -e "To: $tophil\nSubject: $(hostname) $ip2" | $mysendmail $tophil 2>&1)
debian ssmtp
  • 1 个回答
  • 93 Views
Martin Hope
rubo77
Asked: 2019-06-17 00:46:55 +0800 CST

在 Debian buster 中安装 ssmtp

  • 10

我尝试ssmtp在 Debian 10.0 中安装,但出现错误

Package ssmtp is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or is only available from another source

但是我没有得到任何结果,也apt search ssmpt没有:

$ apt-file search ssmtp
monitoring-plugins-basic: /usr/lib/nagios/plugins/check_ssmtp
sosreport: /usr/share/sosreport/sos/plugins/ssmtp.py

如何在 Debian buster 中安装 ssmtp?

debian ssmtp
  • 2 个回答
  • 17340 Views
Martin Hope
Ann L.
Asked: 2019-03-02 09:40:58 +0800 CST

如果作业花费 > 5 分钟,则 sSMTP 不会发送 Cron 电子邮件

  • 3

我们有两台服务器,其中一台运行 Ubuntu,另一台运行 Amazon Linux 2。两者都为不同的客户端运行一系列 cron 作业。

Ubuntu 服务器会发送一封电子邮件(到一个群组电子邮件地址),其中包含每个 cron 作业的输出。没有输出重定向:对于每个条目,只有一个要执行的命令:

0 2 * * * /apps/ourapp/sync_data -c variable1 -s all -i CLIENT1

...以不同的时间和不同的值重复-i。计划的开始时间始终采用 hh :00、hh :15或 hh :45的形式。

它运行得令人满意:人们收到了电子邮件。

Amazon Linux 机器并非如此。它的邮件日志有这样的条目(略有编辑):

Feb 28 07:05:04 ip-XXXX sSMTP[32212]: Connection lost in middle of processing
Feb 28 08:05:04 ip-XXXX sSMTP[32382]: killed: timeout on stdin while reading body -- message saved to dead.letter.
Feb 28 08:05:04 ip-XXXX sSMTP[32382]: Timeout on stdin while reading body
Feb 28 21:50:04 ip-XXXX sSMTP[2261]: killed: timeout on stdin while reading body -- message saved to dead.letter.
Feb 28 21:50:04 ip-XXXX sSMTP[2261]: Timeout on stdin while reading body
Feb 28 22:05:04 ip-XXXX sSMTP[2505]: killed: timeout on stdin while reading body -- message saved to dead.letter.
Feb 28 22:05:04 ip-XXXX sSMTP[2505]: Timeout on stdin while reading body
Feb 28 22:20:05 ip-XXXX sSMTP[2845]: killed: timeout on stdin while reading body -- message saved to dead.letter.
Feb 28 22:20:05 ip-XXXX sSMTP[2845]: Timeout on stdin while reading body

您会注意到时间戳分钟组件在小时、15 分钟或 45 分钟标记后 5 分钟。这些对应于不发送电子邮件的 cron 作业。

dead.letter始终为空,如果在作业结束之前没有发送日志(正如我推断的那样),这是有道理的。

我读到的内容sSMTP表明您无法stdin使用配置选项覆盖超时(尽管该信息可能已过时)。

那么我能做什么呢?这是因为我们使用sSMTP而不是其他一些邮件机制吗?

cron ssmtp
  • 1 个回答
  • 637 Views
Martin Hope
Milliways
Asked: 2019-02-08 20:00:29 +0800 CST

防止 cron 发送错误消息

  • 0

我已将 cron 设置为每 15 分钟为用户 pi 运行一个任务(在我的 Raspberry Pi 上运行 Raspbian Stretch)。

6,21,36,51 * * * * /usr/bin/mosquitto_sub -h Pi3Plus.local -v -C 1 -t weather >> weather.log

我还设置了 ssmtp 以通过 gmail 发送电子邮件。

cron 任务经常无法连接到服务器,并生成错误消息。

问题是它然后尝试向用户 pi 发送一条消息,该 ssmtp 更改为 pi@gmail 并发送到 gmail,但它失败了。

我已经阅读了 ssmtp、ssmtp.conf、cron、crontab 的手册,但找不到任何东西来阻止这些消息。

我可以编写一个脚本来捕获 cron 任务中的错误消息,以防止它产生错误。

cron ssmtp
  • 2 个回答
  • 562 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    模块 i915 可能缺少固件 /lib/firmware/i915/*

    • 3 个回答
  • Marko Smith

    无法获取 jessie backports 存储库

    • 4 个回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    user12345 无法获取 jessie backports 存储库 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl 为什么大多数 systemd 示例都包含 WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve