بازگشت به مجله
مدیریت سرورتیم فنی هایوهاست۸ دقیقه مطالعه

تغییر مخزن APT در اوبونتو و دبیان

سرعت به روز رسانی را چند برابر کنید؛ همراه با تفاوت قالب جدید deb822 در اوبونتو ۲۴.۰۴ به بعد که روش قدیمی را بی اثر میکند.

مخزن بسته ها

اگر دستور apt update روی سرور شما کند اجرا میشود یا وسط کار قطع میشود، معمولا مشکل از سرور شما نیست؛ از فاصله تا مخزن پیشفرض است. مخزن های رسمی اوبونتو و دبیان روی سرورهای خارج از کشور هستند و برای سرورهای داخلی، استفاده از یک آینه نزدیک تر تفاوت محسوسی در سرعت ایجاد میکند.

1

اول ببینید سیستم شما از کدام قالب استفاده میکند

این مهمترین مرحله است و اگر از آن رد شوید، ممکن است فایلی را ویرایش کنید که اصلا خوانده نمیشود. تا مدت ها همه چیز در یک فایل به نام sources.list بود. اما از اوبونتو ۲۴.۰۴ و دبیان ۱۳ به بعد، قالب جدیدی به نام deb822 جایگزین شده که ساختار کاملا متفاوتی دارد و در پوشه sources.list.d قرار میگیرد.

پس اول نسخه و ساختار فایل ها را بررسی کنید.

بررسی نسخه سیستم
lsb_release -a
cat /etc/os-release
دیدن اینکه کدام فایل ها وجود دارند
ls -l /etc/apt/sources.list
ls -l /etc/apt/sources.list.d/
  • اگر فایل ubuntu.sources یا debian.sources دیدید، سیستم شما از قالب جدید استفاده میکند.
  • اگر sources.list محتوای واقعی داشت، قالب کلاسیک است.
  • در نسخه های انتقالی ممکن است هر دو وجود داشته باشند؛ آن که محتوا دارد ملاک است.
2

قبل از هر تغییری نسخه پشتیبان بگیرید

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

قالب کلاسیک
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
قالب جدید
sudo cp /etc/apt/sources.list.d/ubuntu.sources /etc/apt/sources.list.d/ubuntu.sources.bak
3

تغییر مخزن در قالب کلاسیک

در این قالب کافی است آدرس مخزن پیشفرض را با آدرس آینه جایگزین کنید. دستور زیر این کار را یکجا انجام میدهد.

جایگزینی آدرس در اوبونتو
sudo sed -i 's|http://archive.ubuntu.com/ubuntu|https://ir.archive.ubuntu.com/ubuntu|g' /etc/apt/sources.list
جایگزینی آدرس در دبیان
sudo sed -i 's|http://deb.debian.org/debian|https://mirror.arvancloud.ir/debian|g' /etc/apt/sources.list
4

تغییر مخزن در قالب جدید deb822

ساختار این قالب خواناتر است و هر مخزن یک بلوک جداگانه دارد. میتوانید همان جایگزینی را روی این فایل انجام دهید یا مستقیم آن را ویرایش کنید.

به جای نوشتن دستی نام کدنام نسخه، بهتر است آن را با دستور بگیرید تا در نسخه های مختلف اشتباه نکنید.

گرفتن کدنام نسخه فعلی
lsb_release -cs
نمونه ساختار فایل ubuntu.sources
Types: deb
URIs: https://ir.archive.ubuntu.com/ubuntu/
Suites: noble noble-updates noble-backports
Components: main restricted universe multiverse
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
جایگزینی سریع آدرس در قالب جدید
sudo sed -i 's|http://archive.ubuntu.com/ubuntu|https://ir.archive.ubuntu.com/ubuntu|g' /etc/apt/sources.list.d/ubuntu.sources
5

چند آینه داخلی و نکته مربوط به مخزن امنیتی

آینه های مختلفی در دسترس هستند و کیفیت آنها در بازه های زمانی متفاوت است. پیشنهاد میکنیم یکی را انتخاب کنید و اگر سرعت مناسبی نداشت، سراغ بعدی بروید.

یک نکته که اغلب نادیده گرفته میشود: به روز رسانی های امنیتی از دامنه جداگانه ای می آیند. اگر آینه ای که انتخاب کرده اید آن را پوشش نمیدهد، بهتر است خط مربوط به مخزن امنیتی را دست نخورده باقی بگذارید تا وصله های امنیتی با تاخیر به دست شما نرسند.

  • برای اوبونتو: ir.archive.ubuntu.com و mirror.arvancloud.ir و repo.iut.ac.ir
  • برای دبیان: mirror.arvancloud.ir و ftp.ir.debian.org و debian.asis.io
  • قبل از انتخاب، در دسترس بودن آینه را با یک درخواست ساده بررسی کنید.
6

اعمال تغییرات و بازگشت در صورت مشکل

بعد از ویرایش، فهرست بسته ها را به روز کنید. اگر خطایی مربوط به امضا یا در دسترس نبودن مخزن دیدید، یعنی آدرس اشتباه است یا آن آینه نسخه شما را پوشش نمیدهد.

در این حالت با بازگرداندن فایل پشتیبان، همه چیز به حالت قبل برمیگردد.

به روز رسانی فهرست بسته ها
sudo apt update
بررسی اینکه بسته ها از کدام مخزن می آیند
apt-cache policy
بازگشت به تنظیمات قبلی
sudo cp /etc/apt/sources.list.bak /etc/apt/sources.list
sudo apt update

پرسش های پرتکرار

چرا بعد از ویرایش sources.list هیچ تغییری ایجاد نشد؟

در اوبونتو ۲۴.۰۴ و دبیان ۱۳ به بعد پیکربندی به قالب deb822 منتقل شده و در فایل ubuntu.sources یا debian.sources قرار دارد. فایل قدیمی دیگر خوانده نمیشود.

تغییر مخزن روی به روز رسانی های امنیتی هم اثر میگذارد؟

فقط اگر آدرس مخزن امنیتی را هم تغییر دهید. اگر آینه انتخابی شما آن را پوشش نمیدهد، بهتر است خط مربوط به مخزن امنیتی را دست نخورده باقی بگذارید.

اگر بعد از تغییر مخزن دستور apt خطا داد چه کنم؟

فایل پشتیبان را برگردانید و دوباره apt update بزنید. به همین دلیل قبل از هر تغییری گرفتن نسخه پشتیبان ضروری است.

به راهنمای بیشتری نیاز دارید؟

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

گفتگو با پشتیبانی

ادامه یادگیری

مشاهده همه