پیشنیازهای یافتن نسخه هسته لینوکس [با استفاده از CLI]
موارد زیر را فراهم کنید تا این آموزش به درستی کار کند و ادامه یابد:
– یک پلن سرور مجازی لینوکس که یکی از توزیعهای لینوکس را اجرا میکند.
– یک کاربر غیر روت با دسترسی sudo.
– دسترسی به ترمینال.
۱۰ روش برای بررسی نسخه هسته در لینوکس
اگر سوال شما این است که “نسخه هسته لینوکس من چیست؟”، بیایید مثالهای این راهنما را مرور کنیم تا نحوه بررسی نسخه هسته در لینوکس را بررسی کنیم.
در پایان، شما آماده استفاده از یکی از روشها برای یافتن نسخه هسته لینوکس خواهید بود.
۱. دستور uname
دستور uname برای نمایش اطلاعات سیستم طراحی شده است. هنگامی که با گزینه -r استفاده میشود، به طور خاص بر روی نسخه انتشار هسته تمرکز میکند.
خروجی معمولاً رشتهای از اعداد و احتمالاً حروف است که نشاندهنده نسخه اصلی، فرعی و سطح وصله هسته است.
uname -r
۵.۱۵.۰-۵۷-generic
در این مثال، خروجی نشان میدهد که نسخه هسته ۵.۱۵.۰-۵۷-generic است.
– ۵.۱۵.۰: این نسخه اصلی، فرعی و سطح وصله هسته است.
– -۵۷: این نشاندهنده یک ساخت یا انتشار خاص در سری ۵.۱۵.۰ است.
– generic: این ممکن است نشاندهنده پیکربندی عمومی یا رایج هسته باشد.
بسته به توزیع و پیکربندی هسته شما، اجزای دیگری نیز ممکن است در خروجی نمایش داده شوند.
به عنوان مثال:
– -generic یا -rt: اینها ممکن است نشاندهنده پیکربندیها یا بهینهسازیهای خاص هسته باشند.
– -pae یا -smp: اینها ممکن است به ویژگیها یا قابلیتهای خاص سختافزاری اشاره کنند.
مثال ۲:
شما همچنین میتوانید از uname با گزینه -a استفاده کنید که یک نمای کلی دقیق از اطلاعات سیستم، از جمله نسخه هسته را ارائه میدهد:
uname -a
خروجی معمولاً به صورت زیر قالببندی میشود:
Linux hostname 5.15.0-57-generic SMP PREEMPT RT x86_64 GNU/Linux
– Linux: نام سیستم عامل.
– hostname: نام میزبان سیستم.
– ۵.۱۵.۰-۵۷-generic: نسخه هسته، شامل نسخه اصلی، فرعی، سطح وصله و اطلاعات ساخت.
– SMP: نشاندهنده پشتیبانی از پردازش چندهستهای متقارن است.
– PREEMPT RT: نشاندهنده پشتیبانی از پیشگیری زمان واقعی است.
– x86_64: معماری CPU.
– GNU/Linux: توزیع لینوکس.
برای استخراج فقط نسخه هسته از خروجی، میتوانید از دستور grep استفاده کنید:
uname -a | grep "Linux version"
این خط حاوی نسخه هسته را نمایش خواهد داد.
۲. دستور hostnamectl
اگرچه در اصل برای مدیریت اطلاعات نام میزبان طراحی شده است، hostnamectl میتواند جزئیات ارزشمندی درباره نسخه هسته نیز ارائه دهد.
برای دریافت نسخه هسته با استفاده از hostnamectl، به سادگی دستور را بدون هیچ گزینه اضافی اجرا کنید:
hostnamectl
این یک نمای کلی جامع از اطلاعات سیستم، از جمله نسخه هسته را نمایش خواهد داد.
به دنبال خطی با برچسب “Kernel” بگردید تا شماره نسخه خاص را پیدا کنید:
Static hostname: my-hostname
Icon hostname: my-hostname
Chassis: desktop
Boot ID: 5200
Operating System: Ubuntu 22.04.2 LTS
Kernel: 5.15.0-57-generic
Architecture: x86_64
همانطور که در این مثال میبینید، نسخه هسته ۵.۱۵.۰-۵۷-generic است.
نکته:
اگرچه uname -r اغلب روش اصلی برای بررسی نسخه هسته است، hostnamectl گزینهای همهکارهتر ارائه میدهد، به خصوص زمانی که به جزئیات اضافی سیستم در یک دستور واحد نیاز دارید.
۳. دستور dmesg
dmesg یک ابزار قدرتمند خط فرمان در لینوکس است که پیامهای هسته را نمایش میدهد.
اگرچه مستقیماً برای بررسی نسخه هسته طراحی نشده است، میتواند به طور غیرمستقیم با بررسی پیامهای خاص به شما کمک کند تا نسخه هسته را شناسایی کنید.
استفاده پایه:
dmesg
این تمام پیامهای هسته را از زمان راهاندازی سیستم نمایش خواهد داد.
فیلتر کردن پیامها:
برای فیلتر کردن پیامها بر اساس معیارهای خاص، از گزینه -l برای مشخص کردن سطح لاگ استفاده کنید:
dmesg -l 3
این پیامهایی با سطح لاگ ۳ (هشدار) یا بالاتر را نمایش خواهد داد.
جستجوی پیامهای خاص:
از گزینه -n برای مشخص کردن تعداد خطوط نمایش داده شده استفاده کنید:
dmesg -n 100
این ۱۰۰ خط آخر پیامهای هسته را نشان خواهد داد.
گرپ کردن برای کلمات کلیدی:
dmesg را با grep ترکیب کنید تا کلمات کلیدی خاص را جستجو کنید:
dmesg | grep "kernel version"
این پیامهایی را که حاوی عبارت “kernel version” هستند جستجو خواهد کرد.
۴. دستور dpkg
اگرچه dpkg در درجه اول یک مدیر بسته (نصب، پیکربندی و حذف بستهها) برای سیستمهای مبتنی بر دبیان است، میتواند به طور غیرمستقیم برای جمعآوری سرنخهایی درباره نسخه هسته استفاده شود.
با بررسی بستههای نصب شده و وابستگیهای آنها، گاهی اوقات میتوانید نسخه هسته را استنباط کنید:
لیست بستههای نصب شده:
dpkg -l
این تمام بستههای نصب شده را لیست میکند، از جمله نام، نسخه و وضعیت آنها.
جستجوی بستههای مرتبط با هسته:
به دنبال بستههای مرتبط با هسته بگردید، مانند:
- linux-image-generic
- linux-headers-generic
- linux-modules-extra
نسخههای این بستههای مرتبط با هسته اغلب میتوانند سرنخهایی درباره نسخه هسته ارائه دهند.
به عنوان مثال، اگر linux-image-generic نسخه ۵.۱۵.۰-۵۷-generic باشد، احتمالاً نسخه هسته ۵.۱۵.۰-۵۷-generic است.
۵. فایل /proc/version
فایل /proc/version یک ورودی سیستم فایل مجازی است که اطلاعات دقیقی درباره هسته لینوکس در حال اجرا ارائه میدهد.
این یک روش قابل اعتماد و ساده برای بازیابی نسخه هسته است که دسترسی مستقیم به اطلاعات نسخه هسته را فراهم میکند.
فایل /proc/version حاوی چندین قطعه اطلاعات درباره هسته است، از جمله:
– نسخه هسته
– اطلاعات ساخت
– اطلاعات کامپایلر
– گزینههای پیکربندی
دسترسی به فایل:
برای مشاهده محتویات فایل /proc/version، میتوانید از هر ویرایشگر متن یا دستور cat استفاده کنید:
cat /proc/version
Linux version 5.15.0-57-generic (build: #58-Ubuntu SMP PREEMPT RT, preempt=RT)
در این مثال، نسخه هسته ۵.۱۵.۰-۵۷-generic است.
استخراج اطلاعات خاص:
اگر فقط به شماره نسخه هسته نیاز دارید، میتوانید از دستور grep برای استخراج آن استفاده کنید:
cat /proc/version | grep "Linux version"
این خط حاوی نسخه هسته را نمایش خواهد داد.
۶. دستور ls
این روش یک راه مستقیم برای بررسی نسخه هسته نیست زیرا دستور ls در درجه اول برای بررسی نسخههای هسته طراحی نشده است.
فقط میتواند به طور غیرمستقیم برای جمعآوری سرنخهایی درباره هسته استفاده شود. بنابراین، برای یک رویکرد مستقیمتر و قابل اعتمادتر، به راهحلهای قبلی مراجعه کنید.
استفاده از ls برای لیست کردن فایلها:
برای لیست کردن محتویات این دایرکتوریها و احتمالاً شناسایی فایلهای مرتبط، از دستور ls استفاده کنید:
ls /proc/modules
ls /proc/kcore
اگرچه محتویات این فایلها ممکن است مستقیماً نسخه هسته را آشکار نکنند، اما میتوانند سرنخهایی ارائه دهند.
به عنوان مثال، اگر ماژولهای خاصی حاضر یا غایب باشند، ممکن است سازگاری با نسخههای خاصی از هسته را نشان دهند.
لیست فایلهای تصویر هسته:
ls vmlinuz-
فایلهایی که با ‘vmlinuz-‘ شروع میشوند توسط این دستور لیست میشوند. اغلب، تصاویر هسته در این فایلها گنجانده شدهاند. معمولاً، نام فایل خود حاوی اطلاعات نسخه است.
خروجی:
vmlinuz-5.15.0-52-generic vmlinuz-5.15.0-52-generic.old
که دو تصویر هسته را نشان میدهد:
– `vmlinuz-5.15.0-52-generic`
– `vmlinuz-5.15.0-52-generic.old`
۷. استفاده از ابزارهای اطلاعات سیستم
این نیز روش دیگری برای بررسی نسخه هسته در لینوکس است:
– neofetch: این ابزار یک نمای کلی جذاب از سیستم شما ارائه میدهد، از جمله نسخه هسته.
– htop: مشاهدهگر تعاملی فرآیند نیز میتواند نسخه هسته را در سرصفحه خود نمایش دهد.
– inxi: یک ابزار اطلاعات سیستم همهکاره که اطلاعات دقیقی ارائه میدهد، از جمله نسخه هسته.
۸. استفاده از مدیران بسته
در اینجا روشی است که به شما کمک میکند نسخه هسته لینوکس را بررسی کنید:
– yum (سیستمهای مبتنی بر RPM): از `yum info kernel` برای دریافت اطلاعات درباره بسته هسته نصب شده، از جمله نسخه آن استفاده کنید.
– pacman (آرچ لینوکس): از `pacman -Qi Linux` برای پرس و جو از بسته لینوکس برای جزئیات نسخه استفاده کنید.
۹. استفاده از فایلهای پیکربندی بوتلودر
– GRUB: در فایل پیکربندی GRUB (/boot/grub/grub.cfg)، به دنبال خطوطی مانند `kernel /vmlinuz-X.Y.Z` بگردید تا نسخه هسته را شناسایی کنید.
– systemd-boot: دایرکتوری boot/loader/entries/ را برای ورودیهایی که به تصاویر هسته اشاره میکنند، مانند linux.conf بررسی کنید.
۱۰. استفاده از مستندات هسته
برای استفاده از این روش، به مستندات هسته (که اغلب به صورت آنلاین یا در /usr/share/doc/linux-headers-X.Y.Z در دسترس است) برای جزئیات خاص درباره نسخه هسته و ویژگیهای آن مراجعه کنید.
نتیجهگیری
بررسی نسخه هسته لینوکس با استفاده از روشهایی که در این آموزش توضیح دادیم به راحتی امکانپذیر است. اطمینان از بهروز بودن هسته به محافظت از سیستم شما در برابر آسیبپذیریها کمک میکند.