لطفا وارد شوید یا ثبت‌نام کنید تا به انجمن‌ها دسترسی کامل داشته باشید.



 
امتياز موضوع :
  • 0 رأي - معدل امتيازات : 0
  • 1
  • 2
  • 3
  • 4
  • 5
boot with grub
2005-12-30, 05:57 PM,
ارسال : #1
boot with grub
سلام به همه دوستان
من این مطلب را برای یکی از دوستان که لینوکس عربی bintoo را که بر اساس جنتو است از من خواسته بود وبعد از نصب bintoo نمی توانست FreeBSD و دیگر لینوکس هایش را بوت کند نوشتم امیدوارم به درد شما هم بخورد.
سلام
امیدوارم خوش وخرم باشید.
من فایل boot/grub/menu.lst مربوط به لینوکس دبیان را دقیقا اینجا برای شما اورده ام و توضیحاتی به فارسی درجاهایی که لازم باشد خواهم داد.اگر شما هم مثل من یک هارددیسک توی کامپیوترتان داشته باشید وbintoo برای بوت خودش از grub استفاده کند میتوانید تمام os های خودتان را بوت کنید.من هم موقعی که دبیان را نصب کردم دبیان فقط خودش و ویندوز را بوت می کرد در حالی که من علاوه بر اینها solaris و FreeBSD و Fedora را هم داشتم خطهای مربوط به solaris و FreeBSD و Fedora را خودم به این فایل اضافه کردم.برای mount کردن درایوهای Suse هم باید بگویم همانطور که ما برای درایو D ویندوزمان اگر fat32 باشد این کار را انجام میدهیم
[ltr]
mkdir /mnt/D
mount -t vfat /dev/hda5 /mnt/D
[/ltr]
که با این دستور درایو D را میتوانیم در /mnt/D ببینیم.
به همین صورت میتوانیم درایو لینوکسی را اگر فرمت ان ext3 باشد را mount کنیم (در مورد suse نمیدانم از چه فرمتی استفاده میکند از بچه ها توی انجمن بپرس)به این صورت مثلا
[ltr]
mkdir /mnt/boot-fedora
mount -t ext3 /dev/hda8 /mnt/boot-fedora
[/ltr]
که مثلا با این دستورات پارتیشن boot مربوط به فدورا را که فرمت ان ext3 است را توی /mnt/boot-fedora میبینیم.

[ltr]

title Debian GNU/Linux, kernel 2.6.8-2-686
root (hd0,10)
kernel /boot/vmlinuz-2.6.8-2-686 root=/dev/hda11 ro
initrd /boot/initrd.img-2.6.8-2-686
savedefault
boot

