B4-1

پیوندها

۱ مطلب با کلمه‌ی کلیدی «genkernel» ثبت شده است

آپدیت کرنل

يكشنبه, ۲۱ تیر ۱۳۹۴، ۰۳:۲۴ ق.ظ

از اونجایی که توی لینوکس آپدیت کردن خودش عمل لذت بخشیه و یکی از چیزهای لذت بخش برای آپدیت کردن کرنلِ می‌خواستم تجربه‌ی خودم رو در این زمینه بنویسم تا شاید بکارتون بیاد.

خب بصورت عادی بعد از اینکه شما با دستور

#emerge --sync

شاخه portage رو بروز می‌کنید و با دستوراتی مثل

#emerge -uDN @world

تمام بسته‌هایی که امکان آپدیت شدن دارند رو آپدیت می‌کند یکی از چیزهایی که ممکنه آپدیت بشه سورس کرنل یا همون gentoo-sources هست . برای اینکه ببینید که آیا چند ورژن از سورس کرنل رو روی سیستمتون دارید می‌تونید با دستور

#eselect kernel list
output: برای من
Available kernel symlink targets:
[1] linux-4.0.5-gentoo *

  لیستی از کرنل‌ سورس‌های موجود رو که در شاخه /usr/src قرار دارند ببینید. و طبعا بعد از انجام این دستور شما سورس کرنلی رو که به صورت پیش‌فرض برای کامپایل درایورهای سخت‌افزاری مورد استفاده قرار می‌گیره رو بصورت یک علامت * در روبرو می‌بینید. این سورس کرنل همون سورس کرنلی هست که بصورت شورتکات توی /usr/src به دایرکتوری linux لینک شده.

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

#eselect kernel set number

بجای number عددی که به عنوان شماره کرنل روبروی سورس قرار داده شده رو وارد می‌کنید و به این صورت مسیر پیش‌فرض /usr/src/linux به سورس کرنل جدید اشاره می‌کنه.

اگر مثل من حوصله سر و کلّه زدن زیاد و یا اطلاعات کافی ندارین با دستور

#genkernel all

شروع به کامپایل کرنل جدید بکنید و پس از گذشتن زمانی (بسته به cpu شما که چند هسته‌ای باشه و غیره) این کار به پایان می‌رسه. و باید تنظیمات مربوط به LILO یا GRUB رو بر مبنای کرنل جدید آپدیت کنید.

که فک کنم برای LILO شما پس از ویراییش فایل /etc/lilo.conf با دستور

#lilo -v

بوت لودر رو تازه سازی می‌کنید

و در Grub2 هم کافیه که با دستور

#grub2-mkconfig -o /boot/grub/brub.cfg

تنظیمات گراب رو آپدیت کنید.

حالا مرحله بعدی اینه که ما درایورهای سخت‌افزاری که پیشتر بصورت خودکار شناسایی نشده (برای مثال درایور کارت گرافیک کارت صدا و …) رو دوباره نصب کنیم که اگه نسخه‌ی جدیدی براش نیومده باشه و همچنین  توی مسیر /usr/portage/distfiles باشه نیاز به دانلود هم نیست و در مجموع زمان زیادی هم نمی‌بره :)

همچنین پس از نسخه قبلی اگه مثل من از این عادت‌ها دارین که کرنل قدیمی رو پاک کنید با استفاده از  eclean کارتون راه میافته ، برای نصبش از
#emerge eclean-kernel
استفاده کرده و در نهایت توی ترمینال از خدمات نقدی و غیر نقدی‌اش استفاده ببرین

پ ن: سعی کنید کرنل‌های قدیمی رو بعد از اطمینان کامل از اینکه کرنل جدید بخوبی کار می‌کنه و مشکلی براتون درست نمی‌کنه پاک کنید تا مثل من به مشکل برنخورین :D

  • محمد یاری