با چند سیستم عامل نصب شده در پارتیشن های گوناگون چگونه می توان انتخاب کرد با کدام سیستم عامل کامپیوتر شما بوت شود؟ معمولا هر توزیع لینوکس یک برنامه مدیریت بوت دارد، دوبرنامه مشهور عبارتند از lilo و grub که مخفف (Grand Unified Boot loader) میباشد که در این مطلب به برنامه grub خواهیم پرداخت.
ویژگیهای grub:
بوت کردن با گراب
هنگامی که لینوکستان را نصب میکنید، اطلاعات مورد نیاز برای بوت شدن کامپیوتر (با یک یا چند سیستم عامل) بصورت خودکار ذخیره میشود. سیستم خود را بوت کنید. هنگامی که صفحه بوت گراب را دیدید، میتوانید یکی ازکارهای زیر را انجام دهید:
- به هیچ چیز دست نزنید. در اینصورت سیستم شما پس از چند ثانیه با سیستم عامل پیشگزیده (که احتمالا لینوکس است) بوت خواهد شد.
- یک سیستم عامل انتخاب کنید. میتوانید از کلیدهای بالا و پایین جهت انتخاب سیستم عامل مورد نظرتان استفاده کنید. سپس با فشردن کلید Enter کامپیوتر با سیستم عامل انتخاب شده بوت خواهد شد. هنگام نصب لینوكس، سایر سیستمعاملهای نصب شده در کامپیوترتان را بطور خودکار به لیست گراب اضافه میشوند.
-ویرایش پروسه بوت. در صورتی که مایلید گزینههای مورد استفاده هنگام بوت را تغییر دهید، از کلیدهای مکان نما برای انتخاب سیستم عامل و فشردن یک کلید برای این کار را استفاده کنید.
در صورتی که مایـلیـد گـزینههـای بـوت شــما بـصورت دائـمی تـغـیـیر کـنـند، بـاید ایـن گـزینه ها را در فایل boot/grub/grub.conf ویرایش کنید. البته برای ویرایش این فایل باید بصورت کاربر ریشه وارد سیستم شوید. (بااستفاده از دستور su).
اضافه کردن یک image بوت جدید در گراب
این امکان وجود دارد که شما image های بوت مختلفی برای هسته های مختلف نصب شده در سیستمتان داشته باشید. لینوکس این امکان را داراست که شما در یک زمان بتوانید چند نسخه از هسته سیستم عامل را نصب کنید و در مواقع لازم سیستمتان را با هرکدام که مایلید بوت کنید! این امکان هنگامی مفید است که بخواهید از هسته هایی که دارای قابلیتهای متفاوتی هستند استفاده کنید ویا شما علاقه دارید با تغییر در هسته های موجود هسته ای مطابق با نیازهای خود ایجاد کرده و آنرا آزمایش کنید در حالی که هسته اصلی سیستم سرجای خود باقی است. برای اضافه کردن image های بوت در فایل پیکربندی گراب باید مراحل زیر را انجام دهید:
۱. فایل image جدید را از دایرکتوری که ایجاد شده (مثلا usr/src/linux-2.6/arch/i386/boot) به دایرکتوری boot کپی کنید. نام آنرا طوری تعیین کنید که متوجه محتویات آن بشوید مثلا:
۲. خطوطی را که امکان بوت کردن فایل image جدید را فراهم میکنند را در فایل پیکربندی گراب یعنی boot/grub/grub.conf اضافه کنید. برای مثال :
root (hd0,1)
kernel /vmlinuz-2.6test11 ro root=LABEL=/ linux 5
initrd /initrd-2.6test11.img
۳. کامپیوتر خود را بوت کنید.
۴. هنگامی که صفحه آغازین گراب ظاهر شد، میتوانید گزینه جدید اضافه شده را انتخاب نموده و کلید Enter را فشار دهید.
مزیت اینکه برای هر هسته جدید گراب گزینه جدیدی برای بوت اضافه میکند، این است که اگر در هر صورت هسته جدید هنگام بوت با مشکل مواجه شود، میتوانید از هستههای قدیمی تر که روی سیستم موجود است، برای بوت کردن استفاده کنید. هنگامی که مشخص شد هسته جدید به اندازه کافی پایدار و مناسب است میتوانید آنرا جایگزین هسته قدیمی کنید و یا فقط در گراب آنرا تبدیل به گزینه پیشگزیده نمایید.
انجام عملیات ترمیم
در بسیاری از توزیعها بدون داشتن دیسکهای زنده قادر به ترمیم مدیر بوت نخواهید بود و راهی جز نصب مجدد باقی نخواهد ماند. ولی داشتن یکی از این دیسکها به عنوان یک ابزار جانبی کمک بزرگی در چنین مواردی خواهد بود. بنابراین توصیه میکنم که حتما یکی از این دیسکها را داشته باشید.
انجام عملیات ترمیم بسیار ساده بوده و در مدت بسیار کمی قابل انجام است. کافی است که دیسک زنده خود را وارد سیستم نموده و بوت نمایید. پس از اتمام بوت، بصورت کاربر ریشه وارد شده و دستور ترمیم مدبر بوت را وارد نمایید. این دستور بسته به مدیر بوت پیشگزیده سیستم که ممکن است لیلو یا گراب باشد متفاوت خواهد بود.
مدیر بوت گراب (GRUB)
بسیاری از توزیعها از مدیر بوت گراب برای بوت خود استفاده میکنند. از این توزیعها میتوان به ردهت، لیبرانت، مندریک و اشاره کرد. در این توزیعها کافی است که پس از ورود به سیستم بصورت متنی یا در یک پنجره ترمینال در حالت کاربر ریشه دستور زیر را وارد نمایید:
من هادی فرنود متولد شیراز هستم. رشته تحصیلی من فن آوری اطلاعات است اما مطالب این سایت تقریباً هیچ ربطی به IT ندارد. کلیه طالب این وبلاگ عقاید شخصی اینجانب می باشد و جنبه انتقادی دارد. در این وبلاگ از هیچ گروه سیاسی حمایت نمیشود و نخواهد شد. کلیه حقوق مطالب این سایت متعلق به نویسنده آن "هادی فرنود" میباشد و هرگونه کپی برداری بدون اطلاع ممنوع است!
آرش
ژوئن 7th، 2006 در زمان 9:16 ق.ظ
You need to invoke grub-install everytime you apply any change in grub.conf, otherwise changing it would be completley out of use
msalehi
ژوئن 17th، 2006 در زمان 6:39 ب.ظ
لطفا به سوالهای من پاسخ دهید با سپاس و تشکر فراوان
ایمیل من salehi_male@yahoo.com
1. چرا هسته اصلي لينوكس(kernel) مدير پروسس ها نيست؟
2. نقش پروسس INIT چيست و اگر بدلايلي TERM(Kill) شود چه اتفاقي خواهد افتاد ؟
3. چرا اكيدا توصيه مي گردد كه سيستم را بدون اجراي shutdown خاموش نكنيد.
4. run level چيست و معمولا لينوكس با چه run level بالا مي آيد.
5. respawn را تشريح نموده و بگوئيد كه كاربرد استفاده ار آن چيست .
6. تعدادي دايركتوري با نامهاي rc1.d , rc2.d , rc3.d تحت /etc قرار دارد كاربرد اين دايركتوري ها چيست ؟
7. براي آنكه يك سرويس تحت يك run level اجرا نگردد چه مي كنيد ؟
8. فرمان shutdown چه مي كند(دقيقا شرح دهيد)
9. به فايل /etc/inittab نگاهي انداخته و powerfail را تشريح نمائيد
10. فرمان init 3 چه كاري را انجام مي دهد ؟
هادی فرنود
ژوئن 17th، 2006 در زمان 11:55 ب.ظ
msalehi said:
میدونید برای جواب دادن به این سوالات باید 8 صفحه بنویسم.چون سوالات شما خیلی عمیق و اساسی است و باید مقدمه زیادی برایش گفت.
Afshin
جولای 26th، 2009 در زمان 2:13 ب.ظ
سلام آقای فرنود
من افشین از شیراز هستم
میخواستم ببینم شما که به لینوکس وارد هستین میتوانید در مورد سوال زیر به من کمک کنید.
به چه شکل می توانم در هسته لینوکس تغییر ایجاد کنیم ؟(منظورم از تغییر خیلی جزعی هست)
ممنون میشم اگر کمکم کنید.
هادی فرنود
جولای 26th، 2009 در زمان 7:20 ب.ظ
تغییر در هسته به معنی کامپایل دوباره اون هست. البته بستگی به نوع تغییر هم دارد
Afshin
آگوست 21st، 2009 در زمان 4:20 ب.ظ
بازم سلام
خوب اطلاعاتی کمی در مورد کمپایل دارم ونمیدونم چه جوری تغییرش بدم
اگر مطالبی که فکر میکنی به دردم میخوره برام بفرس ممنون میشم .