آشنا بیشتر با Boot Loader در OpenBSD:

همانطور که در بخش قبلی در مورد مراحل راه اندازی سیستم عامل OpenBSD بحث شد یکی از بخش های راه اندازی برنامه Boot Loader است که به شما در راه اندازی kernel  های خاص خود و وارد شدن به حالت single user mode کمک می کند. بخش single user mode در بخش قبلی توضیح داده شد، حال در این بخش به شما روش های بارگذاری هسته های انتخابی و مورد نظر خود را آموزش می دهیم.

نکته:

در بعضی از موارد وقنی شما سرور راه داری دارید که از طریق برنامه های vnc  به آن دسترسی دارید و قصد دارید به صورت کامل سیستم عامل فعلی خود را ارتقا، دهید به شرط اینکه تمام داده های دیسک سخت شما پاک شود می توانید هسته سیستم عامل ورژن بالاتر مورد نظر خود را از طریق شبکه برروی سیستم خود دانلود کرده و سیستم را راه اندازی کنید و در محل راه اندازی برنامه boot loader هسته قابل راه اندازی یا همان bsd.rd را راه اندازی کنید و به صورت نصب کامل سیستم عامل خود را نصب کنید. این بخش در ادامه آموزش داده می شود.

راه اندازی انواع هسته ها:

سیستم عامل OpenBSD دارای سه نوع هسته متفاوت است به نام های هسته تک پردازشی به نامه bsd هسته چند پردازشی به نام bsd.mp و هسته بروزرسانی و نصب به نام bsd.rd ، برای بارگذاری هر یک از این هسته ها شما می توانید در زمان راه اندازی boot Loader مسیر کامل هسته را بعد از فرمان boot ذکر کنید تا هسته مورد نظر شما بارگذاری شود مثل فرمان زیر:

boot> boot /bsd.rd

در این بخش حتی شما می توانید هسته ها را با گذینه های دلخواه راه اندزی کنید مثلا هسته چند پردازشی را در حالت single user mode راه اندازی کنید به صورت زیر:

boot> boot -s /bsd.sp

بارگذاری هسته موجود برروی دیسک سخت:

در بعضی از موارد نیاز بر آن است که شما هسته دلخواه خود را که برروی دیسک سخت شما قرار دارد را بارگذاری کنید. در نکته قبلی به این موضوع اشاره کردیم. برای این منظور شما باید سه مرحله را طی کنید:

  1. پیدا کردن هارد دیسک
  2. پیدا کردن پارتیشن ها و پارتیشنی که شامل فایل مورد نظر شما است.
  3. راه اندازی کردن هسته مورد نظر شما.

 

پیدا کردن هارد دیسک:

نام دیسک های موجود در سیستم عامل های خانواده BSD  بصورت /dev/sd0  یا /dev/wd1 است، این مدل نام ها زمانی برای سیستم عامل قابل فهم است که هسته سیستم عامل راه اندازی شده باشد. برنامه Boot Loader از سیستم نامگذاری هارد در حالت Bios استفاده می کند. برای اینکه شما از برنامه Boot Loader در مورد نام دیسک های موجود برروی سیستم خود سوال کنید ابتدا باید فرمان machine diskinfo را در بخش خط فرمان Boot Loader به صورت زیر اجرا کنید تا خروجی آنرا مشاهده کنید:

boot> machine diskinfo

Disk    BIOS#   Type    Cyls    Heads   Secs    Flags   Checksum

fd0     ۰x0     *none*  ۸۰      ۲       ۱۸      ۰x4     ۰x0

hd0     ۰x80    label   ۱۰۲۴    ۲۵۵     ۶۳      ۰x2     ۰x51db843d

hd1     ۰x81    label   ۱۰۲۴    ۲۵۵     ۶۳      ۰x2     ۰x9329b723

hd2     ۰x82    label   ۱۰۲۴    ۲۵۵     ۶۳      ۰x2     ۰xcfadb343

boot>

همانطور که مشاهده می کنید در این بخش برنامه Boot Loader برای شما چهار دیسک پیدا کرده که اولی دیسک به نامه fd0 به فلاپی دیسک سیستم شما مربوط می شود و سه دیسک بعدی هارد دیسک هستن. هارد دیسک hd0 اولین دیسک شماست به صورت پیش فرض هسته اصلی برروی آن قرار دارد. اگر قصد دارید هسته دیگر برروی هارد دیگری را راه اندازی کنید باید پارتیشن مورد نظر را پیدا کنید.

 

پیدا کردن پارتیشن :

خب در این مرحله شما فرض می کنید که هسته شما برروی پارتیشن hd2 قرار دارد حال شما باید با استفاده از فرمان set device به برنامه boot loader بگویید که از این پارتیشن برای راه اندازی استفاده کنید به صورت زیر:

boot> set device hd2a

قبل از اجرا کردن فرمان boot شما برای اطمینان از وجود فایل هسته مورد نظر باید فرمان ls را اجرا کنید به صورت زیر:

boot> ls

stat(hd2a:/.): Invalid argument

boot>

همانطور که مشاهده کردید این پارتیشن شامل فایل نیست پس باید به سراغ پارتیشن بعدی بروید و خروجی فرمان ls را به صورت زیر مشاهده کنید:

boot> set device hd1a

boot> ls

drwxr-xr-x 0,0  ۵۱۲     .

drwxr-xr-x 0,0  ۵۱۲     ..

drwxr-xr-x 0,0  ۵۱۲     altroot

drwxr-xr-x 0,0  ۵۱۲     home

drwxr-xr-x 0,0  ۵۱۲     tmp

حال می توانید هسته را راه اندازی کنید.

راه اندازی کردن هسته

برای راه اندازی هسته شما می توانید فرمان boot را اجرا کنید تا هسته مورد نظر شما راه اندازی کنید حتی شما می توانید برای چک کردن هسته وارد محیط single user mode شوید به صورت زیر:

boot> boot -s

booting hd1a:/bsd: 5669864+1601484+935608+0+617568 [89+499848+323884]=0xd351b8

شما در این بخش حتی می توانید به صورت مستقیم نام پارتیشن و نام هسته مورد نظر را در یک خط به صورت زیر وارد کنید تا هسته شما راه اندازی شود:

boot> boot -s hd1a:/bsd