sub.zer0 موضوع و زمان تقریبی جلسه چهارم زنجان لاگ
مهر ۲۴

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

تعمیر LILO پس از نصب ویندوز در Slackware

منبع : http://slackfa.blogspot.com/

ابتدا با سی دی یا دی وی دی Slackware کامپیوترتان را بوت کنید پس از اینکه با کاربر ریشه وارد شدید با دستورات زیر LILOرا تعمیر کنید

mkdir /mnt/linux#
# mount -w /dev/sda11 -نام پارتیشنی که لینوکس بر روی آن نصب است – /mnt/linux
# cd /mnt/linux
#chroot /mnt/linux /bin/bash
# file /boot/vmlinuz
# lilo -v
# reboot

تعمیر بوت لودر GRUB صدمه دیده
منبع: http://www.gnuiran.org/index.php?name=Sections&req=viewarticle&artid=41&allpages=1&theme=Printer

0.مقدمه

بسیاری از کاربران گنو/لینوکس [۲]درایران هنوز به دلیل مشکلاتی مانند وابسته بودن به نرم افزارهای خاص در محل کار و یا استفاده از برخی نرم‌افزارهای خاص در منزل یا ناآشنایی با سیستم گنو/لینوکس هنوز سیستم‌های ویندوز خود را به همراه لینوکس برروی ماشین خود نصب شده دارند؛ از آنجایی که ویندوز سیستم عاملی ناپایدار است، هر چند وقت یکبار نیاز به نصب مجدد دارد، این نصب مجدد باعث می‌شود تا ویندوز MBR دیسک سخت شما را پاک کرده و اطلاعات خود را برروی آن بنویسد و از آنجایی که ویندوز بوت‌لودری چند سیستم عامله ندارد، این دوباره نویسی MBR باعث پاک شدن اطلاعات مورد نیاز بوت لودر لینوکس شما می‌شود، در نتیجه زمان بوت سیستم دیگر به لینوکس دسترسی نخواهید داشت. در حال حاضر دو بوت لودر مشهور و محبوب برای گنو/لینوکس وجود دارد، یکی LiLo و دیگری GRUB [3]. در این مقاله قصد دارم بازیابی بوت‌لودر GRUB [4] را به شما بیاموزم؛ دلیل انتخاب گراب، استفاده‌ی فراوان از این بوت‌لودر در توزیع‌های جدید و حتی یونیکس‌های جدید مانند Solaris 10 نیز استفاده می‌شود.

۱٫سناریوی اشکال

شما لینوکس یا لینوکس‌های خود را نصب می‌کنید، پس از مدتی سیستم عامل ویندوز شما دچار عیب شده دیگر اجرا نمی‌شود، برای اجرا نشدن ویندوز دلایل بسیاری وجود دارد و دلایل بیشتری برای نصب مجدد ویندوز؛ بسیار خب شما ویندوز را مجددا نصب می‌کنید، اما از آنجایی که ویندوز یک سیستم عامل منفرد است و بوت‌لودری ندارد که چند سیستم عامل را همزمان اجرا کند بنابراین اطلاعات موجود در سکتورهای بوت سیستم شما را پاک می‌کند. بعد از راه اندازی مجدد سیستم (Reboot) دیگر از بوت لودر لینوکس و گزینه‌های مربوط به لینوکس خبری نیست و سیستم ویندوز شما مستقیما اجرا می‌شود. در چنین وضعیتی اغلب، کاربران تازه‌کار لینوکس (های) خود را مجددا نصب می‌کنند که این کار علاوه بر اتلاف وقت بسیار، باعث از دست دادن مقدار زیادی اطلاعات و تنظیماتی می‌شود که شما در مدت کار با لینوکس ایجاد کرده بودید. پس راه حل چیست؟ برای تعمیر سیستم کافیست بوت لودر گراب خود را از ابتدا نصب کنید، این کار بسیار ساده و در اندک زمانی ممکن است. برای تعمیر بوت لودر خود تنها به یک دیسک زنده‌ی لینوکس نیاز دارید.

 

 

 

 

 

