وبلاگ رسانگار
با ما حرفه ای باشید

سرور مجازی NVMe

روش جلوگیری و رفع خطاهای وابستگی بسته در اوبونتو

0 20
زمان لازم برای مطالعه: 7 دقیقه


خطاهای وابستگی بسته ممکن است در اوبونتو پس از نصب برخی از برنامه ها رخ دهد. تصمیمات اتخاذ شده توسط کاربران در حین نصب یا مشکلات سطح سیستم خارج از کنترل کاربران می تواند منجر به شکسته شدن بسته ها شود.

اگر کلماتی مانند “وابستگی های برآورده نشده”، “بسته های شکسته”، “بسته ها بازنگشته شده اند” را در terminal خروجی، احتمال دارد که شما ممکن است درگیری های وابستگی داشته باشید. این مقاله چند روش را فهرست می کند که می توان از آنها برای جلوگیری و رفع این نوع خطاهای وابستگی استفاده کرد. توجه داشته باشید که روش های پیشنهادی در زیر هیچ ترتیبی ندارند.

به روز رسانی بسته ها

اولین کاری که باید در صورت بروز خطا انجام دهید، اجرای دستور به روز رسانی است. هر مخازن رسمی و شخص ثالثی را که به سیستم خود اضافه کرده اید به روز می کند و لیست جدیدی از بسته ها را می کشد. اجرای دستور به روز رسانی از terminal انتشار مرحله‌ای بسته‌های رسمی اوبونتو را از طریق به‌روزرسانی رابط کاربری گرافیکی دور می‌زند، بنابراین شما همیشه آخرین لیست بسته‌ها را دریافت می‌کنید.

با اجرای دستور زیر می توانید مخازن را به روز کنید:

$ sudo آپدیت مناسب

تغییر سرور دانلود بسته

اگر هنگام اجرای دستور به‌روزرسانی بالا، خطاهای «نمی‌توان بسته را پیدا کرد» دریافت کردید، آینه‌های دانلود را تغییر دهید. بسته های اوبونتو از سرورهای واقع در سراسر جهان به کاربران نهایی ارائه می شود. گاهی اوقات فقط به‌روزرسانی‌های جزئی یا شکسته بسته از این سرورها در دسترس هستند که در حین به‌روزرسانی با خطا مواجه می‌شوند. این مشکل معمولاً پس از مدتی به طور خودکار حل می شود که همه بسته های اوبونتو به درستی در این آینه ها کلون شوند. با این حال، برای رفع این مشکل می توانید به صورت دستی مکان آینه را تغییر دهید.

برای تغییر سرور دانلود، برنامه «Software & Updates» را از راه‌انداز برنامه اجرا کنید. در برگه «نرم‌افزار اوبونتو»، انتخاب «سرور اصلی» در فهرست کشویی «دانلود از» تقریبا تضمینی برای رفع هرگونه مشکل در دسترس بودن بسته است. با این حال، بسته به سرعت دانلود ممکن است پایین باشد روی موقعیت مکانی و نزدیکی شما به سرورها اوبونتو به طور پیش‌فرض سروری را انتخاب می‌کند که حداکثر سرعت را بر اساس آن به شما بدهد روی موقعیت فعلی شما. می توانید با انتخاب هر سرور لیست شده یا با کلیک کردن، آن را لغو کنید روی “بهترین سرور” را انتخاب کنید تا انتخاب را ترک کنید روی اوبونتو

روش جلوگیری و رفع خطاهای وابستگی بسته در اوبونتوروش جلوگیری و رفع خطاهای وابستگی بسته در اوبونتو

ارتقاء بسته ها

ارتقاء بسته های نصب شده می تواند خطاهای وابستگی را برطرف کند. دو دستور برای ارتقاء بسته های اوبونتو وجود دارد که هر دو دارای رفتارهای متفاوتی هستند:

  • “ارتقا”: بسته های نصب شده را در صورت موجود بودن به روز رسانی ارتقا می دهد، هیچ بسته ای را حذف نمی کند حتی اگر وابستگی های برآورده نشده و شکسته وجود داشته باشد.
  • “Dist-upgrade”: سعی می کند هوشمندانه بسته ها را ارتقا داده و وابستگی ها را حل کند، وابستگی های شکسته را حذف می کند و هر جا که برای رفع خطاها لازم باشد وابستگی های جدید نصب می کند.

دستورات ارتقاء و dist-upgrade به ترتیب عبارتند از:

$ sudo آپدیت مناسب
$ sudo apt dist-upgrade

پاک کردن بسته های ذخیره شده و باقیمانده

مدیر بسته اوبونتو “apt” بسته های دانلود شده را در یک پوشه کش نگه می دارد. دفعه بعد که نیاز به نصب مجدد بسته ای دارید که قبلاً کش شده است، اوبونتو به جای دانلود مجدد از سرور، بسته deb را از پوشه کش دریافت می کند. پاک کردن این کش فضای دیسک را پاک می کند و همچنین در برخی موارد به رفع وابستگی و خطاهای نصب کمک می کند.