title Debian GNU/Linux, kernel 2.6.8-2-686 (recovery mode)
root (hd0,10)
kernel /boot/vmlinuz-2.6.8-2-686 root=/dev/hda11 ro single
initrd /boot/initrd.img-2.6.8-2-686
savedefault
boot
[/ltr]
این خط را خودم اضافه کردم وچون solaris از پارتیشن پرایمری استفاده میکند واز لحاظ موقعیت دومین پارتیشن کامپیوتر من است در حقیقت /dev/hda2 است ولی چون grub اولین پارتیشن کامپیوتر را که c است ودرحقیقت /dev/hda1 است را با نام (hd0,0) میشناسد اینجا پارتیشن solaris که /dev/hda2 است شده (hd0,1) باید بگویم شما که FreeBSD استفاده میکنید وFreeBSD هم مانند solaris از پارتیشن پرایمری استفاده میکند شما کافی است در خط rootnoverify (hd0,3 فقط (hd0,3) را عوض کنید ودقیقا همین خطها را به فایل تنظیمات grub خود اضافه کنید میتوانید از روش ازمایش وخطا با عوض کردن (hd0,3) به (hd0,1) یا (hd0,2) یا خود همان (hd0,3) بتوانید FreeBSD خود را بوت کنید.(hd0,0) نمیشود چون اگر ویندوز داشته باشید همیشه مال ویندوز است.

[ltr]
title Solaris 10
rootnoverify (hd0,1)
makeactive
chainloader +1
title FreeBSD 5.4
rootnoverify (hd0,3)
makeactive
chainloader +1
title Windows XP
rootnoverify (hd0,0)
makeactive
chainloader +1
[/ltr]
اینجا من خطی اضافه کرده ام که ان را بعد از mount کردن پارتیشن boot مربوط به Fedora وخواندن فایل menu.lst مربوط به Fedora ان را دقیقا اینجا کپی کرده ام.یک نکته را باید بگویم اینکه grub از دو روش برای بوت os ها استفاده میکند اولی بوت پارتیشن مانند بوت solaris و ویندوز و FreeBSD و یا بوت پارتیشن بوت یک لینوکس اگر بر روی ان بوت سکتور وجود داشته باشد.مانند بوت پارتیشن Fedora که در زیر اورده ام. روش دوم بوت سیستم عاملهای لینوکسی با دادن ادرس فایل vmlinuz و initrd مربوط به انها به grub که از این روش دوم با داشتن یک فلاپی grub وبوت سیستم از روی فلاپی و بالا اوردن لینوکس در runlevel اول میتوان پسورد root را با دستور
[ltr]
passwd root
[/ltr]
عوض کرد.پس این امکانش به درد هک لینوکس هم میخورد.

[ltr]
title Fedora Core 4 (2.6.11-1.1369_FC4)
root (hd0,7)
kernel /vmlinuz-2.6.11-1.1369_FC4 ro root=LABEL=/ rhgb quiet
initrd /initrd-2.6.11-1.1369_FC4.img
[/ltr]
اینجا همان طور که گفتم پارتیشن بوت Fedora را بوت میکنیم که باز یک صفحه grub جدید جلوی رو خواهیم داشت جون grub روی اولین سکتور این پارتیشن هم نصب شده.
[ltr]
title Fedora Core 4 Boot Partition
rootnoverify (hd0,7)
chainloader +1
[/ltr]
اینجا هم دو فایل initrd و vmlinuz مربوط به یک لینوکس جدید را از روی پارتیشن D که فرمت ان fat32 است را بوت میکنیم تا بتوانیم ان لینوکس جدید را مثلا از روی فایلهای iso ان نصب کنیم تا انجا که من امتحان کرده ام Fedora و Debian این خاصیت را دارند که انها را از روی فایلهای iso ان که توی یک وارتیشن ویندوزی که حتما باید fat32 باشد (ntfs نمیشود) یا لینوکسی کپی شده نصب کرد.من خودم از این روش استفاده میکنم و از نتیجه ان هم راضی هستم چون یک لینوکسی خواهیم داشت که بدون نقص نصب شده.البته من تمام لینوکس هایم را خودم دانلود میکنم وفایل iso انها را هم دارم.
[ltr]
title Linux Install
root (hd0,4)
kernel /vmlinuz root=/dev/ram0 ramdisk_size=12000
initrd /initrd.gz


### END DEBIAN AUTOMAGIC KERNELS LIST
[/ltr]
امیدوارم که با این توضیح هایی که دادم بتوانید مشکل خود را حل کنید البته باید بگویم شما با داشتن یک فلاپی grub میتوانید تمام کارهای بالا را انجام دهید کافی است نوشته های بعد از خط title را توی خط فرمان grub که حال ادم های تازه وارد را خراب میکند وارد کنید.در اخر هم فرمان boot را وارد کنید مثلا برای بوت ویندوز کافی است توی خط فرمان grub فرمانهای زیر را وارد کنید.
[ltr]
rootnoverify (hd0,0)
makeactive
chainloader +1
boot
[/ltr]
شما اگر لینوکس نصب شده ای روی کامپیوترتان نداشته باشید باز هم میتوانید از لینوکسهای live ی مانند knoppix یا parsix استفاده کنید وبا دستورات زیر یک فلاپی بوت grub بسازید.
[ltr]
su
grub-install --root-directory=/boot fd0
[/ltr]
موفق باشید
جستجوی تمامی ارسال های کاربر
نقل قول این ارسال در یک پاسخ
2005-12-30, 06:19 PM,
ارسال : #2
 
zaetosht جان خیلس عالی بود ممنون.

Don't bother, we're using GNU/Linux everywhere, even there Big Grin
Linuxmotto
گروه کاربران لینوکس اصفهان
مشاهده تارنمای کاربر جستجوی تمامی ارسال های کاربر
نقل قول این ارسال در یک پاسخ
2005-12-30, 09:32 PM,
ارسال : #3
 
من الان روی سیستم زوزه۹.۳ دارم حالا میخواهم جنتو یا اسلاک نصب کنم
حالا با توجه به اینکه FS زوزه reisefs هست ( در صورتیکه میتونه ext3 باشه ولی من reiserfs کردم)
من میتونم یک پارتیشن جداگانه بوت برای جنتو درست کنم که با پارتیشن بوت زوزه تداخل ایجاد نکنه چون سیستم فایل این دوتا باه دیگه فرق میکنه حالا این روش بهتره یا نه ؟
جستجوی تمامی ارسال های کاربر
نقل قول این ارسال در یک پاسخ
2005-12-30, 11:40 PM,
ارسال : #4
 
بله میتوانید
هر لینوکس جدیدی میتواند یک پارتیشن بوت برای خودش داشته باشد و بوت لودر خود را بر روی اولین سکتور ان پارتیشن بنویسد ولی واضح است چون یک mbr بیشتر نداریم یکی از سیستم عاملها باید بوت لودر خود را روی ان بنویسد تا هم بتواند خودش وهم دیگران را بوت کند تنها چیز مهم در نصب لینوکس جدید اضافه شدن یا نشدن به تعداد پارتیشنهای کامپیوتر است چون grub شماره پارتیشن برایش مهم است مثلا اگر در حال حاظر 5 پارتیشن دارید ومثلا grub ی که روی mbr نصب شده لینوکس شما را از روی پارتیشن 4 بوت میکند و میخواهید 2 پارتیشن جدید بسازید که از لحاظ موقعیت بین پارتیشن 3 و4 قرار گیرند در نتیجه از این به بعد باید به grub بگویید لینوکس فبلی تان را از روی پارتیشن 6 بوت کند نه 4 با این روش بیشتر از 40 لینوکس هم میتوانید داشته باشید وغمی هم نداشته باشید.
جستجوی تمامی ارسال های کاربر
نقل قول این ارسال در یک پاسخ
2005-12-31, 03:33 AM,
ارسال : #5
 
نوشته خوبیه و فکر کنم بدرد خیلی‌ها بخوره. ممنون.
من یه مشکلی با گراب دارم که تا حالا کسی نتونسته ازش سر دربیاره: من دو تا هارد دیسک دارم که hdb رو Slave گذاشتم و hda هم Masterه. نمی دونم چرا هر وقت توزیعی روی hdb نصب می‌کنم GRUB سیستم رو لود نمیکنه و Error 21 میده. کسی ایده‌ای داره که اشکال از کجاست؟

Those who sacrifice liberty for security deserve neither.
Benjamin Franklin
جستجوی تمامی ارسال های کاربر
نقل قول این ارسال در یک پاسخ
2006-01-01, 12:44 AM,
ارسال : #6
 
من 2 هارد با هم تا حالا نداشته ام همانطور که اول مطلب هم گفتم.ولی یک سوال من از شما داشتم ایا شما لین لینوکسی را که روی hdb نصب میکنید مدیریت mbr را هم به ان میدهید یا به ان میگویید که grub خودش را روی اولین سکتور پارتیشن بوت بنویسد یا اگر پارتیشن بوت هم درست نکند روی اولین سکتور پارتیشن root بنویسد به نظر من بهتر است شما به لینوکسهایی که روی hdb نصب میکنید بگویید که بوت کننده خودش را روی اولین سکتور پارتیشن خودش بنویسد. تازه اگر هیچ بوت لودری هم نصب نکند با دادن ادرس فایلهای initrd.gz و vmlinuz این لینوکس جدید به grub لینوکسی که روی hda نصب شده باید بتوانید ان را بوت کنید .
جستجوی تمامی ارسال های کاربر
نقل قول این ارسال در یک پاسخ
2006-01-01, 01:40 AM,
ارسال : #7
 
من هر سه حالت را امتحان کردم. مدیریت بوت رو به توزیع روی hdb دادم یا در اختیار توزیع روی hda گذاشتم. هم روی mbr نصب کردم و هم روی پارتیشن root. البته این آخری فقط در مورد توزیعهایی که روی hdb نصب کردم. نتیجه همون بوده. البته چون چند بار این کار رو انجام دادم یه مقدار قروقاطی شده اما فکر می‌کنم همه این راه‌ها از جمله اصلاح دستی menu.list در GRUB رو امتحان کردم اما مشکل حل نشد.

Those who sacrifice liberty for security deserve neither.
Benjamin Franklin
جستجوی تمامی ارسال های کاربر
نقل قول این ارسال در یک پاسخ


رفتن به انجمن :


کاربران در حال مشاهده موضوع : 1 مهمان