اگر با دیسک‌های زنده آشنایی داریدمی توانید از قسمت شماره ۳ ادامه دهید، اما اگربا مفاهیم دیسک‌های زنده آشنا نیستید :
دیسک‌های زنده‌ی لینوکس یا Linux Live CD ها توزیع‌هایی از گنو/لینوکس هستند که برروی CD یا DVD حتی Floppy اجرا می‌شوند. در حقیقت کافیست تا CD یا DVD را در درایو خود قرار دهید و سیستم را Reset کنید، سیستم عامل لینوکس شما از روی CD یا DVD *بدون نیاز به نصب* به طور کامل اجرا می‌شود، این سیستم بنا به نوع توزیع می‌تواند کاربردی خاص داشته باشد و یا تمام ویژگی‌های یک لینوکس کامل را داشته باشد. تفاوت عمده‌ی این توزیع‌ها با توزیع‌هایی که برروی دیسک سخت نصب می‌شوند در نحوه‌ی اجرای این توزیع‌هاست، این توزیع‌ها از روی CD یا DVD اجرا می‌شوند اما توزیع‌های نصبی از روی دیسک سخت اجرا می‌شوند و قبل از اجرا نیاز به نصب برروی دیسک سخت دارند. سرعت دیسک‌های زنده کمتر از لینوکس‌هایی است که برروی دیسک سخت نصب شده‌اند، چرا که از طریق CD اجرا می‌شوند اما توزیع‌های نصب شده از طریق دیسک سخت که سرعت بالاتری دارند اجرا می‌شوند. حجم یک دیسک زنده از ۱مگابایت تا چندین گیگابایت متغییر است، برای نمونه دیسک زنده‌ی مشهور Damn Small Linux یا DSL [5] تنها ۵۰ مگابایت حجم دارد که در همین حجم کم یک میزکار تمام گرافیکی و تعداد زیادی برنامه‌ی مفید وجود دارند.(از سرویس‌دهنده‌ی وب و ftp تا برنامه‌ی صفحه گسترده و بازی!) یکی از توزیع‌های مشهور که به صورت دیسک زنده توزیع می‌شود Knoppix [6] است. (بخوانید کنوپکس /Knopeks/) این توزیع با میزکار گرافیکی KDE [7] و تعداد زیادی برنامه توزیع می‌شود.(برای اطلاعات بیشتر می‌توانید به  [۸]/www.knoppix.com” title=”Knoppix”> Knoppix ” title=”لیست برنامه‌های موجوددر کنوپکس”>اینجا مراجعه کنید). دیسک زنده‌ی دیگری به نام Parsix [9] وجود دارد که از طرف شرکت تالاروب در ایران توزیع و ارائه شده است، این دیسک زنده برپایه‌ی Knoppix بوده و با توجه به نیازهای داخلی در ایران توزیع می‌گردد.

 

۳٫سناریوی نجات

 

پس ابزار کارما یک دیسک زنده است فرقی ندارد DSL [10] باشد یا Parsix [11] مهم این است که سیستم را از طریق یک دیسک زنده بوت کنیم. پس از بوت سیستم از طریق دیسک زنده یک پنجره‌ی خط فرمان (ترمینال) باز کنید و در آن مراحل زیر را طی کنید:

۳.۱.با وارد کردن دستور su به حالت کاربر ریشه یا root بروید.(در برخی توزیع‌ها باید از دستور sudo su استفاده کنید).

۳.۲.باید بدانید که لینوکسی که گراب شما را نصب کرده است در کدام پارتیشن قرار دارد، اگر چند توزیع لینوکس دارید باید بدانید که آخرین بار کدام یک از این توزیع‌ها GRUB [12] را نصب کرده، برای نمونه اگر ابتدا Redhat را نصب کرده‌اید و بعد Debian [13] را نصب کرده‌اید پس GRUB [14] موجود در سیستم شما را Debian [15] نصب کرده. خوب در این حالت باید بدانید Debian [16] در کجای سیستم شما نصب شده است. اگر نمی‌دانید از طریق همان دیسک سخت تمام پارتیشن‌های خود را Mount کنید و سپس به جستجوی پارتیشنی بروید که دبیان نصب شده. در این نمونه دبیان در پارتیشن hda6 نصب شده است. پس hda6 را mount می‌کنم. (اغلب دیسک‌های زنده تمام پارتیشن‌های موجود در هارد دیسک را به صورت پیش فرض زمان بالا آمدن سیستم mount می‌کنند.)

۳.۳.حالا با دستور chroot ریشه‌ی سیستم را تغییر می‌دهیم!! برای این کار این گونه عمل می‌کنیم:

#chroot /mnt/hda6

مسیر mnt/hda6/ درواقع همان پارتیشنی است که سیستم لینوکس در آن نصب شده.با استفاده از این روش شما پارتیشن ”/ “خود را از دیسک زنده به مسیری که وارد کرده‌اید تغییر داده‌اید.

۳.۴. بسیار خوب حالا GRUB [17] رااجرا کنید:

 

#/sbin/GRUB

در مقابل شما صفحه‌ای قرار می‌گیرد همراه با یک اعلان (Prompt) که آماده‌ی دریافت دستورات است.

GNU GRUB version 0.95 (640K lower / 3072K upper memory) [ Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists the possible completions of a device/filename. ] GRUB>

