Yadda ake Bincika Jimlar MD5 na Fakitin Shigarwa a cikin Debian/Ubuntu Linux


Shin kun taɓa mamakin dalilin da yasa aka ba binary ko kunshin da aka sanya akan tsarin ku baya aiki bisa ga tsammaninku, ma'ana baya aiki daidai kamar yadda yakamata ayi, watakila ba zai iya fara faruwa ba kwata-kwata.

Yayin zazzage fakitin, ƙila ku fuskanci ƙalubale na haɗin yanar gizo mara tsayayye ko katsewar wutar lantarki da ba zato ba tsammani, wannan na iya haifar da shigar da gurɓataccen fakitin.

Yin la'akari da wannan a matsayin muhimmin abu don kiyaye fakitin da ba a lalata ba a kan tsarin ku, don haka mataki ne mai mahimmanci don tabbatar da fayilolin da ke cikin tsarin fayil a kan bayanin da aka adana a cikin kunshin ta amfani da labarin mai zuwa.

Yadda Ake Tabbatar Da Shigar Fakitin Debian Akan MD5 Checksums

A kan tsarin Debian/Ubuntu, zaku iya amfani da kayan aikin debsum don bincika jimlar MD5 na fakitin da aka shigar. Idan kuna son sanin bayanin game da fakitin debssum kafin shigar da shi, zaku iya amfani da APT-CACHE kamar haka:

$ apt-cache search debsums

Na gaba, shigar da shi ta amfani da umarnin da ya dace kamar haka:

$ sudo apt install debsums

Yanzu lokaci ya yi don koyon yadda ake amfani da kayan aikin debsum don tabbatar da MD5sum na fakitin da aka shigar.

Lura: Na yi amfani da sudo tare da duk umarnin da ke ƙasa saboda wasu fayiloli ƙila ba su karanta izini ga masu amfani na yau da kullun ba.

Bugu da ƙari, fitarwa daga umarnin debssum yana nuna maka wurin fayil a hagu da sakamakon binciken a dama. Akwai yiwuwar sakamako guda uku da za ku iya samu, sun haɗa da:

  1. Ok - yana nuna cewa jimlar MD5 na fayil yana da kyau.
  2. GASHI - yana nuna cewa jimlar MD5 na fayil bai dace ba.
  3. MUSA - yana nufin cewa an maye gurbin takamaiman fayil ɗin da wani fayil daga wani fakitin.

Lokacin da kuke gudanar da shi ba tare da wani zaɓi ba, debsums yana bincika kowane fayil akan tsarin ku akan fayilolin md5sum.

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

Don ba da damar duba kowane fayil da fayilolin sanyi na kowane fakiti don kowane canje-canje, haɗa da zaɓin -a ko --duk zaɓi:

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

Hakanan yana yiwuwa a bincika fayil ɗin sanyi kawai ban da duk sauran fayilolin fakiti ta amfani da zaɓi -e ko -config zaɓi:

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

Na gaba, don nuna fayilolin da aka canza kawai a cikin fitarwa na ɓarna, yi amfani da zaɓin -c ko --canza zaɓi. Ban sami wasu fayilolin da aka canza a cikin tsarina ba.

$ sudo debsums --changed

Umurni na gaba yana fitar da fayilolin da ba su da bayanin md5sum, a nan muna amfani da zaɓin -l da --list-bacewar zaɓi. A kan tsarina, umarnin ba ya nuna kowane fayil.

$ sudo debsums --list-missing

Yanzu lokaci ya yi da za a tabbatar da adadin md5 na fakiti ɗaya ta hanyar tantance sunansa:

$ 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

Tsammanin cewa kuna gudanar da ɓarna a matsayin mai amfani na yau da kullun ba tare da sudo ba, zaku iya ɗaukar kurakuran izini azaman gargaɗi ta amfani da zaɓin --ingree-permissions:

$ debsums --ignore-permissions 

Yadda Ake Ƙirƙirar MD5 Sums daga Fayilolin Deb

Zaɓin -g yana gaya wa kuɗi don samar da adadin MD5 daga abin da ke cikin bashi, inda:

  1. bace – umurci kuɗaɗen kuɗi don samar da jimillar MD5 daga bashin don fakitin da ba su samar da ɗaya ba.
  2. duk - yana ba da umarni ga ƙima don yin watsi da jimlar diski kuma a yi amfani da wanda ke cikin fayil ɗin bashi, ko aka samar daga gare ta idan babu.
  3. kiyaye – yana gaya wa ɓangarorin kuɗi don rubuta jimlar da aka fitar/var/lib/dpkg/info/package.md5sums fayil.
  4. nocheck - yana nufin ba a bincika jimlar da aka ciro/tallafi akan kunshin da aka shigar.

Lokacin da kuka kalli abubuwan da ke cikin kundin adireshi /var/lib/dpkg/info/ , zaku ga md5sums na fayiloli daban-daban waɗanda ke kunshe kamar a hoton da ke ƙasa:

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

Ka tuna cewa amfani da zaɓin -g iri ɗaya ne da --generate=ɓacewa, zaku iya ƙoƙarin samar da jimlar md5 don kunshin apache2 ta hanyar gudanar da umarni mai zuwa.

$ sudo debsums --generate=missing apache2 

Tun da kunshin apache2 akan tsarina ya riga yana da jimlar md5, zai nuna fitarwa a ƙasa, wanda yayi daidai da gudana:

$ sudo debsums apache2

Don ƙarin zaɓuɓɓuka masu ban sha'awa da bayanin amfani, duba ta cikin shafin mutum na debsums.

$ man debsums

A cikin wannan labarin, mun raba yadda ake tabbatar da fakitin Debian/Ubuntu da aka shigar akan MD5 checksums, wannan na iya zama da amfani don gujewa shigarwa da aiwatar da ɓarna na binaries ko fayilolin fakiti akan tsarin ku ta hanyar duba fayilolin akan tsarin fayil akan bayanan da aka adana a ciki. kunshin.

Don kowace tambaya ko ra'ayi, yi amfani da fam ɗin sharhin da ke ƙasa. A iya tunanin, zaku iya ba da shawarwari ɗaya ko biyu don inganta wannan post ɗin.