检查gzip在cron作业中是否正常



我已经开始得到一些问题与损坏的gzip文件。我不确定它何时发生,同事如何设置我们的存储已经退出等,所以我不是cron作业等方面的专家,但这是它今天的样子:

/var/spool/new_files/*.csv
{
daily
rotate 12
missingok
notifempty
delaycompress
compress
sharedscripts
postrotate
service capture_data restart >/dev/null 2>&1 || true
endscript
}

原则上在午夜脚本重新启动var/spool/new_files/中的所有csv文件,更改它们的名称(增加1)并将其命名为"2"并将其移动到我们的长期存储

我不知道文件是在gzip后损坏的,还是在"传输"过程中发生的。去仓库。如果运行zcat file_name | tail,就得到invalid compressed data--length error。此错误每月随机发生1-3次。

所以我要做的第一件事是运行gzip-k并保留原来的

  • 检查文件被压缩后是否损坏<<ul>
  • 重试一次/gh>
  • 如果这也失败,在日志中添加一个错误
  • 停止cron作业
  • 如果gzip文件创建后可以将其移动到长时间存储
  • 测试它们是否正常,如果不正常:<<ul>
  • 重试一次/gh>
  • 如果这也失败,在日志中添加一个错误
  • 停止cron作业
  • 扔掉原始文件
  • 我建议的逻辑有意义吗?如何将其添加到cron作业中有什么建议吗?

    看起来还行…如何在不解压的情况下检查Unix .tar.gz文件是否为有效文件?

    您可以创建一个.sh,在其中添加您需要的所有命令,然后您可以在crontab中添加脚本.sh:

    /var/spool/cron/

    如果你想运行. sh脚本与根添加或修改/var/spool/cron/root文件…以类似的方式,您可以添加由其他用户运行的cron。

    cron应该是这样的:

    0 0 * * * sh <path to your sh>
    

    相关内容

    • 没有找到相关文章

    最新更新