Bootloader “Grub” problems!!!

Dual Os(Windows XP + Linux) သံုးတဲ့ သူေတြမွာ ေတြ႕ရေလ့ရွိတဲ့ ျပႆနာတစ္ခုပါ။ OS ႏွစ္ခု သံုးေနရာကေနၿပီး အေၾကာင္းအမ်ိဳးမ်ိဳးေၾကာင့္ Windows XP ကို ျပန္ၿပီး install လုပ္တဲ့ အခါမွာ ဒီျပႆနာေပၚလာရေတာ့တာပါပဲ။ အေၾကာင္းအရင္းကေတာ့ ဒီလိုပါ။ HDD ရဲ႕ ပထမဆံုး boot sector ျဖစ္တဲ့ MBR (Master Boot Record) ထဲမွာ Linux ကအသံုးျပဳတဲ့ boot loader “Grub” (lilo ကုိ လည္း သံုးလို႕ရပါတယ္) ကို install လုပ္ထားပါတယ္။ ကၽြန္ေတာ္တို႕က Windows XP ကို ျပန္ၿပီး အသစ္ install လုပ္လိုက္တဲ့အခါမွာ “C:\” partition ကို format လုပ္လုိက္တာေၾကာင့္ ဒီ Grub (boot loader) ဖိုင္ေလးပါသြားပါတယ္။ အဲဒါေၾကာင့္ ကၽြန္ေတာ္တို႕ရဲ႕ hard disk ထဲမွာ linux partition ရွိေနေပမယ့္လည္း Boot loader မရွိေတာ့တဲ့အတြက္ System ကို boot လုပ္ေပမယ့္ grub မတက္လာေတာ့ပဲ linux ကို ၀င္မရျဖစ္ၾကရတာပါ။ ဒီ problem အတြက္ solution ကုိ method (2)မ်ိဳးနဲ႕ ေဖာ္ျပလိုက္ပါတယ္။ အဆင္ေျပသလို အသံုးျပဳၾကပါ။

Method – 1

ပထမဆံုး grub boot floppy လုပ္ဖို႕ လိုအပ္ပါတယ္။

Making Grub boot floppy

ကၽြန္ေတာ္ကေတာ့ Explore2fs အကူအညီနဲ႕ Windows ထဲကို၀င္ၿပီး Linux partition ထဲက /boot/grub/* ေအာက္မွာရွိတဲ့ file ေတြ အားလံုးကို copy လုပ္ယူပါတယ္။ အဲဒီ့က ရရွိလာတဲ့ ဖိုင္ေတြကို ယူၿပီး linux run ေနတဲ့ အျခား PC တစ္ခုခုမွာ ေအာက္ပါအတိုင္းလုပ္ပါ -

  1. # mkfs -V -t msdos /dev/fd0
  2. # mount /dev/fd0 /mnt/floppy
  3. # mkdir -p /mnt/floppy/boot/grub
  4. # cp (ကၽြန္ေတာ္တို႕ copy ယူခဲ့တဲ့ ဖိုင္မ်ား) /mnt/floppy/boot/grub
  5. # grub

grub> root (fd0)

grub> setup (fd0) (grub ကို floppy မွာ setup လုပ္တာျဖစ္ပါတယ္)

grub> quit

ဒီအဆင့္အထိ ဘာမွ ျပႆနာမရွိရင္ေတာ့ grub bootable floppy ျပဳလုပ္ျခင္းအဆင့္ ၿပီးပါၿပီ။ ေနာက္တစ္ဆင့္ကေတာ့ ရရွိလာတဲ့ boot floppy ကေနၿပီး system ကို boot လုပ္မွာျဖစ္ပါတယ္။
Boot from Floppy
  1. CMOS ထဲ၀င္ၿပီး floppy ကို first boot လုပ္ပါ။
  2. Floppy ထည့္ၿပီး စက္ကို ဖြင့္လုိက္ပါ(Power On)။ (grub အလုပ္လုပ္ၿပီး linux ထဲကို ၀င္သြားပါလိမ့္မယ္)
Grub ကို MBR တြင္ setup လုပ္ရန္
  1. # grub
grub> find /boot/grub/stage1
root (hd0,?) (လက္ေတြ႕မွာေတာ့ “?” ေနရာမွာ သင့္ hdd ရဲ႕ linux partition number ကို ျပမွာပါ)
grub> root (hd0,?) (အေပၚမွာ ျပလာတဲ့ အတိုင္း ျပန္ရိုက္တာပါ)
grub> setup (hd0)
grub> quit
ပထမ method ေအာင္ျမင္စြာ ၿပီးဆံုးပါၿပီ။ ေနာက္ method တစ္ခုေတာ့ Linux live CD တစ္ခုခုကို သံုးၿပီး grub ကို MBR မွာ ျပန္ၿပီး install လုပ္တဲ့နည္းပါ။ ကၽြန္ေတာ္ကေတာ့ Dyne:bolic live CD ကို သံုးပါတယ္။ multimedia ကုိဦးစားေပးထားတဲ့ live CD ေလးပါပဲ။ သံုးၾကည့္ဖို႕ recommend လုပ္ပါတယ္။ ကၽြန္ေတာ့္ကို ကူညီခဲ့တာ မနည္းေတာ့ပါဘူး။ အျပည့္ အစံုကေတာ့ ဒီလုိပါ -

Method – 2

  1. Linux live CD တစ္ခုခုကို အသံုးျပဳၿပီး Linux ကို boot လုပ္ပါ။
  2. # grub

grub> find /boot/grub/stage1

root (hd0,?) (လက္ေတြ႕မွာေတာ့ “?” ေနရာမွာ သင့္ hdd ရဲ႕ linux partition number ကို ျပမွာပါ)
grub> root (hd0,?) (အေပၚမွာ ျပလာတဲ့ အတိုင္း ျပန္ရိုက္တာပါ)
grub> setup (hd0)
grub> quit
Method (၂)ခုလံုးကို ျခံဳၿပီး ၾကည့္ရင္ေတာ့ ဒုတိယ method က ပိုၿပီး အဆင္ေျပ လြယ္ကူတာကို ေတြရမွာပါ။ မိတ္ေဆြအတြက္ ပိုၿပီး အဆင္ေျပမယ့္ နည္းကို အသံုးျပဳပါ။
:) * :) * :)

Uninstall “grub” from MBR

Linux partition ကို windows ကေနၿပီး format လုပ္တဲ့ သူေတြ ေတြ႕ရတဲ့ျပႆနာတစ္ခုပါ။ Linux partition ကို delete လုပ္ပစ္လိုက္ေပမယ့္လည္း MBR ထဲမွာ boot loader “grub” က ရွိေနေသးတဲ့အတြက္ boot လုပ္တဲ့ အၾကိမ္တိုင္းမွာ grub က အျမဲ တက္ေနပါတယ္။ ဒီအခါမွာ grub ကို uninstall လုပ္တဲ့ နည္းကေတာ့ ဒီလုိပါ -

Using boot floppy

# fdisk /newmbr

Using Windows XP CD

  1. Boot from windows CD
  2. press “R” to repair mode
  3. choose “1″ and type administrator password (password ေပးမထားရင္ blank အတိုင္း Enter ေခါက္ပါ)
  4. type in command prompt “C:\ fixmbr”
  5. to confirm type “y”

ေအာင္ျမင္စြာ ၿပီးဆံုးပါၿပီ။ ေပ်ာ္ရႊင္ႏိုင္ပါေစ။

Leave a Reply