مدیریت بسته (Package managers) در لینوکس به شما این امکان را میدهند نصب و حذف بستهها را کنترل کنید. علاوهبراین، مدیریت بسته به شما در یافتن بستههای نقض شده در سیستم و نصب مجدد آنها برای رفع مشکلات مختلف مرتبط با بستههای لینوکس کمک میکنند.
اگر نمیدانید از کدامین دستورات برای یافتن بستههای نقض شده در لینوکس استفاده کنید، این راهنما برای شما مناسب است. ما در این مقاله در مورد بستههای نقض شده با جزئیات مختصر، اینکه چگونه میتوانید سیستم خود را شامل بستههای خراب بررسی کنید و نحوه نصب مجدد آنها را به درستی بررسی خواهیم کرد.
بستههای نقض شده چیست؟
هنگام نصب یک بسته جدید در لینوکس، مدیریت بسته سیستم شما کل مراحل نصب را بر عهده دارد. این مدیریت بسته روشهای داخلی برای کنترل موارد استثنا و خطاها را دارند. اما گاهی اوقات، در صورت بروز مشکلات غیر منتظره، نصب متوقف میشود و بسته کامل نصب نمیشود. به چنین بستههایی در لینوکس بستههای نقض شده گفته میشود.
در صورت یافتن بسته نقض شده روی سیستم، مدیریت بسته (Package managers) مانند Apt اجازه نصب بیشتر بستهها را نمیدهند. در چنین شرایطی، تعمیر بستههای نقض تنها انتخابی است که باید انجام دهید.
چگونه بستههای نقض شده را پیدا و رفع کنیم؟
هر مدیریت بسته انواع مختلف بستهها را مدیریت میکند. به عنوان مثال، DNF و Yum برای بارگیری و نصب بستههای RPM با RedHat Package Manager (RPM) همکاری میکنند. به طور مشابه، Apt در توزیعهای مبتنی بر دبیان به عنوان یک بسته برای نرم افزار پایه dpkg عمل میکند.
نصب مجدد بستههای نقض شده در دبیان
Apt مدیریت بسته پیش فرض است که از قبل روی هر توزیع مبتنی بر Debian نصب میشود. به غیر از Apt، کاربران دبیان میتوانند بستهها را با استفاده از dpkg به صورت دستی نیز بارگیری و نصب کنند.
برای رفع بستههای نقض شده در توزیعهای مبتنی بر دبیان با استفاده از Apt:
۱) با فشار دادن Ctrl + Alt + T روی صفحه کلید ترمینال خود را باز کرده و عبارت زیر را وارد کنید:
sudo apt --fix-missing update
۲) بستههای موجود در سیستم خود را به روز کنید:
sudo apt update
۳) اکنون، بستههای نقض شده را با استفاده از پرچم f- نصب کنید. Apt به طور خودکار بستههای خراب را در سیستم شما جستجو میکند و آنها را دوباره از مخزن رسمی نصب میکند.
sudo apt install -f
اگر مراحل فوق برای شما مفید نبود، میتوانید با استفاده از dpkg مشکل را حل کنید.
۱) dpkg را مجبور به پیکربندی مجدد تمام بستههای معلق که قبلاً نصب نشدهاند اما باید پیکربندی شوند، کنید. پرچم a- در دستور مخفف All است.
sudo dpkg --configure -a
۲) 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
اگرچه Yum و Dnf هنگام مدیریت بستههای نقض شده بسیار عالی هستند، اما گاهی اوقات با وجود هزاران بسته نصب شده روی سیستم لینوکس، مشکلاتی ایجاد میشود. در چنین شرایطی، میتوانید از RPM (مدیر بسته پایه Fedora و CentOS) برای حل سریع چنین مواردی استفاده کنید.
۱) با استفاده از پرچم V- تمام بستههای سیستم خود را تأیید کنید.
sudo rpm -V
۲) لیست بلندی مشاهده خواهید کرد که شامل تمام بستههای نصب شده در سیستم شما است.
۳) بستهای را که فکر میکنید ممکن است باعث خرابی بسته شود دوباره نصب کنید.
sudo dnf --refresh reinstall packagename
مراحل فوق بسیار ناخوشایند است — تشخیص اینکه کدام یک از بستهها باعث ایجاد مشکل شده است، طاقت فرسا است. اگرچه RPM یک مدیر بسته قدرتمند است و به ندرت با چنین مسائلی روبرو خواهید شد، اما در صورت مواجه شدن با وضعیت مشابه در آینده نزدیک، دانستن نحوه رفع این مشکلات هنوز مهم است.
مدیریت بستهها در توزیعهای Linux
مدیریت بسته در لینوکس قادر به حل بسیاری از مشکلات از جمله نصبهای ناموفق هستند. اما گاهی اوقات، مشکلات مختلفی رخ میدهد که فقط به صورت شهودی قابل حل است. راه حل برای تعمیر بستههای نقض شده شامل چندین مرحله است — شناسایی بسته خراب، نصب مجدد آن و به روزرسانی لیست بسته سیستم.
توزیعهای بیشماری از لینوکس در اینترنت وجود دارد که ارزش امتحان کردن را دارد، اما در اعماق هر یک، پایه و اساس مشابهی وجود دارد. محیطهای دسکتاپ با ارائه یک تجربه کاربری منحصر به فرد، هر توزیع را از هم جدا میکنند. اگر در نهایت تصمیم گرفتید که با لینوکس پیش بروید، انتخاب یک محیط دسکتاپ ایده آل متناسب با سلیقه شما باید در اولویت شما باشد.
منبع: MUO