مقدمه ای بر bootpromptدرگنو/لینوکس

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

این روند گاهی اطلاعاتی را شامل میشود که هسته کرنل به تنهائی قادر به شناسائی آنها نیست و در برخی موارد دیگردر جهت تغییر مقادیر اولیه و پیش فرض هسته وجلوگیری یا اعمال برخی مقادیر و دستورات خاص بکار گرفته میشود.

این وظایف را ممکن است به سادگی برنامه های خاصی به نام بوت لودر(مثل Grub وLILO و loadlin) با قراردادن اطلاعات ضروری در یک فایل متنی و در اختیار گزاردن آن در هر بار راه اندازی سیستم در گنو/لینوکس به انجام برسانند لیکن در صورت عدم وجود بوت لودر فرامین میتوانند از طریق خط فرمان توسط کاربران به هسته کرنل فرستاده شوند .

به هر صورت ممکن است در اینجا این سئوال به ذهن شما خطور کند که با وجود سیستمهای عامل جدید و پیشرفته  گنو/لینوکس که معمولا همه چیز را بخوبی تنظیم و مدیریت میکنند یک کاربر معمولی هرگز به این رشته از اطلاعات نیازی نخواهد داشت اما باید دانست که هر سیستم عاملی نیاز به انجام تنظیماتی برای بهینه سازی دارد که میتوان تعداد زیادی از این تنظیمات را در مرحله راه اندازی با تنظیم برخی  پارامترها انجام داد ، ضمنا هر سیستمی بر اثر فعالیتهای کاربران خود ممکن است دچار مشکلاتی از جمله در مراحل راه اندازی شود و دانستن این اطلاعات کوچک اما ارزشمند در آن زمان کلید حل مشکلات بزرگ خواهند بود.

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

بعنوان مثال  init=  به هسته میگوید که چه برنامه ای باید ابتدا اجرا شود و در مقابل عبارت aha154x=   اطلاعاتی را به یک درایور کارت سخت افزار نوع اسکازی می فرستد که از چه منابع سخت افزاری می تواند استفاده کند .

نکته : دستورات قابل ارسال به درایورهای سخت افزاری فقط در مورد آن دسته از سخت افزارها قابل اجراست  که درایور آنها در هنگام نصب و کامپایل کردن هسته کرنل مستقیما در داخل هسته ترجمه شده و در مورد سخت افزارهائی که با درایورهای متصل شونده به هسته یا ماژولها modules  اجرا میشوند کاربرد ندارد. (برای مطمئن شدن از نوع درایور اگر از نوع ماژول باشد از دستور lsmod استفاده و لیست ماژولها را میتوان مشاهده کرد) . بصورت خلاصه تر دستورات مربوط به درایورها معمولا فقط توسط آندسته از کاربران حرفه ای گنو/لینوکس که خودشان وظیفه کامپایل کردن هسته و تعین پارامترهای اختصاصی برای آنرا بر عهده دارند مورد استفاده قرار میگیرد .

کسب اطلاعات از سیستم :

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

cat  /proc/cmdline