Pages

Sunday, June 20, 2010

Reinstall Grub in sgl & ubuntu 9.10

Using Super Grub Cds

ലിനക്സ് ഉപയോഗിക്കുന്ന പലരും വിഷമത്തിലാകുന്ന ഘട്ടമാണല്ലോ ബൂട്ട് ലോഡര്‍ മിസ്സിംഗ് (grub error) . ഗ്രബ് നഷ്ടപ്പെട്ടാല്‍ ഗ്രബ് സി.ഡി. ഉപയോഗിച്ചും റെസ്ക്യൂ മോഡിലുമാണ് (rescue mode) സാധാരണയായി നാം ഗ്രബ് പുനസ്ഥാപിക്കാറ്. എന്നാല്‍ പല ഘട്ടങ്ങളിലും പരിപൂര്‍ണ്ണവിജയത്തിലെത്താന്‍ നമുക്ക് സാധിക്കാറില്ല. ഇതിനൊരു പരിഹാരം തന്നെയാണ് സൂപ്പര്‍ ഗ്രബ് സി.ഡി.കള്‍. പലതരത്തിലുള്ള സൂപ്പര്‍ ഗ്രബ് സി.ഡി.കളും ഇന്ന് നെറ്റില്‍ സുലഭമാണ്. പലതിന്റെയും പ്രവര്‍ത്തനം പലതരത്തിലുമാണ്. താഴെ കാണുന്ന ലിങ്കില്‍ നിന്നും ഒരു സൂപ്പര്‍ ഗ്രബ് സി.ഡി. ഡൌണ്‍ ലോഡ് ചെയ്യാം.(348 KB Only)

sgd_cdrom_1.21.iso.gz

ഡൌണ്‍ ലോഡ് ചെയ്ത sgd_cdrom_1.21.iso.gz എന്ന ഫയല്‍ Extract ചെയ്താല്‍ sgd_cdrom_1.21.iso എന്ന ഇമേജ് ഫയല്‍ ലഭിക്കും . ഈ ഫയല്‍ right click-Write to Disc എന്ന രീതിയില്‍ സി.ഡിയിലേക്ക് റൈറ്റ് ചെയ്താല്‍ സൂപ്പര്‍ ഗ്രബ് സി.ഡി. തയ്യാറായി.(Ubuntu 9.10 ല്‍ ഇങ്ങനെ റൈറ്റ്ക്ലിക്ക് ചെയത് സി.ഡി.യിലേക്ക് write ചെയ്യരുത്. പകരം Sound & Video-k3b,Accessories-CD/DVD Creator എന്നീ രീതിയില്‍ Disc burning യൂട്ടിലിട്ടികള്‍ ഓപ്പണ്‍ ചെയ്ത് സി.ഡി.write ചെയ്യുക) റൈറ്റ് ചെയ്യാന്‍ നല്ല സി.ഡി.തന്നെ തിരഞ്ഞെടുക്കുക.
സാധാരണ ലഭിക്കുന്ന ഗ്രബ് സി.ഡി. കള്‍ Ext3 ഫയല്‍ സിസ്റ്റം വരെ സപ്പോര്‍ട്ട് ചെയ്യുകയുള്ളൂ . എന്നാല്‍ ഈ സൂപ്പര്‍ ഗ്രബ് സി.ഡി. Ext4 ഫയല്‍ സിസ്റ്റത്തിനും സപ്പോര്‍ട്ട് ആവുന്നു എന്നതാണ് ഇതിന്റെ ഏറ്റവും വലിയ പ്രത്യേകത.

ഗ്രബ് പുനഃസ്ഥാപിക്കുന്ന വിധം
സി.ഡി. ഡ്രൈവിലിട്ട് First Boot Device സി.ഡി.റോം ആക്കിയതിന് ശേഷം സിസ്റ്റം ബൂട്ട് ചെയ്യുക. ബൂട്ട് ചെയ്ത് വരുമ്പോള്‍ കാണുന്ന മെനുവില്‍ നിന്നും AUTO MAGIC BOOT എന്ന മെനുവില്‍ എന്റര്‍ ചെയ്യുമ്പോള്‍ സിസ്റ്റത്തില്‍ നിലവിലുള്ള എല്ലാ OS കളും display ചെയ്യുന്നതായി കാണാം.ഇതില്‍ നിന്നും ലിനക്സ് കേര്‍ണലില്‍ എന്റര്‍ ചെയ്ത് root വഴി ലോഗിന്‍ ചെയ്യുക. അതിന് ശേഷം ടെര്‍മിനല്‍ തുറന്ന് താഴെ പറയുന്ന command type ചെയ്ത് എന്റര്‍ ചെയ്യുക.

