使用cksum确保多台服务器上的Linux(suse)程序级别

使用cksum确保多台服务器上的Linux(suse)程序级别,linux,unix,checksum,suse,md5sum,Linux,Unix,Checksum,Suse,Md5sum,我们有一个黄金形象新的服务器是从新的图像创建 随着时间的推移,其中一些由于部署管理不善而变得不同步 我想扫描所有这些服务器的bin文件夹,并将其与GOLD映像中的内容进行比较。(即:如果不同的标志是单向的。如果相同,则表示相同;如果缺少,则表示缺少;如果有但不在黄金上。添加?) 我打算通过下面的方式完成 在黄金图像上运行以下示例 for x in `ls /bin/` do cksum $x >> /data/OnGold.lst done 将此文件与另一个脚本一起分发到所有服务器

我们有一个黄金形象新的服务器是从新的图像创建

随着时间的推移,其中一些由于部署管理不善而变得不同步

我想扫描所有这些服务器的bin文件夹,并将其与GOLD映像中的内容进行比较。(即:如果不同的标志是单向的。如果相同,则表示相同;如果缺少,则表示缺少;如果有但不在黄金上。添加?)

  • 我打算通过下面的方式完成
  • 在黄金图像上运行以下示例

    for x in `ls /bin/`
    do
    cksum $x >> /data/OnGold.lst
    done
    
  • 将此文件与另一个脚本一起分发到所有服务器,该脚本将使用不同的日志名执行相同的操作

  • 脚本执行后,另一个脚本将区分这两个文件,并根据cksum或文件丢失或除了OnGold.lst之外报告差异

  • (这就是我可以用一些建议来实现这一点的最佳方式?或者如果有人知道一些开源工具可以完成同样的事情?假设。我很确定diff会这样做,因为它会建议项目是否有误或其他,但我不知道如何将其格式化为报告格式。)


    非常感谢您的帮助?

    您的软件包管理器很可能可以选择验证特定软件包拥有的所有文件。我只对包中未包含的文件使用校验和,然后我建议使用比
    cksum
    的简单CRC更强的校验和-可能是
    md5sum
    sha1sum
    …Hi twalberg,讨论中的所有程序都没有使用特定的包管理器,大多数是定制的shell脚本和esqlc程序。我愿意使用md5sum/etc。我可以从diff/etc的结果中获得一些关于报告方面的帮助/指导/示例。