Kif Tiċċekkja Somom MD5 ta 'Pakketti Installati f'Debian/Ubuntu Linux


Qatt ħsibt għaliex binarju partikolari jew pakkett installat fis-sistema tiegħek ma jaħdimx skond l-aspettattivi tiegħek, li jfisser li ma jaħdimx b'mod korrett kif suppost jagħmel, forsi ma jistax jibda eventwalment għal kollox.

Waqt li tniżżel pakketti, tista 'tiffaċċja sfidi ta' konnessjonijiet tan-netwerk mhux stabbli jew qtugħ ta 'enerġija mhux mistennija, dan jista' jirriżulta f'installazzjoni ta 'pakkett korrotta.

Meta wieħed iqis dan bħala fattur importanti fiż-żamma ta 'pakketti mhux korrotti fis-sistema tiegħek, huwa għalhekk pass vitali li tivverifika l-fajls fis-sistema tal-fajls kontra l-informazzjoni maħżuna fil-pakkett billi tuża l-artikolu li ġej.

Kif Tivverifika Pakketti Debian Installati Kontra MD5 Checksums

Fuq is-sistemi Debian/Ubuntu, tista’ tuża l-għodda debsums biex tiċċekkja s-somom MD5 tal-pakketti installati. Jekk trid tkun taf l-informazzjoni dwar il-pakkett debsums qabel tinstallah, tista' tuża APT-CACHE hekk:

$ apt-cache search debsums

Sussegwentement, installah billi tuża kmand apt kif ġej:

$ sudo apt install debsums

Issa wasal iż-żmien li titgħallem kif tuża l-għodda debsums biex tivverifika MD5sum ta 'pakketti installati.

Nota: Jien użajt sudo mal-kmandi kollha hawn taħt minħabba li ċerti fajls jistgħu ma jkollhomx permessi ta 'qari għal utenti regolari.

Barra minn hekk, l-output mill-kmand debsums jurik il-post tal-fajl fuq ix-xellug u r-riżultati tal-kontroll fuq il-lemin. Hemm tliet riżultati possibbli li tista’ tikseb, dawn jinkludu:

  1. OK – jindika li s-somma MD5 ta’ fajl hija tajba.
  2. FAIL – juri li s-somma MD5 ta’ fajl ma taqbilx.
  3. SOSTITUT – ifisser li l-fajl speċifiku ġie sostitwit b'fajl minn pakkett ieħor.

Meta tħaddem mingħajr ebda għażla, debsums jiċċekkja kull fajl fis-sistema tiegħek mal-fajls md5sum tal-istokk.

$ sudo debsums
/usr/bin/a11y-profile-manager-indicator                                       OK
/usr/share/doc/a11y-profile-manager-indicator/copyright                       OK
/usr/share/man/man1/a11y-profile-manager-indicator.1.gz                       OK
/usr/share/accounts/providers/facebook.provider                               OK
/usr/share/accounts/qml-plugins/facebook/Main.qml                             OK
/usr/share/accounts/services/facebook-microblog.service                       OK
/usr/share/accounts/services/facebook-sharing.service                         OK
/usr/share/doc/account-plugin-facebook/copyright                              OK
/usr/share/accounts/providers/flickr.provider                                 OK
/usr/share/accounts/qml-plugins/flickr/Main.qml                               OK
/usr/share/accounts/services/flickr-microblog.service                         OK
/usr/share/accounts/services/flickr-sharing.service                           OK
/usr/share/doc/account-plugin-flickr/copyright                                OK
/usr/share/accounts/providers/google.provider                                 OK
/usr/share/accounts/qml-plugins/google/Main.qml                               OK
/usr/share/accounts/services/google-drive.service                             OK
/usr/share/accounts/services/google-im.service                                OK
/usr/share/accounts/services/picasa.service                                   OK
/usr/share/doc/account-plugin-google/copyright                                OK
/lib/systemd/system/accounts-daemon.service                                   OK
/usr/lib/accountsservice/accounts-daemon                                      OK
/usr/share/dbus-1/interfaces/org.freedesktop.Accounts.User.xml                OK
/usr/share/dbus-1/interfaces/org.freedesktop.Accounts.xml                     OK
/usr/share/dbus-1/system-services/org.freedesktop.Accounts.service            OK
/usr/share/doc/accountsservice/README                                         OK
/usr/share/doc/accountsservice/TODO                                           OK
....