grub-install /dev/sda
sda എന്നത് ഹാര്‍ഡ് ഡിസ്ക് ടൈപ്പിനെക്കുറിക്കുന്നു. ഇത് കണ്ടുപിടിക്കാന്‍ root terminal ല്‍ fdisk -l എന്ന command ടൈപ്പ് ചെയ്താല്‍ മതി.(ഉബുണ്ടുവാണെങ്കില്‍ sudo fdisk -l) sda എന്ന സ്ഥലത്ത് സിസ്റ്റത്തിന്റെ ഹാര്‍ഡ് ഡിസ്ക് ഏതാണോ അതാണ് ടൈപ്പ് ചെയ്യേണ്ടത്. ഗ്രബ് ഇന്‍സ്റ്റാള്‍ ആയതിന് ശേഷം സി.ഡി., ഡ്രൈവില്‍ നിന്ന് പുറത്തെടുത്ത് സിസ്റ്റം റീബൂട്ട് ചെയ്യുക. ( ഫയല്‍ സിസ്റ്റം error ആണെങ്കില്‍ ബൂട്ട് ലോഡര്‍ ലഭിച്ചാലും OS ലേക്ക് പ്രവേശിക്കാന്‍ സാധിക്കണമെന്നില്ല.)
സൂപ്പര്‍ ഗ്രബ് സി.ഡി.യുടെ പുതിയ വേര്‍ഷന്‍ പുറത്തിറങ്ങി. .iso ഇമേജാണ്.(1.2 MB) ഇവിടെ ക്ലിക്ക് ചെയ്യുക

Using Live Cds
എന്നാല്‍ ചില പുതിയ സിസ്റ്റങ്ങളില്‍ ഈ സി.ഡി. ബൂട്ട് ആവാത്ത പ്രശ്നം കാണുന്നുണ്ട്. അത്തരം സിസ്റ്റങ്ങളില്‍ ഏതെങ്കിലും live സി.ഡി. ഉപയോഗിച്ച് Grub റീ ഇന്‍സ്റ്റാള്‍ ചെയ്യാവുന്നതാണ്.(Grub 2 ആണെങ്കില്‍ ഈ മാര്‍ഗം പറ്റില്ല.) വിശദവിവരങ്ങള്‍ക്ക് ഇവിടെ ക്ലിക്ക് ചെയ്യുക.

IT@School Ubuntu 9.10
Ubuntu 9.10 or 10.04 ല്‍ ഗ്രബ്ബിന്റെ അപ്ഡേറ്റഡ് വേര്‍ഷനായ Grub2 ആയത് കൊണ്ട് മുകളില്‍ പറഞ്ഞ സൂപ്പര്‍ ഗ്രബ് സി.ഡി. ഉപയോഗിക്കുകയോ താഴെയുള്ള രീതിയില്‍ ഗ്രബ്ബ് ഇന്‍സ്റ്റാള്‍ ചെയ്യുന്നതാണ് അഭികാമ്യം. (ഗ്രബ് ഇന്‍സ്റ്റാള്‍ ചെയ്യാന്‍ പലരീതികളും നെറ്റില്‍ സുലഭമാണെങ്കിലും താഴെയുള്ള മാര്‍ഗ്ഗം മിക്ക ലിനക്സിനും (SGL) യോജിച്ചതായി കാണുന്നുണ്ട്.)
9.10 സി.ഡി. ഉപയോഗിച്ച് സിസ്റ്റം ബൂട്ട് ചെയ്യുക. ലൈവ് ആയി ബൂട്ട് ചെയ്ത് Desktop ലെത്തുക. ഇനി ഉബുണ്ടു/ഗ്രബ് നഷ്ടപ്പെട്ട Os ന്റെ റൂട്ട് പാര്‍ട്ടീഷ്യന്‍ ഏതെന്ന് മനസ്സിലാക്കുക. അതിനായി ടെര്‍മിനല്‍ തുറന്ന് താഴെ പറയുന്ന കമാന്റ് ടൈപ്പ് ചെയ്യുക.
sudo fdisk -l
OR
sudo blkid

sudo fdisk -l എന്ന കമാന്റിന് താഴെയുള്ള രീതിയില്‍ റിസള്‍ട്ട് ലഭിക്കുന്നു.

/dev/sda1 * 1 1976 15872188+ c W95 FAT32 (LBA)
/dev/sda2 1977 9729 62275972+ f W95 Ext'd (LBA)
/dev/sda5 1977 3800 14651248+ b W95 FAT32
/dev/sda6 3801 5546 14024713+ b W95 FAT32
/dev/sda7 5547 5801 2048256 82 Linux swap / Solaris
/dev/sda8 5802 9729 31551628+ 83 Linux

ഇതില്‍ നിന്നും size ലൂടെ പാര്‍ട്ടീഷ്യന്‍ തിരിച്ചറിയാം. റൂട്ട് പാര്‍ട്ടീഷ്യന്‍ sda8 ആണെന്നിരിക്കട്ടെ.. ഈ പാര്‍ട്ടീഷ്യനെ ലൈവ് സി.ഡി യുടെ ഫയല്‍ സിസ്റ്റത്തിലെ mnt എന്ന ഫോള്‍ഡറിലേക്ക് താഴെയുള്ള കമാന്റിലൂടെ മൗണ്ട് ചെയ്യിക്കുക.