۳.۵. در این مرحله لازم است تا بدانید GRUB [18] را در کجا نصب کرده بودید؟ اگر برای سیستم خود پارتیشن boot ایجاد کرده بودید، پارتیشن گراب همان پارتیشن بوت است، اگر چنین پارتیشنی ایجاد نکرده بودید پارتیشن بوت شما همان پارتیشن لینوکس است.برای مطمئن شدن می‌توانید در پارتیشن‌های خود boot/grub/ را جستجو کنید.

۳.۶.حالا محل نصب GRUB [19] را به برنامه معرفی کنید:

>root (hd0,5)

در این مرحله می‌توانید دستور را به شکل root (hd0, TAB بکار ببرید، در حقیقت با زدن یک Tab گراب لیستی از پارتیشن‌های موجود برروی دیسک سخت شما همراه با نوع فایل سیستمشان را نمایش می‌دهد. گراب برای نمایش پارتیشن‌های دیسک سخت از مدل یونیکس استفاده می‌کند،در مدل یونیکسی hda همان hd0 می‌شود و hda6 همان hd0,5 می‌شود، در واقع GRUB [20] علی رغم استاندارد گنو/لینوکس پارتیشن‌ها را از ۰ آغاز می‌کند. برای نمونه به جدول زیر توجه کنید.

پارتیشن‌ها در لینوکس hda1 hda2 hda3 hda4 hda5 ha6 hda7
پارتیشن‌ها در GRUB (hd0,0) (hd0,1) (hd0,2) (hd0,3) (hd0,4) (hd0,5) (hd0,7)

۳.۷ مرحله‌ی آخر دستور نصب است، برای این کار تایپ کنید:

>setup (hd0)

سپس

>quit

گراب شما نصب شده است، سیستم را reboot کنید، در این بارگذاری سیستم خواهید دید که GRUB [21] شما نصب شده است و می‌توانید بدون مشکل از کار با سیستم لینوکستان لذت ببرید.

توجه: در برخی دیسک‌های زنده‌ی جدیدتر مانند پارسیکس گنو/لینوکس نسخه‌ی ۰٫۸۵ یا Knoppix نسخه‌ی ۴٫۰ دیگر نیازی به اجرای مرحله‌ی ۳.۳ یا chroot کردن نیست و شما می‌توانید مستقیما با اجرای دستور Grub و انتخاب root به نصب بوت لودر گراب بپردازید.

امیدوارم این مقاله توانسته باشد به شما در حل مشکل بوت لودرتان کمک کرده باشد، در صورتی که پرسشی در رابطه با این مقاله برایتان پیش آمده می‌توانید در انجمن‌های گنوایران.ارگ [۲۲] پرسش خود را مطرح کنید& علاوه بر این به شما توصیه می‌کنم مقاله‌ی پشتیبان‌گیری ازGRUB [23] را نیز مطالعه و از بوت لودر خود یک پشتیبان تهیه کنید، بااین کار زمانی که بوت لودر سیستم شما درچار مشکل شد می‌توانید بدون از دست دادن زمان و به دور از هر گونه استرس تا تعمیر بوت لودر گراب خود به کارهای روزمره‌ی خود برسید.

برگرداندن بوت لودر ویندوز!

در این مورد هم اقا مهدی خودمون در پست قبلی اشاره ای داشتن که لازم دیدم برای تکمیل شدن این مطلب اینجا هم بیارمش:
اگر به هر دلیلی دیگه نمی‌خواهید که از گراب و لینوکس استفاده کنید و میخواهید گراب را پاک کرده و از همان روش معمولی بوت شدن ویندوز استفاده کنید، سیستم رو با CD ویندوز XP بوت کنید و وقتی به مرحله شروع نصب رسید، به جای اینکه بزنید ویندوز شروع به نصب کنه، دکمه R را بزنید تا وارد Recovery بشید. از اون دستور زیر رو اجرا کنید و به پیغام های هشدار، جواب مثبت بدهید تا بوت لودر ویندوز جایگزین گراب بشه:
fixmbr

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

نوشته ای از فرید احمدیان \\ tags: boot loader, grub, lilo, بوت لودر, لیلو, گراب

۲ دیدگاه برای “ تعمیر بوت لودر های لینوکس”

  1. وحید می گوید:

    بعد از تعمیر گراب لینوکس گزینه ی ویندوز از لیستش حذف شد
    حالا چه کنیم که ویندوز برگرده؟

  2. فرید احمدیان می گوید:

    من فکر میکنم اگه این مطلبو گوگل کنید زودتر به نتیجه میرسید

نوشتن دیدگاه