پیشنهاد می‌کنیم بخوانید:  VS Code در اوبونتو

کش بسته Apt را می توان با اجرای دستور زیر پاک کرد:

$ sudo مناسب تمیز

یک دستور apt دیگر “autoclean” وجود دارد که کش بسته را پاک می کند. اما به جای پاک کردن کل پوشه، فقط بسته هایی را که از سرورهای مخزن حذف شده اند حذف می کند.

$ sudo apt autoclean

یک نصب ساختگی انجام دهید

امکان شبیه سازی نصب یک بسته برای بررسی خطاهای احتمالی رخ داده در حین نصب واقعی وجود دارد. دستور زیر را اجرا کنید در حالی که نام بسته را با نام بسته دلخواه خود (بدون نقل قول) جایگزین کنید تا نصب ساختگی انجام شود.

$ sudo apt نصب — خشک اجرا شود “نام بسته”

حذف ساختگی می تواند به همین روش انجام شود:

$ sudo apt حذف — خشک اجرا شود “نام بسته”

تعمیر بسته های شکسته

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

$ sudo apt نصب

پیکربندی بسته‌ها به دلیل وقفه نصب نشد

گاهی اوقات مدیر بسته apt به طور ناگهانی بسته هایی را که راه اندازی نشده اند را پشت سر می گذارد. این وقفه ها معمولاً به دلیل عوامل خارج از کنترل مدیر بسته apt است. به عنوان مثال، اگر به طور تصادفی در را ببندید terminal یا کامپیوتر شما ناگهان خاموش شود، apt نمی تواند راه اندازی را تمام کند. اجرای دستور زیر خطاهای بسته و مشکلات وابستگی ناشی از این مشکل را برطرف می کند.

$ sudo dpkg – پیکربندی

از PPA-Purge استفاده کنید

“بایگانی بسته شخصی” یا PPA یک مخزن نرم افزاری است که به کاربران اوبونتو اجازه می دهد بسته های جدید را از منابع غیر رسمی ارتقا یا نصب کنند. PPA-Purge ابزاری است که این منابع PPA شخص ثالث را حذف می‌کند و بسته‌های نصب شده از PPA را به نسخه‌های موجود کاهش می‌دهد. استفاده از PPA-Purge هرگونه تعارض وابستگی ناشی از بسته‌های نصب شده یا ارتقا یافته از PPA را برطرف می‌کند. برای نصب برنامه خط فرمان PPA-Purge در اوبونتو، دستور زیر را اجرا کنید:

$ sudo apt نصب ppa-purge

برای پاکسازی PPA، دستور را با فرمت زیر اجرا کنید:

$ sudo ppa-purge “ppa: address”

به عنوان مثال، ویرایشگر متن Geany PPA اضافه شده از اینجا با اجرای دستور می توان آن را پاک کرد:

$ sudo ppa-purge ppa:geany-dev/PPA

از Aptitude Package Manager استفاده کنید

Aptitude Package Manager را می توان به جای مدیر بسته پیش فرض apt در اوبونتو برای رفع خطاهای وابستگی استفاده کرد. Aptitude جدیدتر از apt package manager است و گزینه های اضافی را ارائه می دهد terminal ظاهری مبتنی بر و سهولت استفاده عمومی. Aptitude بسیاری از گزینه های apt را در یک دستور ترکیب می کند تا مجبور نباشید چندین دستور را برای رفع خطا اجرا کنید.

به عنوان مثال، استفاده از مدیر بسته aptitude برای حذف حتی یک بسته، گزینه ای برای حذف بسته های استفاده نشده و باقیمانده در اختیار شما قرار می دهد، در حالی که یک دستور جداگانه در apt برای انجام همین کار وجود دارد. Aptitude در حل تعارض وابستگی بسیار هوشمندتر از apt است، معمولاً بازخورد دقیقی برای حل تعارض ها ارائه می دهد، با گزینه های متعددی که می تواند توسط کاربر انتخاب شود. من همیشه از نصب aptitude و PPA-Purge اطمینان می‌دهم روی سیستم من قبل از دریافت هر بسته بسیار آزمایشی.

Aptitude را می توان با اجرای دستور زیر نصب کرد:

$ sudo apt نصب صلاحیت – استعداد – شایستگی

Aptitude و apt بسیاری از گزینه های خط فرمان را به اشتراک می گذارند با aptitude که چند تفاوت دارند. شما می توانید تمام گزینه های استعداد را از اینجا.

پیشنهاد می‌کنیم بخوانید:  روش استفاده از udevadm روی اوبونتو

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

با نصب مجدد بسته “ubuntu-desktop” بسته‌های ضروری که به‌طور پیش‌فرض در اوبونتو نصب شده‌اند را وارد می‌کند. تمام بسته هایی که بستگی دارد را دریافت می کند روی بسته متا اوبونتو دسکتاپ. برای نصب مجدد ubuntu-desktop، دستور زیر را اجرا کنید:

