阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

教你校验 Debian 软件包的MD5

311次阅读
没有评论

共计 6514 个字符,预计需要花费 17 分钟才能阅读完成。

导读 下载软件包时,你可能面临这些问题:网络连接不稳定或者突然断电,这会导致安装的软件包受到损坏。那么本文将指导你如何在 Linux 下生成 MD5 校验和并使用它来校验文件。

教你校验 Debian 软件包的 MD5

如何对照 MD5 校验和校验已安装的 Debian 软件包

在 Debian/Ubuntu 系统上,你可以使用 debsums 工具来校验已安装软件包的 MD5 和。如果你想在安装之前知道关于 debsums 软件包的信息,可以使用 APT-CACHE,就像这样:

apt-cache search debsums

下一步,使用 apt 命令来安装它,如下所示:

sudo apt install debsums

现在可以了解如何使用 debsums 工具,来校验已安装软件包的 MD5 和了。

说明:我在下面的所有命令中使用了 sudo,因为普通用户可能没有某些文件的读取权限。

此外,来自 debsums 命令的输出在左边显示了文件位置,在右边显示了检验结果。你会得到三种可能的结果,它们包括:

  • · OKDD 表明某个文件的 MD5 和是好的。
  • · FAILEDDD 表明某个文件的 MD5 和不匹配。
  • · REPLACEDDD 意味着某个特定文件已被来自另一个软件包的文件所更换。

如果你不用任何选项来运行,debsums 会对照常规的 md5sum 文件来校验系统上的每个文件,扫描文件系统、寻找 MD5 和

  1. /usr/bin/a11y-profile-manager-indicator OK
  2. /usr/share/doc/a11y-profile-manager-indicator/copyright OK
  3. /usr/share/man/man1/a11y-profile-manager-indicator.1.gz OK
  4. /usr/share/accounts/providers/facebook.provider OK
  5. /usr/share/accounts/qml-plugins/facebook/Main.qml OK
  6. /usr/share/accounts/services/facebook-microblog.service OK
  7. /usr/share/accounts/services/facebook-sharing.service OK
  8. /usr/share/doc/account-plugin-facebook/copyright OK
  9. /usr/share/accounts/providers/flickr.provider OK
  10. /usr/share/accounts/qml-plugins/flickr/Main.qml OK
  11. /usr/share/accounts/services/flickr-microblog.service OK
  12. /usr/share/accounts/services/flickr-sharing.service OK
  13. /usr/share/doc/account-plugin-flickr/copyright OK
  14. /usr/share/accounts/providers/google.provider OK
  15. /usr/share/accounts/qml-plugins/google/Main.qml OK
  16. /usr/share/accounts/services/google-drive.service OK
  17. /usr/share/accounts/services/google-im.service OK
  18. /usr/share/accounts/services/picasa.service OK
  19. /usr/share/doc/account-plugin-google/copyright OK
  20. /lib/systemd/system/accounts-daemon.service OK
  21. /usr/lib/accountsservice/accounts-daemon OK
  22. /usr/share/dbus-1/interfaces/org.freedesktop.Accounts.User.xml OK
  23. /usr/share/dbus-1/interfaces/org.freedesktop.Accounts.xml OK
  24. /usr/share/dbus-1/system-services/org.freedesktop.Accounts.service OK
  25. /usr/share/doc/accountsservice/README OK
  26. /usr/share/doc/accountsservice/TODO OK
  27. ….

为了能够校验每个软件包的每个文件和配置文件,查找任何变化,请加入 - a 或 –all 选项:

sudo debsums --all

校验所有配置文件的 MD5 和:

  1. /usr/bin/a11y-profile-manager-indicator OK
  2. /usr/share/doc/a11y-profile-manager-indicator/copyright OK
  3. /usr/share/man/man1/a11y-profile-manager-indicator.1.gz OK
  4. /etc/xdg/autostart/a11y-profile-manager-indicator-autostart.desktop OK
  5. /usr/share/accounts/providers/facebook.provider OK
  6. /usr/share/accounts/qml-plugins/facebook/Main.qml OK
  7. /usr/share/accounts/services/facebook-microblog.service OK
  8. /usr/share/accounts/services/facebook-sharing.service OK
  9. /usr/share/doc/account-plugin-facebook/copyright OK
  10. /etc/signon-ui/webkit-options.d/www.facebook.com.conf OK
  11. /usr/share/accounts/providers/flickr.provider OK
  12. /usr/share/accounts/qml-plugins/flickr/Main.qml OK
  13. /usr/share/accounts/services/flickr-microblog.service OK
  14. /usr/share/accounts/services/flickr-sharing.service OK
  15. /usr/share/doc/account-plugin-flickr/copyright OK
  16. /etc/signon-ui/webkit-options.d/login.yahoo.com.conf OK
  17. /usr/share/accounts/providers/google.provider OK
  18. /usr/share/accounts/qml-plugins/google/Main.qml OK
  19. /usr/share/accounts/services/google-drive.service OK
  20. /usr/share/accounts/services/google-im.service OK
  21. /usr/share/accounts/services/picasa.service OK
  22. /usr/share/doc/account-plugin-google/copyright OK

