ডেবিয়ান/উবুন্টু লিনাক্সে ইনস্টলড প্যাকেজগুলির MD5 সমষ্টি কীভাবে চেক করবেন
আপনি কি কখনও ভেবে দেখেছেন যে আপনার সিস্টেমে কোনও প্রদত্ত বাইনারি বা প্যাকেজ আপনার প্রত্যাশা অনুযায়ী কাজ করে না, অর্থাত এটি করার মতো বলে এটি সঠিকভাবে কাজ করে না, সম্ভবত এটি ইভেন্ট শুরু হতে পারে না।
প্যাকেজগুলি ডাউনলোড করার সময়, আপনি অস্থিতিশীল নেটওয়ার্ক সংযোগ বা অপ্রত্যাশিত পাওয়ার ব্ল্যাকআউটগুলির চ্যালেঞ্জের মুখোমুখি হতে পারেন, এর ফলে দুর্গন্ধযুক্ত প্যাকেজ ইনস্টল হতে পারে।
এটি আপনার সিস্টেমে নিরবিচ্ছিন্ন প্যাকেজগুলি রক্ষণাবেক্ষণের জন্য একটি গুরুত্বপূর্ণ কারণ হিসাবে বিবেচনা করে, নিম্নলিখিত নিবন্ধটি ব্যবহার করে প্যাকেজে সঞ্চিত তথ্যের বিপরীতে ফাইল সিস্টেমে ফাইলগুলি যাচাই করা একটি গুরুত্বপূর্ণ পদক্ষেপ।
MD5 চেকসামের বিপরীতে ইনস্টল করা ডেবিয়ান প্যাকেজগুলি কীভাবে যাচাই করবেন
ডেবিয়ান/উবুন্টু সিস্টেমে আপনি ইনস্টল করা প্যাকেজগুলির MD5 পরিমাণ পরীক্ষা করতে ডিবসুমস সরঞ্জামটি ব্যবহার করতে পারেন। আপনি যদি ইনস্টল করার আগে ডিবসাম প্যাকেজ সম্পর্কিত তথ্য জানতে চান তবে আপনি এপিটি-ক্যাস ব্যবহার করতে পারেন:
$ apt-cache search debsums
এরপরে, এপিটি কমান্ড ব্যবহার করে এটি ইনস্টল করুন:
$ sudo apt install debsums
ইনস্টল করা প্যাকেজগুলির MD5sum যাচাই করতে কীভাবে debsums সরঞ্জাম ব্যবহার করবেন তা শিখার এখন সময়।
দ্রষ্টব্য: আমি নীচের সমস্ত কমান্ড সহ সুডো ব্যবহার করেছি কারণ নির্দিষ্ট ফাইলগুলিতে নিয়মিত ব্যবহারকারীর জন্য পড়ার অনুমতি নাও থাকতে পারে।
এছাড়াও, debsums কমান্ড থেকে আউটপুট আপনাকে বাম দিকে ফাইলের অবস্থান এবং ডানদিকে চেক ফলাফলগুলি দেখায়। তিনটি সম্ভাব্য ফলাফল আপনি পেতে পারেন, সেগুলির মধ্যে রয়েছে:
- ঠিক আছে - কোনও ফাইলের MD5 যোগফল ভাল তা নির্দেশ করে।
- ব্যর্থ - দেখায় যে কোনও ফাইলের MD5 যোগফল মেলে না
- প্রতিস্থাপন - এর অর্থ হল যে নির্দিষ্ট ফাইলটি অন্য প্যাকেজ থেকে একটি ফাইল দ্বারা প্রতিস্থাপন করা হয়েছে
আপনি যখন এটি কোনও বিকল্প ছাড়াই চালান, ডেবসামগুলি আপনার সিস্টেমে থাকা প্রতিটি ফাইল স্টক এমডি 5সাম ফাইলের বিপরীতে পরীক্ষা করে।
$ 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 ....
যে কোনও পরিবর্তনের জন্য প্রতিটি প্যাকেজের জন্য প্রতিটি ফাইল এবং কনফিগারেশন ফাইলগুলি পরীক্ষা করতে সক্ষম করতে -a
বা - সমস্ত
বিকল্প অন্তর্ভুক্ত করুন:
$ 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 ...
-e
বা --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 ...
এরপরে, কেবলমাত্র ডেবসামগুলির আউটপুটে পরিবর্তিত ফাইলগুলি প্রদর্শনের জন্য -c
বা - পরিবর্তিত
বিকল্পটি ব্যবহার করুন। আমি আমার সিস্টেমে কোনও পরিবর্তিত ফাইল খুঁজে পাইনি।
$ sudo debsums --changed
পরবর্তী কমান্ডটি md5sum সম্পর্কিত তথ্য নেই এমন ফাইলগুলি মুদ্রণ করে, এখানে আমরা -l
এবং - তালিকা-অনুপস্থিত
বিকল্পটি ব্যবহার করি। আমার সিস্টেমে কমান্ডটি কোনও ফাইল প্রদর্শন করে না।
$ sudo debsums --list-missing
এখন একক প্যাকেজের নাম উল্লেখ করে এমডি 5 যোগফল যাচাই করার সময় এসেছে:
$ 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
ধরে নিই যে আপনি সুডো ব্যতীত নিয়মিত ব্যবহারকারী হিসাবে ডাবসসগুলি চালাচ্ছেন, আপনি --ignore-অনুমতি
বিকল্পটি নিয়োগ করে সতর্কতা হিসাবে অনুমতি ত্রুটিগুলি আচরণ করতে পারেন:
$ debsums --ignore-permissions
.Deb ফাইলগুলি থেকে MD5 যোগগুলি কীভাবে তৈরি করা যায়
-g
বিকল্পটি ডাবসামসকে ডেবি বিষয়বস্তু থেকে এমডি 5 যোগ করতে বলে, যেখানে:
- অনুপস্থিত - প্যাকেজগুলি সরবরাহ করে না এমন ডেব থেকে এমডি 5 পরিমাণ উত্পন্ন করার জন্য ডিবসামকে নির্দেশ দিন
- সমস্ত - ডাবসামগুলিকে অন ডিস্কের পরিমাণগুলি উপেক্ষা করার জন্য এবং ডাব ফাইলে উপস্থিত একটিটিকে ব্যবহার করার জন্য নির্দেশ দেয়, বা যদি না থাকে তবে তা থেকে উত্পন্ন হয়
- রাখুন - ডাবসামসকে /var/lib/dpkg/info/package.md5sums ফাইলটিতে উত্তোলিত/উত্পন্ন অঙ্কগুলি লিখতে বলে
- নোচেক - এর অর্থ হল ইনস্টল করা প্যাকেজটির বিপরীতে উত্তোলিত/উত্পন্ন পরিমাণগুলি পরীক্ষা করা হয় না
/var/lib/dpkg/তথ্য/
ডিরেক্টরিটির বিষয়বস্তুগুলি যখন দেখেন, আপনি নীচের চিত্রের মতো বিভিন্ন ফাইলের জন্য md5sums দেখতে পাবেন:
$ 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 ...
মনে রাখবেন -g
বিকল্পটি --generate = অনুপস্থিত
এর মতোই, আপনি নিম্নলিখিত কমান্ডটি চালিয়ে Apache2 প্যাকেজের জন্য একটি এমডি 5 যোগ করতে চেষ্টা করতে পারেন।
$ sudo debsums --generate=missing apache2
যেহেতু আমার সিস্টেমে অ্যাপাচি 2 প্যাকেজটিতে ইতিমধ্যে এমডি 5 অঙ্ক রয়েছে, এটি নীচের আউটপুটটি প্রদর্শন করবে যা চলমান সমান:
$ sudo debsums apache2
আরও আকর্ষণীয় বিকল্প এবং ব্যবহারের তথ্যের জন্য, ডেবসামস ম্যান পৃষ্ঠাটি দেখুন।
$ man debsums
এই নিবন্ধে আমরা কীভাবে MD5 চেকসামের বিপরীতে ইনস্টলড ডেবিয়ান/উবুন্টু প্যাকেজ যাচাই করতে পারি, এটি আপনার সিস্টেমে দূষিত বাইনারি বা প্যাকেজ ফাইলগুলি ইনস্টল করা এবং কার্যকর করতে না পারায় আপনার সিস্টেমে সঞ্চিত তথ্যের বিপরীতে ফাইল সিস্টেমে ফাইলগুলি পরীক্ষা করে তা কার্যকর করা যেতে পারে প্যাকেজ.
যে কোনও প্রশ্ন বা প্রতিক্রিয়ার জন্য, নীচের মন্তব্য ফর্মটি গ্রহণ করুন। কল্পনাপ্রসূতভাবে, আপনি এই পোস্টটি আরও ভাল করার জন্য এক বা দুটি পরামর্শও দিতে পারেন।