Kā pārbaudīt MD5 instalēto pakotņu summas Debian/Ubuntu Linux
Vai esat kādreiz aizdomājušies, kāpēc jūsu sistēmā instalētā dotā binārā versija vai pakotne nedarbojas atbilstoši jūsu cerībām, proti, tas nedarbojas pareizi, kā paredzēts, iespējams, tas nemaz nevar sākties.
Lejupielādējot paketes, var rasties nestabila tīkla savienojuma vai negaidītas strāvas padeves pārtraukuma problēmas, kā rezultātā var tikt instalēta bojāta pakete.
Uzskatot to par svarīgu faktoru nesabojātu paku uzturēšanai jūsu sistēmā, tāpēc ir ļoti svarīgi pārbaudīt failu sistēmā esošos failus, salīdzinot ar paketē saglabāto informāciju, izmantojot šo rakstu.
Kā pārbaudīt instalētās Debian paketes pret MD5 kontrolsummām
Debian/Ubuntu sistēmās varat izmantot debsums rīku, lai pārbaudītu instalēto pakotņu MD5 summas. Ja vēlaties uzzināt informāciju par debsums pakotni pirms tās instalēšanas, varat izmantot APT-CACHE šādi:
$ apt-cache search debsums
Pēc tam instalējiet to, izmantojot komandu apt šādi:
$ sudo apt install debsums
Ir pienācis laiks uzzināt, kā izmantot debsums rīku, lai pārbaudītu instalēto pakotņu MD5sum.
Piezīme: Esmu izmantojis sudo ar visām tālāk norādītajām komandām, jo dažiem failiem parastajiem lietotājiem, iespējams, nav lasīšanas atļauju.
Turklāt komandas debsums izvade parāda faila atrašanās vietu kreisajā pusē un pārbaudes rezultātus labajā pusē. Jūs varat iegūt trīs iespējamos rezultātus, tostarp:
- Labi - norāda, ka faila MD5 summa ir laba.
- Neveiksmīgs - parāda, ka faila MD5 summa nesakrīt.
- REPLACED - nozīmē, ka konkrētais fails ir aizstāts ar citu pakotnes failu.
Palaižot to bez jebkādām opcijām, debsums pārbauda visus jūsu sistēmas failus, salīdzinot ar krājuma md5sum failiem.
$ 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 ....
Lai iespējotu katra faila un katras paketes konfigurācijas failu pārbaudi attiecībā uz izmaiņām, iekļaujiet opciju -a
vai - 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 ...
Izmantojot opciju -e
vai --config
, ir iespējams pārbaudīt tikai konfigurācijas failu, izņemot visus citus pakotnes failus:
$ 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 ...
Pēc tam, lai parādītu tikai mainītos failus debsumu izvadā, izmantojiet opciju -c
vai --changed
. Es savā sistēmā neatradu nevienu mainītu failu.
$ sudo debsums --changed
Nākamā komanda izdrukā failus, kuriem nav informācijas md5sum, šeit mēs izmantojam opciju -l
un --list-missing
. Manā sistēmā komanda neparāda nevienu failu.
$ sudo debsums --list-missing
Ir pienācis laiks pārbaudīt vienas paketes md5 summu, norādot tās nosaukumu:
$ 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
Pieņemot, ka debsums darbojas kā parasts lietotājs bez sudo, atļauju kļūdas varat uzskatīt par brīdinājumiem, izmantojot opciju --ignore-permissions
:
$ debsums --ignore-permissions
Kā izveidot MD5 summas no .Deb failiem
Opcija -g
liek debsumiem ģenerēt MD5 summas no deb satura, kur:
- trūkst - norādiet debsumiem ģenerēt MD5 summas no deb paketēm, kuras tādas nenodrošina.
- viss - norāda debsums ignorēt diskā esošās summas un izmantot deb failā esošo vai, ja tāda nav, ģenerēt.
- glabāt - liek debsums ierakstīt iegūtās/ģenerētās summas failā /var/lib/dpkg/info/package.md5sums.
- nocheck - nozīmē, ka iegūtās/ģenerētās summas netiek pārbaudītas pēc instalētās pakotnes.
Aplūkojot direktorijas /var/lib/dpkg/info/
saturu, tiks parādīti dažādu failu pakotņu md5sums, kā parādīts zemāk esošajā attēlā:
$ 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 ...
Atcerieties, ka opcijas -g
izmantošana ir tāda pati kā --generate = missing
, varat mēģināt ģenerēt md5 summu apache2 pakotnei, izpildot šo komandu.
$ sudo debsums --generate=missing apache2
Tā kā apache2 pakotnei manā sistēmā jau ir md5 summas, tā parādīs zemāk esošo izvadi, kas ir tāds pats kā palaišana:
$ sudo debsums apache2
Lai iegūtu interesantākas iespējas un informāciju par lietošanu, skatiet debsums man lapu.
$ man debsums
Šajā rakstā mēs dalījāmies, kā pārbaudīt instalētās Debian/Ubuntu paketes pret MD5 kontrolēm sūtījums.
Ja jums ir kādi jautājumi vai atsauksmes, izmantojiet zemāk esošo komentāru veidlapu. Iedomājams, jūs varat arī piedāvāt vienu vai divus ieteikumus, kā padarīt šo ziņu labāku.