سجاد
سجاد
خواندن ۶ دقیقه·۱۷ روز پیش

تبدیل دبیان stable به unstable

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

عکس رو همینطوری انتخاب کردم چون بهتر از هیچیه‌:)
عکس رو همینطوری انتخاب کردم چون بهتر از هیچیه‌:)


چند روزی میشه دبین ۱۲ رو نصب کردم. تا به حال همه چیزش خوب بوده و بدون مشکل کار کرده و تقریبا هر برنامه ای که میخواستم داشته. به راحتی و بدون فیلتر تونستم پکیج ها رو نصب کنم (البته با کمک netselect-apt که اگه برای نصب و اپدیت پکیج هاتون توی توزیع های دبین بیس مشکل فیلتر و تحریم داشتین میتونین ازش استفاده کنین. البته خودتون هم میتونید دستی میرورهاتون رو به میرور های بدون فیلتر تغییر بدین که چنین مشکلی نداشته باشین اما این پکیج "netselct-apt" خودش کار رو راحت میکنه).


مرحله اول:‌ خواندن ویکی دبیان

اول از همه به این آدرس(که ویرگول نذاشت بذارمش) رفتم و یکم درمورد اینکه دبیان اصلا چطوری آنستیبل میشه خوندم. از قرار معلوم تنها کاری که باید بکنیم اینه که ریپو ها رو از آنستیبل به استیبل تغییر بدیم. یعنی از چیزی که الآن هست تبدیلش کنیم به ریپازیتوری های sid.

یه چیز با مزه! توی ویکی گفته اسم sid مثل همه ی ریپازیتوری های دیگه از کارکترهای انیمیشن &quotداستان عروسک ها&quot گرفته شده.:)) و میگه:‌ &quotتوی فیلم سید بچه ایه که بچه بغلیه که اسباب بازی هاش رو میکشنه و موجودات عجیب غریب از اونها درست میکنه&quot


خب طبق ویکی میرسیم به مرحله پیاده سازی سید

راه های زیادی هست که دبیان unstable داشته باشیم. یکی از راه هاش اینه که ایزوی دبیان رو از اینجا دانلود کنیم و موقع نصب "Expert Install" انتخاب کنیم و بعد توی قسمت

Choose a mirror of the Debian archive

گزینه ی "sid - unstable" رو انتخاب کنیم بعد نصبش کنیم. که خب این ساده است و نیازی به کار خاصی نداره. و همچنین به درد ما هم نمیخوره. چونکه ما میخوایم دبیان stableی رو که در حال حاضر داریم تبدیل کنیم به دبیان unstable. پس از اینجا میگذریم و میریم به روش بعد:‌ تغییر کانفیگ apt.


تغییر ریپازیتوری ها از stable به unstable

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

/etc/apt

خب از اونجایی که کار خطرناکیه یکم خوبه که بریم و درباره این فایل ها بدونیم.

توی دایرکتوری /etc/apt یه فایلی هست به اسم sources.list و همچنین یه دایرکتوری(یا همون پوشه:)) به اسم sources.list.d. این فایل و فایلهای داخل دایرکتوری sources.list.d همه گی چیزهایی هستن که apt اونها رو میخونه تا بتونه پکیج ها رو از جایی که در این فایلها تعیین شدن دانلود و نصب کنه.

هر کدوم از این فایل ها چندین خط دارن و هر خط که از چهار قسمت تشکیل شده یک میرور و چند ریپازیتوری رو مشخص میکنه. مثلا بیاین یکیشون رو باهم بخونیم:‌‌ (البته اینها نیاز واقعی ما نیستن و میتونیدا از اینجا اسکیپ بزنین و برین سراغ موضوع بعدی)

deb <<address>> bookworm main non-free-firmware
درواقع به جای اون آدرسی که نوشتم یه لینک بود ک ویرگول نمیذاره لینک بذارم.

این یک خط کانفیگه. چهار بخشش با استفاده از اسپیس (" ") از هم جدا شدن.

اولین بخش مشخص میکنه که آرشیو ها چه سبکی باشن. اگه deb باشه فقط فایل های کامپایل شده رو دانلود و نصب میکنه. و اگر deb-src باشه سورس کد ها و فایلهای کنترل دبیان(Debian ControlFile یا .dsc) ها رو دانلود میکنه و بعد پکیج رو نصب میکنه.

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