$ sudo apt نصب — دوباره نصب کنید ubuntu-desktop

توجه داشته باشید که دستور بالا فقط بسته‌های هسته ضروری را نصب می‌کند و برنامه‌هایی مانند فایرفاکس، تاندربرد، پخش‌کننده ویدیو و غیره را نصب نمی‌کند.

قبل از ارتقا به نسخه جدیدتر اوبونتو، PPA ها را حذف یا غیرفعال کنید

حتی اگر اوبونتو قبل از انجام ارتقاء سیستم، هر PPA را غیرفعال می‌کند، برای جلوگیری از خطاهای وابستگی برآورده نشده در حین و پس از ارتقای سیستم، باید هر PPA شخص ثالث را به صورت دستی حذف کنید. بهترین راه برای انجام این کار اجرای دستور PPA-Purge است که در بالا توضیح داده شد.

همچنین می توانید فقط مخازن PPA را حذف کنید. با این حال، این ممکن است از بروز هرگونه خطای وابستگی در حین ارتقا جلوگیری کند. PPA ها را می توان از دو طریق حذف کرد، اولی شامل استفاده از خط فرمان و دومی نیاز به استفاده از یک برنامه رابط کاربری گرافیکی دارد. توجه داشته باشید که این روش‌ها تنها مخازن PPA را حذف می‌کنند و بسته‌های نصب شده یا ارتقا یافته قبلی را در سیستم باقی می‌گذارند.

برای حذف PPA با استفاده از خط فرمان، دستور زیر را با فرمت زیر اجرا کنید:

$ sudo add-apt-repository –برداشتن “ppa:name”

به عنوان مثال، ویرایشگر متن Geany PPA اضافه شده از اینجا را می توان با اجرای دستور حذف کرد:

$ sudo add-apt-repository –برداشتن ppa:geany-dev/PPA

برای حذف PPA با استفاده از روش رابط کاربری گرافیکی، معمولاً باید برنامه «Software & Updates» را از راه‌انداز برنامه اجرا کنید. اما به دلیل وجود اشکال در اوبونتو، این روش همیشه کار نمی کند و PPA ها را غیرفعال نمی کند.

برای دور زدن این موضوع، باید مدیر بسته Synaptic را نصب کنیم که یک frontend برای apt است. برای نصب Synaptic دستور زیر را اجرا کنید:

$ sudo apt نصب سیناپسی

«Synaptic Package Manager» را از راه‌انداز برنامه اجرا کنید. کلیک روی «تنظیمات» > «مخزن‌ها». به تب «نرم افزارهای دیگر» بروید و کلیک کنید روی یک PPA که می‌خواهید آن را حذف کنید تا برجسته شود. کلیک روی دکمه “حذف” در پایین برای حذف PPA از سیستم. همچنین می توانید یک PPA را بدون حذف آن غیرفعال کنید تا پس از ارتقای سیستم دوباره فعال شود. برای انجام این کار، فقط تیک کادر مقابل PPA را بردارید. پس از انجام مراحل بالا، پنجره “نرم افزار و به روز رسانی” را ببندید. وقتی از شما خواسته شد که مخازن را به‌روزرسانی کنید، روی آن کلیک کنید روی دکمه “بارگیری مجدد”.

روش جلوگیری و رفع خطاهای وابستگی بسته در اوبونتوروش جلوگیری و رفع خطاهای وابستگی بسته در اوبونتو

هنگام اضافه کردن PPA های جدید به سیستم محتاط باشید

اغلب اوقات خطاهای وابستگی هنگام استفاده از PPA های شخص ثالث یا نصب بسته های deb از منابع غیر رسمی رخ می دهد. همچنین احتمال ورود بدافزار از طریق PPA به سیستم شما وجود دارد. بنابراین، هنگام افزودن هر PPA تصادفی به سیستم خود همیشه باید مراقب باشید. فقط در صورتی یک PPA اضافه کنید که به منبع و نگهبانان / توسعه دهندگان آن اعتماد دارید. حتی با وجود اینکه تاکنون در مورد بدافزارها یا ابزارهای تبلیغاتی مزاحم توزیع شده از طریق PPA ها نشنیده ایم، همیشه این خطر وجود دارد زیرا این مخازن شخص ثالثی هستند که بسته های آنها توسط توسعه دهندگان اوبونتو تأیید نشده است.

نتیجه

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

برای نگارش بخشهایی از این متن ممکن است از ترجمه ماشینی یا هوش مصنوعی GPT استفاده شده باشد
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم

زمان انتشار: 1403-01-05 06:30:04

امتیاز شما به این مطلب
دیدگاه شما در خصوص مطلب چیست ؟

آدرس ایمیل شما منتشر نخواهد شد.

لطفا دیدگاه خود را با احترام به دیدگاه های دیگران و با توجه به محتوای مطلب درج کنید