Biex tippermetti l-iċċekkjar ta’ kull fajl u fajls ta’ konfigurazzjoni għal kull pakkett għal kwalunkwe tibdil, inkludi l-għażla -a jew --all:

$ sudo debsums --all
/usr/bin/a11y-profile-manager-indicator                                       OK
/usr/share/doc/a11y-profile-manager-indicator/copyright                       OK
/usr/share/man/man1/a11y-profile-manager-indicator.1.gz                       OK
/etc/xdg/autostart/a11y-profile-manager-indicator-autostart.desktop           OK
/usr/share/accounts/providers/facebook.provider                               OK
/usr/share/accounts/qml-plugins/facebook/Main.qml                             OK
/usr/share/accounts/services/facebook-microblog.service                       OK
/usr/share/accounts/services/facebook-sharing.service                         OK
/usr/share/doc/account-plugin-facebook/copyright                              OK
/etc/signon-ui/webkit-options.d/www.facebook.com.conf                         OK
/usr/share/accounts/providers/flickr.provider                                 OK
/usr/share/accounts/qml-plugins/flickr/Main.qml                               OK
/usr/share/accounts/services/flickr-microblog.service                         OK
/usr/share/accounts/services/flickr-sharing.service                           OK
/usr/share/doc/account-plugin-flickr/copyright                                OK
/etc/signon-ui/webkit-options.d/login.yahoo.com.conf                          OK
/usr/share/accounts/providers/google.provider                                 OK
/usr/share/accounts/qml-plugins/google/Main.qml                               OK
/usr/share/accounts/services/google-drive.service                             OK
/usr/share/accounts/services/google-im.service                                OK
/usr/share/accounts/services/picasa.service                                   OK
/usr/share/doc/account-plugin-google/copyright                                OK
...

Huwa wkoll possibbli li tiċċekkja biss il-fajl tal-konfigurazzjoni esklużi l-fajls l-oħra kollha tal-pakkett billi tuża l-għażla -e jew --config:

$ sudo debsums --config
/etc/xdg/autostart/a11y-profile-manager-indicator-autostart.desktop           OK
/etc/signon-ui/webkit-options.d/www.facebook.com.conf                         OK
/etc/signon-ui/webkit-options.d/login.yahoo.com.conf                          OK
/etc/signon-ui/webkit-options.d/accounts.google.com.conf                      OK
/etc/dbus-1/system.d/org.freedesktop.Accounts.conf                            OK
/etc/acpi/asus-keyboard-backlight.sh                                          OK
/etc/acpi/events/asus-keyboard-backlight-down                                 OK
/etc/acpi/ibm-wireless.sh                                                     OK
/etc/acpi/events/tosh-wireless                                                OK
/etc/acpi/asus-wireless.sh                                                    OK
/etc/acpi/events/lenovo-undock                                                OK
/etc/default/acpi-support                                                     OK
/etc/acpi/events/ibm-wireless                                                 OK
/etc/acpi/events/asus-wireless-on                                             OK
/etc/acpi/events/asus-wireless-off                                            OK
/etc/acpi/tosh-wireless.sh                                                    OK
/etc/acpi/events/asus-keyboard-backlight-up                                   OK
/etc/acpi/events/thinkpad-cmos                                                OK
/etc/acpi/undock.sh                                                           OK
/etc/acpi/events/powerbtn                                                     OK
/etc/acpi/powerbtn.sh                                                         OK
/etc/init.d/acpid                                                             OK
/etc/init/acpid.conf                                                          OK
/etc/default/acpid                                                            OK
...

Sussegwentement, biex turi biss fajls mibdula fl-output tad-debsums, uża l-għażla -c jew --changed. Ma sibt l-ebda fajl mibdul fis-sistema tiegħi.

$ sudo debsums --changed

Il-kmand li jmiss jistampa fajls li m'għandhomx info md5sum, hawnhekk nużaw l-għażla -l u --list-missing. Fis-sistema tiegħi, il-kmand ma juri l-ebda fajl.

$ sudo debsums --list-missing

Issa wasal iż-żmien li tivverifika s-somma md5 ta’ pakkett wieħed billi tispeċifika ismu:

