۱۴۰۰/۹/۲۹ فناوری اطلاعات

کی بازار-حیات و مرگ لینوکس در گروی کرنل است. اگر با نحوه عملکرد GNU/Linux آشنا هستید باید این را هم اضافه کنیم که لینوکس همان هسته کرنل است و بقیه چیزها صرفاً ابزارهایی هستند که با آن در ارتباطند. این ابزارها به شما اجازه می‌دهند تا کار را به ثمر برسانید اما بدون کرنل هیچ کاری از دستشان برنمی‌آید. کرنل یک سیستم‌عامل حکم قلب را در بدن انسان دارد. انسان تا زمانی مشکلی برای قلبش پیش نیاید متوجه نقش مهم و حیاتی آن نمی‌شود. شاید این اتفاق زیاد نیافتد اما باید اعتراف کرد گاهاً آپگریدهای کرنل درست پیش نمی‌روند. وقتی کرنل آپدیت‌شده نمی‌گذارد شما از کامپیوتر خود استفاده کنید موقع آن است که کرنل خود را در لینوکس downgrade کنید. با ما همراه بمانید.

بوت کردن به کرنل قدیمی‌تر

 خبر خوب برای کسانی که به تازگی کرنل خود را آپدیت کرده‌اند این است که این پروسه تقریباً هرگز از شر کرنل قدیمی خلاص نمی‌شود. تنها موردی که ممکن است اتفاق بیافتد این است که بلافاصله کرنل قدیمی‌تر را uninstall کنید که ایده خوبی نیست!

برای بوت کردن به کامپیوتر قدیمی‌تر باید سیستم خود را ریستارت کنید. وقتی کامپیوتر GRUB را بارگیری کرد باید کلیدی را بزید تا گزینه‌های غیراستاندارد انتخاب شود. روی برخی از سیستم‌ها کرنل‌های قدیمی‌تر اینجا نشان داده خواهند شد و این درحالیست که روی اوبونتو نیاز است تا برای پیدا کردن کرنل‌های قدیمی‌تر Advanced options for Ubuntu را انتخاب کنید. وقتی کرنل قدیمی‌تر را انتخاب کردید به سیستم خود بوت خواهید شد. حال همه‌چیز باید مثل قبل کار کند. اگر هنوز هم مشکل دارید کرنل شاید مشکل اصلی نبوده باشد.

از بین بردن کرنل مشکل‌دار

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

شما می‌توانید با استفاده از ابزارهای مدیریت بسته توزیع خود این کار را انجام دهید. این می‌تواند سیستم به سیستم متفاوت باشد. همچنین نیاز خواهد بود تا نسخه کرنلی را که می‌خواهید حذف کنید بلد باشید. می‌توانید موقع بوت در اسکرین GRUB به نوع نسخه پی ببرید. برای اوبونتو و سایر توزیع‌های مبتنی بر apt از فرمان زیر استفاده کنید:

sudo apt remove linux-image-VERSION-generic linux-headers-VERSION-generic

باید نسخه بالا را با شماره دقیق نسخه‌‌ی کرنل معیوبی که می‌خواهید حذف کنید جایگزین کنید. اگر قصد دارید برای مدتی آن‌ها را نگه دارید می‌توانید از فرمان زیر استفاده کنید:

sudo apt-mark hold linux-image-generic linux-headers-generic

جلوگیری از چالش‌های آتی

یکی از سریعترین راه‌های جلوگیری از این نوع مشکل این است که از همان ابتدا از آن اجتناب کنید. این کار به شما شانس این را می‌دهد که نگاه کنید ببنید آیا کاربران گزارشی منفی از کرنل داده‌اند یا نه. باید مشخصاً حواستان به کاربرانی باشد که دقیقاً سخت‌افزار شما را دارند. اگر پایدای برایتان اهمیت دارد همچنین می‌توانید از توزیع‌های LTS استفاده کنید. این‌ها شاید کمتر آپدیت شوند اما آپدیت‌های امنیتی سر جایشان هستند. این بدان معناست که می‌توانید روی پایداری‌شان حساب باز کنید (پایداری آن‌ها از متوسط توزیع‌تان بیشتر است).

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

  1.      آیا downgrade کردن کرنلِ من چیزی را خراب می‌کند؟

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

  1.      اگر یک آپدیت کرنل قرار باشد روی سیستم من کار کند آیا می‌توانم تشخیص دهم؟

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

  1.      چطور می‌توانم کرنل‌های نصب‌شده روی سیستم‌ خود را چک کنم؟

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

find /boot/vmli*

روی آرک لینوکس و توزیع‌های مبتنی بر آرک می‌توانید از فرمان زیر استفاده کنید:

pacman -Q linux

روی اوبونتو، دبیان و سیستم‌های مبتنی بر هر یک از آن‌ها می‌توانید از فرمان زیر استفاده کنید:

dpkg --list | grep linux-image

روی رد هت، فدورا و سایر توزیع‌های مشابه از فرمان زیر استفاده کنید:

rpm -qa kernel

این لیستی جامع نیست، اما تعداد قابل توجهی از توزیع‌ها را پوشش می‌دهد. اگر از توزیع دیگری استفاده می‌کنید، مستندات را بررسی کنید.

  1.      چطور بفهمم در حال حاضر از چه کرنلی دارم استفاده می‌کنم؟

با یک فرمان ساده می‌توانید این کار را انجام دهید. یک ترمینال را باز کنید و فرمان زیر را تایپ کنید.

uname –rs

رشته‌ای را با اطلاعات نسخه هسته در حال اجرا خواهید دید. چیزی شبیه به این خواهد بود:

Linux 5.11.0-41-generic

 

منبع: کی بازار (فروشگاه آنلاین نرم افزارهای اورجینال)، با دریافت انواع لایسنس‌های معتبر از تامین‌کنندگان جهانی این امکان را برای تمام کاربران فراهم آورده است تا در چند ثانیه، از خدماتی بین‌المللی لذت ببرند. در کی بازار امکان خرید لایسنس‌های اورجینال نرم افزار‌های کاربردی و امنیتی(ویندوز اورجینال، آفیس اورجینال، آنتی ویروس اورجینال، آنتی ویروس کسپرسکی، آنتی ویروس پادویش و آنتی ویروس نود 32) بصورت ارسال آنی فراهم آمده است.