还有可能只校验配置文件,不包括软件包的其他所有文件,为此只要使用 - e 或 –config 选项:

sudo debsums --config

只校验配置文件的 MD5 和:

  1. /etc/xdg/autostart/a11y-profile-manager-indicator-autostart.desktop OK
  2. /etc/signon-ui/webkit-options.d/www.facebook.com.conf OK
  3. /etc/signon-ui/webkit-options.d/login.yahoo.com.conf OK
  4. /etc/signon-ui/webkit-options.d/accounts.google.com.conf OK
  5. /etc/dbus-1/system.d/org.freedesktop.Accounts.conf OK
  6. /etc/acpi/asus-keyboard-backlight.sh OK
  7. /etc/acpi/events/asus-keyboard-backlight-down OK
  8. /etc/acpi/ibm-wireless.sh OK
  9. /etc/acpi/events/tosh-wireless OK
  10. /etc/acpi/asus-wireless.sh OK
  11. /etc/acpi/events/lenovo-undock OK
  12. /etc/default/acpi-support OK
  13. /etc/acpi/events/ibm-wireless OK
  14. /etc/acpi/events/asus-wireless-on OK
  15. /etc/acpi/events/asus-wireless-off OK
  16. /etc/acpi/tosh-wireless.sh OK
  17. /etc/acpi/events/asus-keyboard-backlight-up OK
  18. /etc/acpi/events/thinkpad-cmos OK
  19. /etc/acpi/undock.sh OK
  20. /etc/acpi/events/powerbtn OK
  21. /etc/acpi/powerbtn.sh OK
  22. /etc/init.d/acpid OK
  23. /etc/init/acpid.conf OK
  24. /etc/default/acpid OK

下一步,如果想在 debsums 的输出中只显示变化的文件,请使用 - c 或 –changed 选项。我在自己的系统中没有找到任何变化的文件。

sudo debsums --changed

下一个命令输出没有 md5sum 信息的文件,这里我们使用 - l 和 –list-missing 选项。在我的系统上,该命令没有显示任何文件。

sudo debsums --list-missing

现在只要指定名称,就可以校验单一软件包的 md5 和:

sudo debsums apache2

校验已安装软件包的 MD5 和:

  1. /lib/systemd/system/apache2.service.d/apache2-systemd.conf OK
  2. /usr/sbin/a2enmod OK
  3. /usr/sbin/a2query OK
  4. /usr/sbin/apache2ctl OK
  5. /usr/share/apache2/apache2-maintscript-helper OK
  6. /usr/share/apache2/ask-for-passphrase OK
  7. /usr/share/bash-completion/completions/a2enmod OK
  8. /usr/share/doc/apache2/NEWS.Debian.gz OK
  9. /usr/share/doc/apache2/PACKAGING.gz OK
  10. /usr/share/doc/apache2/README.Debian.gz OK
  11. /usr/share/doc/apache2/README.backtrace OK
  12. /usr/share/doc/apache2/README.multiple-instances   OK
  13. /usr/share/doc/apache2/copyright OK
  14. /usr/share/doc/apache2/examples/apache2.monit OK
  15. /usr/share/doc/apache2/examples/secondary-init-script OK
  16. /usr/share/doc/apache2/examples/setup-instance OK
  17. /usr/share/lintian/overrides/apache2 OK
  18. /usr/share/man/man1/a2query.1.gz OK
  19. /usr/share/man/man8/a2enconf.8.gz OK
  20. /usr/share/man/man8/a2enmod.8.gz OK
  21. /usr/share/man/man8/a2ensite.8.gz OK
  22. /usr/share/man/man8/apache2ctl.8.gz OK

假设你以普通用户的身份运行 debsums,没有 sudo 权限,那么可以使用 –ignore-permissions 选项,把权限错误当成警告:

debsums --ignore-permissions
如何利用.Deb 文件生成 MD5 和?

-g  选项告诉 debsums 利用 deb 内容生成 MD5 和,其中:

  • · missingDD 指令 debsums 利用 deb,为不提供 MD5 和的软件包生成 MD5 和。
  • · allDD 指令 debsums 忽视磁盘上和,使用 deb 文件中存在的和,或者如果没有的话,就用它生成一个。
  • · keepDD 指令 debsums 把提取 / 生成的和写入到 /var/lib/dpkg/info/package.md5sums 文件。
  • · nocheckDD 意味着提取 / 生成的和没有对照已安装软件包来进行校验。

如果你看一下目录 /var/lib/dpkg/info/ 的内容,就会看到各个文件的 md5sum,如下图所示:

cd /var/lib/dpkg/info
ls *.md5sums