بخش سوم (bookworm) اون چیزیه که ما میخوایم تغییر بدیم و بهش میگیم Distribution یا توزیع.

بخش چهارم (main non-free-firmware) کمپوننت ها هستن. که توزیحشون از حد من خارجه ولی اگه به انواع کمپوننت نگاه کنین میفهمین چی به چیه. مثلا این (non-free-firmware) واضحه که داره میگه فرم-ویر انحصاری رو هم برام بگیر از این میرور.

قدم دوم:‌ تبدیل به sid

پیشنهاد میشه قبل از هرگونه تغییری از فایلهاتون پیشتبان بگیرید. بهتره که از کل دایرکتوری /etc/apt یه نسخه کپی کنید و بذارید یه جایی که اگه میرور ها به مشکل خوردن بتونین بازیابیشون کنید. اگه هم حوصله ندارین میتونید صرفا دستور زیر رو کپی کنید و توی ترمینال بنویسید:

sudo cp -r /etc/apt ~/

به راحتی میتونیم حالا ریپوهای sid رو اضافه کنیم:

این فایلیه که دبیان استیبل به ما میده:


deb <<ADDRESS>> bookworm main non-free-firmware
deb-src <<ADDRESS>> bookworm main non-free-firmware
deb <<ADDRESS>> bookworm-updates main non-free-firmware
deb-src <<ADDRESS>> bookworm-updates main non-free-firmware
deb <<ADDRESS>> bookworm-security main non-free-firmware
deb-src <<ADDRESS>> bookworm-security main non-free-firmware
# Backports allow you to install newer versions of software made available for this release
deb <<ADDRESS>> bookworm-backports main non-free-firmware
deb-src <<ADDRESS>> bookworm-backports main non-free-firmware
ویرگول برای لینک گذاشتم از من پول میخواد. پس به جای لینکها که آنچنان هم مهم نیستن نوشتم <<ADDRESS>>

احتمالا مال هرکس یه مقدار فرق کنه اما کلیت همه شون یکی هستن. از پایین به بالا میخونیم. کامنت شده که بکپورت ها نسخه های جدیدتر نرم افزار ها رو نصب میکنن. که ما بهش نیاز نداریم دیگه چون خودمون آخرین نسخه ها رو میگیرم. پس دو تا کانفیگ آخری رو کامنت یا پاک میکنیم. دوتا کانفیگ بالاییش هم برای پکیجهای امنیتی هستن. اما برای دبیان sid یا unstable اپدیت امنیتی وجود نداره. همه آپدیتهاش بدون بازنگری هستن. پس دو خطی که bookworm-security دارن رو هم کامنت یا حذف کنید. حالا فقط دو خط اول باقی موندن. اونها رو نیاز داریم. اما باید به جای bookworm از sid استفاده کنیم. پس دو خط اول رو هم نگه میداریم و sid رو اونجا استفاده میکنیم. حالا میرورهامون با موفقیت برای دبیان unstable کانفیگ شدن‌:)


قدم نهایی:‌ آپدیت کش

  • تا اینجا کانفیگهامون رو تغییر دادیم اما سیستممون هیچ ایده ای نداره که تغییری رخ داده. هنوز هم فکر میکنه که پکیج های استیبل رو باید بگیره. چون توی کش سیستم آخرین ورژن هر پکیج, ورژنی هست که دبیان استیبل بهش نسبت داده. پس ما باید کش رو اپدیت کنیم تا سیستم بفهمه چه پکیج های گرانبهایی رو از دست میداده. برای این کار میتونید از دستور زیر استفاده کنید(که احتمالا یکم زمان ببره تا تموم بشه):
sudo apt update

و بعد هر وقت تونستید سیستم رو full-upgrade کنید. در نهایت هم اگه به مشکلی برخوردید و نتونستید حلش کنید, میتونید از چیزایی که پشتیبان گرفتید استفاده کنید یا از یه متخصص کمک بخواید که براتون راست و ریسش کنه.


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

یه مهندس کامپیوتر، برنامه نویس، عاشق لینوکس و دنیای یونیکس و همچین موسیقی
شاید از این پست‌ها خوشتان بیاید