آیا برای شما نیز پیش آمده است که هنگام تلاش برای بروز رسانی لیستهای منبع نرم افزار در اوبونتو، با خطای W: Some index files failed to download روبهرو شوید؟ این خطا، با راهاندازی مجدد سیستم و اینترنت نیز برطرف نمیشود. در این مقاله، روشهایی برای حل این مشکل ارائه شده است.
سناریوی مربوط به رخداد و رفع خطای W: Some index files failed to download به صورت زیر است:
دستور زیر را برای بروز رسانی سرور اوبونتوی خود اجرا کنید:
$ sudo apt update
در این صورت، با خطای زیر روبهرو میشوید:
Err:1 http://in.archive.ubuntu.com/ubuntu focal InRelease
Could not connect to in.archive.ubuntu.com:80 (2403:8940:ffff::f), connection timed out Could not connect to in.archive.ubuntu.com:80 (103.97.84.254), connection timed out
Err:2 http://in.archive.ubuntu.com/ubuntu focal-updates InRelease
Unable to connect to in.archive.ubuntu.com:http:
Err:3 http://in.archive.ubuntu.com/ubuntu focal-backports InRelease
Unable to connect to in.archive.ubuntu.com:http:
Err:4 http://in.archive.ubuntu.com/ubuntu focal-security InRelease
Unable to connect to in.archive.ubuntu.com:http:
Reading package lists... Done
Building dependency tree
Reading state information... Done
All packages are up to date.
W: Failed to fetch http://in.archive.ubuntu.com/ubuntu/dists/focal/InRelease Could not connect to in.archive.ubuntu.com:80 (2403:8940:ffff::f), connection timed out Could not connect to in.archive.ubuntu.com:80 (103.97.84.254), connection timed out
W: Failed to fetch http://in.archive.ubuntu.com/ubuntu/dists/focal-updates/InRelease Unable to connect to in.archive.ubuntu.com:http:
W: Failed to fetch http://in.archive.ubuntu.com/ubuntu/dists/focal-backports/InRelease Unable to connect to in.archive.ubuntu.com:http:
W: Failed to fetch http://in.archive.ubuntu.com/ubuntu/dists/focal-security/InRelease Unable to connect to in.archive.ubuntu.com:http:
W: Some index files failed to download. They have been ignored, or old ones used instead.
همانطور که در خروجی بالا مشاهده میکنید، یکی از سایتهای مربوط به مخزن مورد نظر در دسترس نیست و برای رفع این خطا باید آن را غیر فعال کرده و یا با یک سایت دیگر جایگزین نماییم.
این مطلب نیز ممکن است برای شما مفید باشد: حذف مخزن و کلید GPG در اوبونتو
خطای W: Some index files failed to download، معمولاً بهمحض در دسترس شدن سایت، خود به خود رفع میشود. با این حال، در صورتی که میخواهید خودتان این خطا را رفع نمایید، یکی از روشهای زیر را دنبال کنید.
روش 1: یافتن بهترین سایت دارای مخزن APT اوبونتو
یکی از راههای پیشنهادی برای حل این مشکل، یافتن بهترین سایت بایگانی Apt برای موقعیت شما و به روز کردن فایل /etc/apt/source.list است. در اینجا، تمام روشهای ممکن برای پیدا کردن بهترین سایتِ شامل مخزن APT اوبونتو، بر اساس سرعت بارگیری ارائه شده است. اگرچه این سایتها ممکن است، همیشه نزدیکترین سایت به موقعیت شما نباشند؛ اما بهترین نرخ بارگیری و وضعیت بروز رسانی ممکن را داراست.
روش 2. بازگشت به سایت مخزن اصلی
در این روش، قبل از تغییر لیست منابع، بهتر است ابتدا از آنها نسخه پشتیبان تهیه کنید:
$ sudo mv /etc/apt/sources.list{,.backup}
$ sudo mv /etc/apt/sources.list.d{,.backup}
اوبونتو دارای لیست منابع اصلی در فایل /usr/share/doc/apt/examples/source.list است. با استفاده از دستور زیر میتوانید، به محتوای این فایل نگاهی بیندازید:
$ cat /usr/share/doc/apt/examples/sources.list
خروجی اجرای دستور، مشابه زیر خواهد بود:
# See sources.list(5) manpage for more information
# Remember that CD-ROMs, DVDs and such are managed through the apt-cdrom tool.
deb http://us.archive.ubuntu.com/ubuntu focal main restricted
deb-src http://us.archive.ubuntu.com/ubuntu focal main restricted
deb http://security.ubuntu.com/ubuntu focal-security main restricted
deb-src http://security.ubuntu.com/ubuntu focal-security main restricted
deb http://us.archive.ubuntu.com/ubuntu focal-updates main restricted
deb-src http://us.archive.ubuntu.com/ubuntu focal-updates main restricted
اکنون بصورت زیر، یک لیست منبع جدید ایجاد نمایید:
$ sudo mkdir /etc/apt/sources.list.d
$ sudo cp /usr/share/doc/apt/examples/sources.list /etc/apt/sources.list
$ sudo apt update
با این کار آدرس سایت مخزن به سرور اصلی مخزن اوبونتو بازمیگردد.
افزودن مخازن اضافی
مخزن اصلی که اکنون فعال شده است، شامل نرم افزارهای رایگان و منبعباز پشتیبانی شده از طرف Canonical است. اگر میخواهید علاوهبر بستههای رایگان و منبع باز، بستههای غیر رایگان و نرم افزارهایی که تحت مجوزهای کاملاً رایگان نیستند را نیز نصب کنید، باید مخازن زیر را فعال نمایید:
- Restricted: درایورهای اختصاصی برای دستگاهها.
- Multiverse: نرم افزار محدود شده توسط حق چاپ یا مسائل حقوقی.
- Universe: نرم افزار رایگان و منبع آزاد.
برای فعال کردن این مخازن کافیست، دستور زیر را اجرا کنید:
$ sudo add-apt-repository restricted
$ sudo add-apt-repository multiverse
$ sudo add-apt-repository universe
$ sudo apt update
اکنون میتوانید، همه مخازن فعال شده را به صورت بررسی نمایید:
$ grep ^deb /etc/apt/sources.list
غیرفعال سازی مخازن منبع
اگر به فایل Source.list جدید نگاه کنید، مخزن منبع نیز فعال شده است. خطوط آغاز شده با deb-src نشانگر مخازن منبع است که شامل بستههای منبع است. این خطوط، برای توسعه دهندگان مفید است.
به منظور غیرفعال کردن مخازن منبع، فایل /etc/apt/source.list را باز کرده و به صورت زیر، یک نماد هش (#) در ابتدای خط آغاز شده با deb-src قرار دهید.
#deb-src http://us.archive.ubuntu.com/ubuntu focal-updates main restricted
[...]
اکنون لیست منابع را به روز کنید و ببینید که آیا این مشکل برطرف شده است یا خیر.
اگر خارج از آمریکا زندگی میکنید، سایتهای اصلی احتمالاً کندتر است. در این حالت میتوانید، همانطور که در روش سوم توضیح داده شده است، سایت مخزن مورد نظر را به نزدیکترین موقعیت تغییر دهید.
روش 3. انتخاب نزدیکترین سایت از سایتهای رسمی مخزن اصلی اوبونتو
تعداد زیادی سایتهای رسمی مخزن اصلی اوبونتو وجود دارد. این سایتها، مخازن و بایگانیهای کلیه نرم افزارها را برای توزیعهای اوبونتو فراهم میکنند. در اینجا، تمام سایتهای موجود ارائه شده است:
ابتدا، کشور (نزدیکترین مکان) مورد نظر خود را انتخاب نمایید. به عنوان مثال، در شکل زیر، کشور هندوستان انتخاب شده است.
سپس در صفحه بعدی، نسخه توزیع اوبونتو را انتخاب نمایید.
اکنون، همانطور که در تصویر زیر نشان داده شده است، منابع Source.list را دریافت خواهید کرد. آن خطوط را کپی کرده و در فایل /etc/apt/source.list خود اضافه نمایید. اگر مخزن منبع را نمیخواهید، کافیست آن را کامنت کنید.
افزودن مخازن اضافی
تا اینجا، تنها مخزن اصلی اضافه شده است. برای فعال کردن مخزنهای مفید دیگر کافیست، دستور زیر را اجرا نمایید.
$ sudo add-apt-repository restricted
$ sudo add-apt-repository multiverse
$ sudo add-apt-repository universe
$ sudo apt update
روش 4. کپی کردن لیستهای منبع از سیستمهای دیگر
اگر دستگاه دیگری دارید که همان نسخه اوبونتو روی آن اجراست، کافیست محتویات فایل Source.list آن را کپی کرده و از آنها در سیستم خود استفاده نمایید. این سادهترین و سادهترین راه است.
اگر مخازن اضافی، مانند Restricted ،Multiverse و Universe، هنوز در آن فایل فعال نشدهاند، از دستور زیر استفاده کنید:
$ sudo add-apt-repository restricted
$ sudo add-apt-repository multiverse
$ sudo add-apt-repository universe
$ sudo apt update
نکته: اوبونتو بصورت دورهای، بروزرسانیها و پچهای امنیتی را منتشر میکند. شما بهتر است، آنها را نصب کنید تا سیستم خود را ایمن نمایید. برای نصب خودکار این به روزرسانیها و پچها، باید بسته unattended-upgrade را نصب کرده و به درستی پیکربندی نمایید.
منبع:
ostechnix
0 دیدگاه
نوشتن دیدگاه