【问题标题】:Is there a way to get pacakge checksum using `zypper`?有没有办法使用 zypper 获取包校验和?
【发布时间】:2023-03-22 23:59:01
【问题描述】:

使用zypper时如何获取包的校验和。我什至尝试了 zypper 的 --xmlout 选项作为

zypper --xmlout --no-refresh install -D -y --no-recommends MozillaFirefox

有没有办法获取要安装的包的校验和?

【问题讨论】:

标签: linux checksum opensuse suse zypper


【解决方案1】:
  1. rpm 文件的校验和

只需下载 rpm 文件,然后使用 md5sum 计算校验和:

zypper install --download-only MozillaFirefox
md5sum $(find /var/cache/zypp/packages -name MozillaFirefox*)
  1. rpm 文件中的文件校验和

下载 rpm 文件,然后使用 --dump 运行 rpm 命令

zypper install --download-only MozillaFirefox
rpm -qp --dump $(find /var/cache/zypp/packages -name MozillaFirefox*)

第四列将是特定文件的校验和。

【讨论】:

  • 有没有办法在不下载包的情况下获取校验和? (与apt-get 一样,我们可以直接在列中获取校验和)
  • apt-get 下载包,然后打印校验和。这就是缓存的用途(我记得是/var/cache/apt)。当然,您可以将 curl 与 bash 进程替换一起使用,例如:rpm -qp --dump <(curl -sS -L 'http://download.opensuse.org/distribution/leap/15.0/repo/oss/x86_64/MozillaFirefox-60.0-lp150.2.2.x86_64.rpm')
  • 没有。 apt-get 打印校验和,即使没有下载包。我给了apt-get --print-uris --yes install checkbox,它输出为 'archive.ubuntu.com/ubuntu/pool/universe/c/checkbox/…' checkbox_1.2.4-0ubuntu1_all.deb 5914 MD5Sum:6eb3220f53f5fcba3709d0b0f1f0ef7 。这个卷曲适合openSUSE。但是对于SLE,我对不同的网址有不同的令牌该怎么办。有没有直接从zypper 获取的方法?
猜你喜欢
  • 2019-12-31
  • 2016-04-30
  • 1970-01-01
  • 2019-11-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多