$ sudo debsums apache2 
/lib/systemd/system/apache2.service.d/apache2-systemd.conf                    OK
/usr/sbin/a2enmod                                                             OK
/usr/sbin/a2query                                                             OK
/usr/sbin/apache2ctl                                                          OK
/usr/share/apache2/apache2-maintscript-helper                                 OK
/usr/share/apache2/ask-for-passphrase                                         OK
/usr/share/bash-completion/completions/a2enmod                                OK
/usr/share/doc/apache2/NEWS.Debian.gz                                         OK
/usr/share/doc/apache2/PACKAGING.gz                                           OK
/usr/share/doc/apache2/README.Debian.gz                                       OK
/usr/share/doc/apache2/README.backtrace                                       OK
/usr/share/doc/apache2/README.multiple-instances                              OK
/usr/share/doc/apache2/copyright                                              OK
/usr/share/doc/apache2/examples/apache2.monit                                 OK
/usr/share/doc/apache2/examples/secondary-init-script                         OK
/usr/share/doc/apache2/examples/setup-instance                                OK
/usr/share/lintian/overrides/apache2                                          OK
/usr/share/man/man1/a2query.1.gz                                              OK
/usr/share/man/man8/a2enconf.8.gz                                             OK
/usr/share/man/man8/a2enmod.8.gz                                              OK
/usr/share/man/man8/a2ensite.8.gz                                             OK
/usr/share/man/man8/apache2ctl.8.gz                                           OK

Jekk wieħed jassumi li qed tħaddem debsums bħala utent regolari mingħajr sudo, tista' tittratta l-iżbalji tal-permessi bħala twissijiet billi tuża l-għażla --ignore-permissions:

$ debsums --ignore-permissions 

Kif Tiġġenera Somom MD5 minn .Deb Files

L-għażla -g tgħid lid-debsums biex jiġġeneraw somom MD5 mill-kontenut tad-deb, fejn:

  1. nieqes – ordna lid-debsums biex jiġġeneraw somom MD5 mid-deb għal pakketti li ma jipprovdux wieħed.
  2. kollha – jordna lis-debsums biex jinjoraw is-somom fuq id-diska u jużaw dak preżenti fil-fajl deb, jew iġġenerat minnu jekk ma jeżistix.
  3. żomm – jgħid lid-debsums biex jiktbu s-somom estratti/ġenerati fil-fajl /var/lib/dpkg/info/package.md5sums.
  4. nocheck – tfisser li s-somom estratti/ġenerati mhumiex iċċekkjati mal-pakkett installat.

Meta tħares lejn il-kontenut tad-direttorju /var/lib/dpkg/info/, tara md5sums għal diversi fajls li jippakkjaw bħal fl-immaġni hawn taħt:

$ cd /var/lib/dpkg/info
$ ls *.md5sums
a11y-profile-manager-indicator.md5sums
account-plugin-facebook.md5sums
account-plugin-flickr.md5sums
account-plugin-google.md5sums
accountsservice.md5sums
acl.md5sums
acpid.md5sums
acpi-support.md5sums
activity-log-manager.md5sums
adduser.md5sums
adium-theme-ubuntu.md5sums
adwaita-icon-theme.md5sums
aisleriot.md5sums
alsa-base.md5sums
alsa-utils.md5sums
anacron.md5sums
apache2-bin.md5sums
apache2-data.md5sums
apache2.md5sums
apache2-utils.md5sums
apg.md5sums
apparmor.md5sums
app-install-data.md5sums
app-install-data-partner.md5sums
...

Ftakar li l-użu ta '-g għażla huwa l-istess bħal --generate=missing, tista' tipprova tiġġenera somma md5 għall-pakkett apache2 billi tħaddem il-kmand li ġej.

$ sudo debsums --generate=missing apache2 

Peress li l-pakkett apache2 fis-sistema tiegħi diġà għandu somom md5, se juri l-output hawn taħt, li huwa l-istess bħal running:

$ sudo debsums apache2

Għal aktar għażliet interessanti u informazzjoni dwar l-użu, ara l-paġna man debsums.

$ man debsums

F'dan l-artikolu, qsamna kif tivverifika pakketti Debian/Ubuntu installati kontra checksums MD5, dan jista 'jkun utli sabiex tevita l-installazzjoni u l-eżekuzzjoni ta' binarji korrotta jew fajls tal-pakketti fis-sistema tiegħek billi tiċċekkja l-fajls fuq is-sistema tal-fajls mal-informazzjoni maħżuna f' il-pakkett.

Għal kwalunkwe mistoqsija jew feedback, ħu vantaġġ mill-formola tal-kummenti hawn taħt. Immaġinabbli, tista 'wkoll toffri suġġeriment wieħed jew tnejn biex din il-kariga tkun aħjar.