سیستم عامللینوکس

چگونه بسته های شکسته در لینوکس را پیدا و رفع کنیم؟

نحوه تعمیر بسته های شکسته در لینوکس

همانطور که میدانید، Package Manager در لینوکس به شما اجازه می دهد تا نصب و حذف بسته ها را کنترل کنید. همچنین به شما در یافتن بسته های شکسته در لینوکس و نصب مجدد آنها برای رفع مشکلات مختلف مرتبط با بسته های لینوکس کمک می کند.

اگر نمی دانید از چه دستوراتی برای یافتن و تعمیر بسته های شکسته در لینوکس استفاده کنید، در ادامه با ما همراه باشید. ما در مورد بسته های شکسته در انواع توزیع های لینوکس به طور مختصر بحث خواهیم کرد، چگونه می توانید بررسی کنید که آیا سیستم شما حاوی بسته های شکسته است یا خیر، و چگونه آنها را به درستی دوباره نصب کنید.

بسته های شکسته چیست؟

هنگامی که یک بسته جدید را در لینوکس نصب می کنید، Package Manager سیستم شما مسئولیت کل فرآیند نصب را بر عهده دارد. اما گاهی اوقات در صورت بروز مشکلات غیرمنتظره، نصب متوقف می شود و بسته کامل نصب نمی شود. چنین بسته هایی در لینوکس بسته های شکسته نامیده می شوند.

برای مثال مدیر بسته APT در صورت یافتن بسته شکسته در سیستم، اجازه نصب بیشتر بسته ها را نمی دهند. در چنین شرایطی، تعمیر بسته شکسته تنها گزینه ای است که باید به سراغ آن بروید.

مدیریت بسته ها در توزیع های لینوکس

مدیر بسته ها در لینوکس قادر به رسیدگی به بسیاری از مسائل از جمله نصب ناموفق هستند. اما گاهی اوقات مشکلات مختلفی پیش می آید که فقط به صورت شهودی قابل حل هستند. راه حل رفع بسته های شکسته در لینوکس شامل چندین مرحله است که عبارتند از:

  • شناسایی بسته های شکسته
  • نصب مجدد آن ها
  • به روز رسانی لیست بسته های سیستم

نحوه یافتن و تعمیر بسته های شکسته

هر مدیر بسته ای انواع مختلفی از بسته ها را مدیریت می کند. به عنوان مثال، DNF و YUM با Red Hat Package Manager (RPM) برای دانلود و نصب بسته های RPM کار می کنند. APT نیز برای نرم افزار پایه dpkg در توزیع های مبتنی بر دبیان عمل می کند.

نصب مجدد بسته های شکسته در دبیان

APT مدیر بسته پیش‌فرض است که روی هر توزیع مبتنی بر دبیان از پیش نصب شده است. به غیر از APT، کاربران دبیان و اوبونتو می توانند بسته ها را به صورت دستی با استفاده از dpkg دانلود و نصب کنند.

برای تعمیر بسته های شکسته در توزیع های مبتنی بر دبیان با استفاده از APT، ترمینال را با فشار دادن کلیدهای ترکیبی Ctrl + Alt + T باز کرده و دستور زیر را وارد کنید:

sudo apt update --fix-missing

نصب مجدد بسته های شکسته در دبیان

سپس لیست بسته سیستم خود را از منابع موجود به روز کنید.

sudo apt update

اکنون با استفاده از آرگومان -f ، بسته های شکسته را نصب کنید. APT به طور خودکار بسته های شکسته را در سیستم شما جستجو می کند و آنها را از مخزن رسمی دوباره نصب می کند.

sudo apt install -f

نصب مجدد بسته های شکسته در دبیان

اگر مراحل فوق برای شما کار نکرد، می توانید با استفاده از dpkg مشکل را حل کنید. ابتدا dpkg را مجبور به پیکربندی مجدد تمام بسته‌های در انتظاری که قبلاً بازگشایی شده‌اند اما نیاز به پیکربندی دارند، کنید. آرگومان -a در دستور مخفف همه است.

sudo dpkg --configure -a

بسته های شکسته در لینوکس

Pipe grep با dpkg برای دریافت لیستی از تمام بسته هایی که توسط dpkg به عنوان مورد نیاز علامت گذاری شده اند استفاده میشود.

sudo dpkg -l | grep ^..r

از پرچم –remove برای حذف تمام بسته های شکسته استفاده کنید.

sudo dpkg --remove --force-remove-reinstreq

کش بسته را پاک کنید و اسکریپت ها را با استفاده از apt clean نصب کنید.

sudo apt clean

اکنون، لیست های بسته سیستم خود را با استفاده از دستور زیر به روز کنید:

sudo apt update

رفع بسته های شکسته در Fedora/CentOS و RHEL

اگرچه YUM و DNF در مدیریت خودکار بسته‌های شکسته عالی عمل می کند، اما گاهی اوقات مشکلاتی به وجود می‌آیند زیرا هزاران بسته بر روی یک سیستم لینوکس نصب شده‌اند. در چنین شرایطی، می‌توانید از RPM (مدیر بسته پایه برای Fedora و CentOS) برای رفع سریع چنین مشکلاتی استفاده کنید.

تمام بسته های موجود در سیستم خود را با استفاده از آرگومان -V تایید کنید.

sudo rpm -Va

یک لیست طولانی حاوی تمام بسته های نصب شده روی سیستم خود خواهید دید. بسته ای که فکر می کنید ممکن است باعث مشکل بسته شکسته شود را دوباره نصب کنید.

sudo dnf --refresh reinstall packagename

تشخیص اینکه کدام بسته باعث ایجاد مشکل از یک لیست چند صد بسته ای شده است ممکن است خسته کننده باشد. اگرچه RPM یک مدیر بسته قدرتمند است و به ندرت با چنین مشکلاتی مواجه خواهید شد، اما در صورتی که در آینده نزدیک به وضعیت مشابهی برخورد کنید، دانستن چگونگی رفع این مشکلات همچنان مهم است.

همچنین بخوانید:

یوسف وفایی

فارغ التحصیل کارشناسی IT، علاقه مند به برنامه نویسی و علم امنیت، عاشق یادگیری حرفه های جدید، کنجکاو برای همه چیز، همچنین همیشه تلاش میکنم تا به هدفم برسم...

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *


دکمه بازگشت به بالا