احیای مدیر بوت گراب(721 مجموع کلمات موجود در متن) (7021 بار مطالعه شده است) احیای
مدیر بوت GRUB
برای
هر کاربر گنو/لینوکس
یا بطور کلی هر کاربر رایانهای که سیستمی
بـا چند سیستمعامل دارد پیش میآیـد
کــه بــه دلایل مختلف مدیر بوت سیستم
[۱]
دچار
مشکل شده و سیستم امکان بــوت شــدن بــه
سیستمعاملهای مختلف را از دست میدهد.
این
حالت به طور معمول زمانی بروز میکند کـه
سیستمعامل جدیدی نصب میشود.
متداولترین
موارد، نصب یک نسخه از سیستمعاملهای
ویندوز مایکروسافت یا نصب یک توزیع دیگر
گنو/لینوکس
بر روی سیستم است.
در
مــورد سیستمعاملهای ویندوز بــه ایــن
دلیــل کـه این سیستمعاملها امکان بوت
چندگانه با سیستمعاملهایی غیر از خانواده
سیستمعاملهای ویندوز مایکروسافت را
ندارند، اختیار بوت سیستم را از مــدیر
بوت گنو/لینوکس
میگیرند.
اما
در مورد توزیعهای مختلف گنو/لینوکس،
ممکن است این مشکل به دلایل متـفاوتی بروز
کند. در
این نوشته راهحلی برای رفع این مشکل و
بازیابی تنظیمات یک مدیر بوت ارائه
میکـنـیم.
بــا
وجــود ایـنـکه در سایتهای مختلف و به
روشهای گوناگون راهحلهایی برای حل
این مشکل ارائه شده اما به نظر میرسد
ارائـه یـکـجـا و یـکـباره راهحل ایده
بدی نباشد.
گذشته
از این، اضافه کردن یک راهحل به راهحلهای
قبلی کار مضمومی نیست!
فرض
بر این است که سیستم تنها یک هارد دیسک
دارد و به عنوان مدیر بوت هم از GRUB
استفاده
میکند.
سیستم
را با یک هارد دیسک در نظر گرفتهام زیرا
وجود بیش از یک هارد دیسک بر روی سیستم
حالات بروز چنین مشکلی را متنوع و ارائه
راهحل برای آن را پیچیده میکند.
مدیر
بوت GRUB هم
به این دلیل انتخاب شده است که بیشتر
توزیعهای جدید از این مدیر بوت استفاده
میکنند.
مدیر
بوت GRUB
امکانات
متنوعی دارد و در نسخــههای اخـیــر
کـمـتـر پـیـش آمده که در شناسایی
سیستمعاملهای گوناگون دچار اشتباه شود.
از
این مقدمات که بگذریم میرسیم به راهحــل؛
فرض کنید که شما یک توزیع گنو/لینوکس
بر روی اولین پارتیشن منطقی [۲]
هارد
دیسک خود نصب کردهاید که مدیر بوت GRUB
نصب
شده بـــا این توزیع، کنترل بوت سیستم را
بـرعهده دارد.
به هر
دلیل این مدیر بوت صدمه دیده و شما قصد
احیای آن را دارید.
اولین
کاری که باید انجام دهید این است که سیستم
را بــا یــک دیسک زنــده بــوت کنید.
من از
پارسیکس [۳]
استفاده
کردم. اما
تمام مراحل، غیر از یک قسمت، میبایست
در سایر دیسکهای زنده هم به همین ترتیب
باشد.
مشکلترین
بخش کار و اختلافی کــه در دیسکهای زنــده
گوناگون وجود دارد در ایـن بـخـش است.
یعنـی
در یافتن نام پارتیشنی که GRUB
مورد
نظر ما برای احیا، در آن پارتیشن نصب شده
است.
به
خاطر دارید کـه ما قصد احیای GRUB
نصب
شده بر اولین پارتیــشن منطقی [۲]
روی
هــارد دیسـک را داریــم.
نــوع
نامگذاری پارتیشنهای یک دیسک سخت IDE
ما را
به این نتیجه میرساند کـه نـام ایــن
پـارتـیـشـن hda5
است
یا چنین کاراکترهایی در نام پارتیشن وجود
دارد.
بــرای
اطلاع از نــوع نــامــگـذاری پارتیشنهای
هارد دیسک مقاله "نحوه
نامگذاری پارتیشنها در لینوکس"
[۴]
را
بخوانید.
لینوکس
سختافزارهای متصل شده به سیستم را در
دایرکتوری dev
ثبت
میکند.
بنابراین
شما میبایست در این دایرکتوری بدنبال
نام کامل پارتیشن مورد نظر خود یعنی hda5
باشید.
در
دیسک زنده پارسیکس درون دایرکتوری dev
نام
پارتیشنهای دیســـک سخت در یـــک
زیردایرکتوری [۵]به
نام disk
به
چهار شکل و در چهار دایرکتوری ثبت شده
است. که
ما از دایــرکـتوری by-id
استفاده
میکنیم و در این دایرکتوری بدنبالpart5
میگردیم.
نام
کامل hda5
مشخص
شده است.
وقتی
که نام کامل پارتیشن مورد نظر خود را
یافتیم، بــا دســتـور mount
آن را
به دایرکتوری media/hda5/
متصل
مینماییم.
به
عنوان مثال برای هارد دیسک سیستم من که
در تصویر میبینید:
#
mount /dev/disk/by-id/ata-Maxtor_4D040H2_D24H1D5E-part5 /media/hda5
در
صورتی کــه بــرای پیدا کردن پارتیشن نصب
شده خــود بـاز هم مشکل دارید، راه حل
دیگری نیز وجود دارد.
پارسیکس
هنگام بوت تمامی پارتیشنهای دیسک سخت
را شناســایی و در fstab
اضافه
میکنـد.
بــا
کلیک روی آیکون کامپیوتر بر روی میزکار
میتوانید ببینید که چه پارتیشنهایی
وجود دارد.
با
کلیک روی هرکدام خواهید توانست محتویات
آنــرا دیده و سپس پارتیشن محل نصب خود
را پیدا کنید (پارتیشنی
خواهد بود که در آن تمامی شاخههای اصلی
سیستم مانـنـد boot،
dev،
lib و...
وجود
دارند). پس
از پیدا کردن پارتیشن ریشه، مجددا با کلیک
راست بر روی آیکون آن که اینبار بر روی
میزکار ایجاد شده است، آنرا unmount
کرده
و سپس دستور زیر را بصورت کاربر ریشه وارد
کنید (فرض
میکنیم پارتیشن ریشه همان hda5
میباشد):
#
mount /dev/hda5 /media/hda5
حالا
با دستور chroot
مسیر
media/hda5/ را
به عنوان مسیر root
جدید
معرفی کنید:
#
chroot /media/hda5
کار
نزدیک به انجام است.
فقط
دو دستور دیگر باقی مانده:
#
grub-install /dev/hda
#
exit
GRUB
نصب
شده بر روی توزیع گنو/لینوکس
موجود بر پارتیشن hda5
احیا
شده است.
توجه
داشته باشید که فرض ما بر این است که لینوکس
هارد دیسک IDE
سیستم
شما را با نام hda
شناخته
است. ممکن
است لینوکس به دلایلی هارد دیسک IDE
سیستم
شما را hda
نشناسد
و مثلاً hdc
شنــاسایی
کــند. یا
اینکه هارد دیسک سیستم شما از نوع IDE
نباشد
که دیگر خارج از بحث ماست.
در این
حالت بجای hda
در
دستور بالا باید نام هارد دیسک خود را
بگذارید.
این
روش با توزیعهای دبیان، اوبونتو، پارسیکس
و زوزه امتحان شده و موثر بوده است.
بهنام
بهجت مرندی blixbox@gmail.com
PDF Version
[۱]
Boot Loader [۲]
Logical [۳]
http://www.parsix.org/ [۴]
http://technotux.org/html/modules.php?op=modload& name=Sections&file=index&req=viewarticle&artid=48&page=1 [۵]
Sub Directory |