sudo mount /dev/sda8 /mnt
ഫയല്‍ സിസ്റ്റത്തിലെ mnt എന്ന ഫോള്‍ഡര്‍ തുറന്ന് മൗണ്ട് ചെയ്തിരിക്കുന്നത് ശരിയായ പാര്‍ട്ടീഷ്യന്‍ തന്നെയാണോ എന്ന് ഉറപ്പ് വരുത്താവുന്നതാണ്. ഇനി ഫയല്‍ സിസ്റ്റത്തിലെ(ലൈവ്) dev,proc,sys എന്നിവയേയും താഴെയുള്ള കമാന്റിലൂടെ ഓരോന്നായി mnt എന്ന ഫോള്‍ഡറിലേക്ക് മൗണ്ട് ചെയ്യിക്കാം.
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys

ഇപ്പോള്‍ mnt എന്ന ഫോള്‍ഡറില്‍ ഒരു ചെറിയ 'വിര്‍ച്ച്വല്‍ ഫയല്‍ സിസ്റ്റം' തയ്യാറായി. പ്രസ്തുത ഫയല്‍ സിസ്റ്റത്തില്‍ അഡ്മിനിസ്ട്രേറ്റീവ് പ്രിവിലേജോടെ (chroot)പ്രവേശിക്കാന്‍ താഴെയുള്ള കമാന്റ് ഉപയോഗിക്കുക.
sudo chroot /mnt

ശേഷം ഗ്രബ് ഇന്‍സ്റ്റാള്‍ ചെയ്യാനായി താഴെയുള്ള കമാന്റ് ഉപയോഗിക്കാം.ഇവിടെ sudo ആവശ്യമില്ല.
grub-install --recheck /dev/sda (sda എന്നത് ഹാര്‍ഡ് ഡിസ്ക് ടൈപ്പിനെക്കുറിക്കുന്നു)

Ctrl+D അമര്‍ത്തി chroot നെ ക്സോസ് ചെയ്യാം.ഇനി മൗണ്ട് ചെയ്ത എല്ലാ ഫോള്‍ഡറുകളേയും unmount ചെയ്യിക്കാം.
sudo umount /mnt/dev
sudo umount /mnt/sys
sudo umount /mnt/proc
sudo umount /mnt
സിസ്റ്റം റീബൂട്ട് ചെയ്യുക.
sudo reboot
ഗ്രബ് പുനഃസ്ഥാപിച്ച് കഴിഞ്ഞാല്‍ സിസ്റ്റത്തില്‍ ലോഗിന്‍ ചെയ്ത് ആവശ്യമെങ്കില്‍ താഴെയുള്ള കമാന്റ് ഉപയോഗിച്ച് ഗ്രബ്ബിനെ അപ്ഡേറ്റ് ചെയ്യുക- (ഉബുണ്ടു ഇന്‍സ്റ്റാള്‍ ചെയ്തതിന് ശേഷം ഇന്‍സ്റ്റാള്‍ ചെയ്യുന്ന മറ്റ് OS കളെ ഉബുണ്ടുവിന്റെ ഗ്രബില്‍ കൂട്ടിച്ചേര്‍ക്കണെമെങ്കില്‍ ഇങ്ങനെ ഗ്രബിനെ അപ്ഡേറ്റ് ചെയ്യണം.
sudo update-grub
sudo reboot
അവസാനം ഇന്‍സ്റ്റാള് ചെയ്യുന്ന ലിനക്സിന്റെ ഗ്രബ്ബ് ആണല്ലോ സിസ്റ്റത്തിന്റെ Default boot loader ആവുന്നത്. ഉബുണ്ടു ഇന്‍സ്റ്റാള്‍ ചെയ്തതിന് ശേഷം 3.0/3.2 ഇന്‍സ്റ്റാള്‍ ചെയ്താല്‍ പ്രസ്തുത ഗ്രബ് വഴി ഉബുണ്ടുവിലേക്ക് ലോഗിന്‍ ചെയ്യാന്‍ പറ്റില്ല. അത്തരം സന്ദര്‍ഭങ്ങളില്‍ ഉബുണ്ടുവിന്റെ ഗ്രബിനെ Default boot loader ആക്കുകയാണ് വേണ്ടത്. ശേഷം 3.2 വിനെ ഉബുണ്ടുവിന്റെ ഗ്രബില്‍ കൂട്ടിച്ചേര്‍ക്കണെമെങ്കിലും മുകളില്‍ പറഞ്ഞരീതിയില്‍ ഗ്രബ്ബിനെ update ചെയ്യണം.ഇവിടെയുള്ള കമാന്റുകള്‍ ഓര്‍ക്കാന്‍ വിഷമമു​​ണ്ടെങ്കില്‍ ലൈവ് സി.ഡി.യിലൂടെ നെറ്റ് ഉപയോഗിച്ച് കമാന്റുകള്‍ കോപ്പി ചെയ്ത് ടെര്‍മിനലില്‍ പേസ്റ്റ് ചെയ്താല്‍ മതി.

അവലംബം:
help.ubuntu.com
wiki.ubuntu.com

No comments:

Post a Comment