列出软件包的所有 MD5 和:

  1. a11y-profile-manager-indicator.md5sums
  2. account-plugin-facebook.md5sums
  3. account-plugin-flickr.md5sums
  4. account-plugin-google.md5sums
  5. accountsservice.md5sums
  6. acl.md5sums
  7. acpid.md5sums
  8. acpi-support.md5sums
  9. activity-log-manager.md5sums
  10. adduser.md5sums
  11. adium-theme-ubuntu.md5sums
  12. adwaita-icon-theme.md5sums
  13. aisleriot.md5sums
  14. alsa-base.md5sums
  15. alsa-utils.md5sums
  16. anacron.md5sums
  17. apache2-bin.md5sums
  18. apache2-data.md5sums
  19. apache2.md5sums
  20. apache2-utils.md5sums
  21. apg.md5sums
  22. apparmor.md5sums
  23. app-install-data.md5sums
  24. app-install-data-partner.md5sums

记住:使用 - g 选项与 –generate=missing 一样,你可以试着为 apache2 软件包生成 md5 和,只要运行下面这个命令:

sudo debsums --generate=missing apache2

由于我系统上的 apache2 软件包已经有 md5 和,它会显示下列输出,这与运行 $ sudo debsums apache2 的结果一样。

想了解更多有意思的选项和使用方面的信息,请参阅 debsums 参考手册页。

man debsums

在本文中,我们介绍了如何对照 MD5 校验和校验已安装的 Debian/Ubuntu 软件包,为了避免在你的系统上安装和执行损坏的二进制文件或软件包文件,有必要对照软件包中存储的信息来校验文件系统上的文件。

阿里云 2 核 2G 服务器 3M 带宽 61 元 1 年,有高配

腾讯云新客低至 82 元 / 年,老客户 99 元 / 年

代金券:在阿里云专用满减优惠券

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2024-07-24发表,共计6514字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19351
评论数
4
阅读量
7993676
文章搜索
热门文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见 zabbix!轻量级自建服务器监控神器在 Linux 的完整部署指南 在日常运维中,服务器监控是绕不开的...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
从“纸堆”到“电子化”文档:用这个开源系统打造你的智能文档管理系统

从“纸堆”到“电子化”文档:用这个开源系统打造你的智能文档管理系统

从“纸堆”到“电子化”文档:用这个开源系统打造你的智能文档管理系统 大家好,我是星哥。公司的项目文档存了一堆 ...
国产开源公众号AI知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率

国产开源公众号AI知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率

国产开源公众号 AI 知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率 大家好,我是星哥,...
飞牛NAS玩转Frpc并且配置,随时随地直连你的私有云

飞牛NAS玩转Frpc并且配置,随时随地直连你的私有云

飞牛 NAS 玩转 Frpc 并且配置,随时随地直连你的私有云 大家好,我是星哥,最近在玩飞牛 NAS。 在数...
安装Black群晖DSM7.2系统安装教程(在Vmware虚拟机中、实体机均可)!

安装Black群晖DSM7.2系统安装教程(在Vmware虚拟机中、实体机均可)!

安装 Black 群晖 DSM7.2 系统安装教程(在 Vmware 虚拟机中、实体机均可)! 前言 大家好,...
免费领取huggingface的2核16G云服务器,超简单教程

免费领取huggingface的2核16G云服务器,超简单教程

免费领取 huggingface 的 2 核 16G 云服务器,超简单教程 前言 HuggingFace.co...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
240 元左右!五盘位 NAS主机,7 代U硬解4K稳如狗,拓展性碾压同价位

240 元左右!五盘位 NAS主机,7 代U硬解4K稳如狗,拓展性碾压同价位

  240 元左右!五盘位 NAS 主机,7 代 U 硬解 4K 稳如狗,拓展性碾压同价位 在 NA...
如何安装2026年最强个人助理ClawdBot、完整安装教程

如何安装2026年最强个人助理ClawdBot、完整安装教程

如何安装 2026 年最强个人助理 ClawdBot、完整安装教程 一、前言 学不完,根本学不完!近期,一款名...
安装并使用谷歌AI编程工具Antigravity(亲测有效)

安装并使用谷歌AI编程工具Antigravity(亲测有效)

  安装并使用谷歌 AI 编程工具 Antigravity(亲测有效) 引言 Antigravity...
一句话生成拓扑图!AI+Draw.io 封神开源组合,工具让你的效率爆炸

一句话生成拓扑图!AI+Draw.io 封神开源组合,工具让你的效率爆炸

一句话生成拓扑图!AI+Draw.io 封神开源组合,工具让你的效率爆炸 前言 作为天天跟架构图、拓扑图死磕的...
每天一个好玩的网站-手机博物馆-CHAZ 3D Experience

每天一个好玩的网站-手机博物馆-CHAZ 3D Experience

每天一个好玩的网站 - 手机博物馆 -CHAZ 3D Experience 一句话介绍:一个用 3D 方式重温...