自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

如何在Debian/Ubuntu Linux中校驗已安裝軟件包的MD5和?

譯文
系統(tǒng) Linux 系統(tǒng)運(yùn)維
在本文中,我們介紹了如何對照MD5校驗和校驗已安裝的Debian/Ubuntu軟件包,為了避免在你的系統(tǒng)上安裝和執(zhí)行損壞的二進(jìn)制文件或軟件包文件,有必要對照軟件包中存儲的信息來校驗文件系統(tǒng)上的文件。

[[173718]]

【51CTO.com快譯】你有沒有想過為什么安裝在你系統(tǒng)上的某個二進(jìn)制文件或軟件包沒有按預(yù)期的那樣來運(yùn)行,或者說沒有按正常的方式來運(yùn)行,也許它根本就無法啟動。

下載軟件包時,你可能面臨這些挑戰(zhàn):網(wǎng)絡(luò)連接不穩(wěn)定或者突然斷電,這會導(dǎo)致安裝的軟件包受到損壞。

考慮到這是維護(hù)系統(tǒng)上未損壞軟件包的一個重要因素,因而對照存儲在軟件包中的信息,驗證文件系統(tǒng)上的文件是個重要步驟,為此需要閱讀本文。

推薦閱讀:《學(xué)會如何在Linux下生成MD5校驗和并使用它來校驗文件?》(http://www.tecmint.com/generate-verify-check-files-md5-checksum-linux/)

如何對照MD5校驗和校驗已安裝的Debian軟件包?

在Debian/Ubuntu系統(tǒng)上,你可以使用debsums工具來校驗已安裝軟件包的MD5和。如果你想在安裝之前知道關(guān)于debsums軟件包的信息,可以使用APT-CACHE,就像這樣:

  1. $ apt-cache search debsums 

下一步,使用apt命令來安裝它,如下所示:

  1. $ sudo apt install debsums 

現(xiàn)在可以了解如何使用debsums工具,來校驗已安裝軟件包的MD5和了。

說明:我在下面的所有命令中使用了sudo,因為普通用戶可能沒有某些文件的讀取權(quán)限。

此外,來自debsums命令的輸出在左邊顯示了文件位置,在右邊顯示了檢驗結(jié)果。你會得到三種可能的結(jié)果,它們包括:

  • OK――表明某個文件的MD5和是好的。
  • FAILED――表明某個文件的MD5和不匹配。
  • REPLACED――意味著某個特定文件已被來自另一個軟件包的文件所更換。

如果你不用任何選項來運(yùn)行,debsums會對照常規(guī)的md5sum文件來校驗系統(tǒng)上的每個文件。

  1. $ sudo debsums 

掃描文件系統(tǒng)、尋找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選項:

  1. $ 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 
  23. ... 

還有可能只校驗配置文件,不包括軟件包的其他所有文件,為此只要使用-e或--config選項:

  1. $ 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 
  25. ... 

下一步,如果想在debsums的輸出中只顯示變化的文件,請使用-c或--changed選項。我在自己的系統(tǒng)中沒有找到任何變化的文件。

  1. $ sudo debsums --changed 

下一個命令輸出沒有md5sum信息的文件,這里我們使用-l和--list-missing選項。在我的系統(tǒng)上,該命令沒有顯示任何文件。

  1. $ sudo debsums --list-missing 

現(xiàn)在只要指定名稱,就可以校驗單一軟件包的md5和:

  1. $ 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 

假設(shè)你以普通用戶的身份運(yùn)行debsums,沒有sudo權(quán)限,那么可以使用--ignore-permissions選項,把權(quán)限錯誤當(dāng)成警告:

  1. $ debsums --ignore-permissions 

如何利用.Deb文件生成MD5和?

-g選項告訴debsums利用deb內(nèi)容生成MD5和,其中:

  • missing――指令debsums利用deb,為不提供MD5和的軟件包生成MD5和。
  • all――指令debsums忽視磁盤上和,使用deb文件中存在的和,或者如果沒有的話,就用它生成一個。
  • keep――指令debsums把提取/生成的和寫入到/var/lib/dpkg/info/package.md5sums文件。
  • nocheck――意味著提取/生成的和沒有對照已安裝軟件包來進(jìn)行校驗。

如果你看一下目錄/var/lib/dpkg/info/的內(nèi)容,就會看到各個文件的md5sum,如下圖所示:

  1. $ cd /var/lib/dpkg/info  
  2. $ 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 
  25. ... 

記住:使用-g選項與--generate=missing一樣,你可以試著為apache2軟件包生成md5和,只要運(yùn)行下面這個命令:

  1. $ sudo debsums --generate=missing apache2 

由于我系統(tǒng)上的apache2軟件包已經(jīng)有md5和,它會顯示下列輸出,這與運(yùn)行$ sudo debsums apache2的結(jié)果一樣。

想了解更多有意思的選項和使用方面的信息,請參閱debsums參考手冊頁。

  1. $ man debsums 

在本文中,我們介紹了如何對照MD5校驗和校驗已安裝的Debian/Ubuntu軟件包,為了避免在你的系統(tǒng)上安裝和執(zhí)行損壞的二進(jìn)制文件或軟件包文件,有必要對照軟件包中存儲的信息來校驗文件系統(tǒng)上的文件。 

若有任何問題或反饋,歡迎留言交流。

原文標(biāo)題: How to Check MD5 Sums of Installed Packages in Debian/Ubuntu Linux,作者: Aaron Kili

【51CTO譯稿,合作站點轉(zhuǎn)載請注明原文譯者和出處為51CTO.com】

責(zé)任編輯:武曉燕 來源: 51CTO.com
相關(guān)推薦

2019-02-25 09:55:32

UbuntuDebian軟件包

2018-07-10 08:59:07

LinuxArch Linux軟件包

2019-08-19 11:20:33

Linux軟件包命令

2019-08-19 09:19:02

LinuxVimUbuntu

2010-02-05 14:46:20

Ubuntu軟件包

2022-06-26 18:23:07

Ubuntu軟件包

2011-09-15 11:14:12

2023-01-02 11:34:04

LinuxFlatpak軟件包

2023-01-03 15:53:00

LinuxFlatpak軟件包

2021-07-06 18:19:03

Ubuntu 21.1zstd壓縮軟件包

2010-01-07 17:32:09

2021-01-06 13:03:22

UbuntuDebianLinux

2018-06-11 08:50:46

LinuxArch Linux降級軟件包

2018-06-19 10:06:16

Linux軟件測試Nix包管理器

2022-08-04 18:34:18

Ubuntuaptupgrade 命令

2017-03-09 17:40:50

DebianUbuntuMariaDB

2018-10-15 11:00:28

Linux軟件包命令

2021-12-06 18:16:14

SQLCRCMD5

2010-03-01 17:43:55

Linux Xsupp

2019-07-31 08:00:00

UbuntuLinuxapt-fast
點贊
收藏

51CTO技術(shù)棧公眾號