Skrev ihop lite tips om Grubs menu.lst som jag själv har haft nytta av. Ingenting avancerat eller ögongodis utan bara rent praktiska saker. Jag kommer att gå genom enbart delarna jag har kännedom om. Denna guide passar bra till datorer med flera operativsystem eller flera kernels vilka två kommer benämnas som OS i fortsättningen. Rubrikerna kommer i samma ordning som i menu.lst
Grubs menu.lst består av tre delar som jag ser det: i första delen styr man utseendet, i andra delen tar automatik hand vid kerneluppdateringar om enligt första delens stryrning och i tredje delen läggs övriga operativsystem till av Grub vid första installationen och man kan även lägga till dessa själv. I första delen kan man avkommentera ifall man vill att den regeln träder i kraft men i den andra delen ska man inte avkommentera något, bara ändra regeln (eller variabeln om man vill säga så). Annars slutar Grubs uppdateringsscript att fungera.
Vi börjar med att skapa en säkerhetskopia av menu.lst så här (klistra i terminalen)
Kod: Markera allt
sudo cp /boot/grub/menu.lst /boot/grub/menu.lst_backup
Kod: Markera allt
gksudo gedit /boot/grub/menu.lst
Kod: Markera allt
sudo fdisk -l
Automatisk start av rätt OS
Vi börjar om den första delens första stycke kallat ## default num. Här bestämms vilken av OS startas automatiskt ifall man lämnar datorn efter man slog på den. Siffran efter den okommenterade raden default räknar med varje okommenterad rad title dvs även title Other operating systems:. Vill man att Windows, som läggs i slutet utanför den automatiska delen av menu.lst vid Grub-installation, skall startas först blir numret efter default ett mindre än vad du tror för den första titel-raden räknar Grub som 0. Har du räknat t.ex. 6 rader som börjar med ordet titel så siffran blir då 5. Kontrollera, men det gör inget om du missar, då ser du ju det vid start att fel OS står markerat som första alternativ (vitmarkerat) och du kan ändra det med upp och ned pilarna.
Med tiden när man får kerneluppdateringar och dessa läggs till i den automatiska delen måste man öka siffran i raden default 5 (eller vilken siffra du nu har där) i motsvarande grad. Det finns två sätt att undvika detta. Den första är att istället för en siffra skriver man saved alltså default saved. Då startas datorn med det operativsystemet datorn stängdes förra gången. Praktiskt när man får ett omstarts uppmaning. En förutsättning till det är att OS i menu.lst har ordet savedefault som här:
Observera att recovery mode -alternativ inte har savedefault.title Ubuntu, kernel 2.6.15-27-k7
root (hd0,2)
kernel /boot/vmlinuz-2.6.15-27-k7 root=/dev/hda3 ro quiet splash
initrd /boot/initrd.img-2.6.15-27-k7
savedefault
boot
Begränsa antal OS i menu.lst
Det andra sättet är att bestämma hur många OS skall visas vid start av datorn. Dess styrning hittar man i den automatiska delen i menu.lst vid raden howmany. Skriver man siffran 2 där så visas de två senaste kernels i både menu.lst och vid start av datorn, nu räknas inte raden titel utan nu är det kernel (inkl. recovery mode) som gäller. Då kan man använda en siffra vid raden default ifall man vill inte ha möjligheten att alltid starta den senaste OS automatiskt. Alternativen default saved och howmany=2 kan användas samtidigt.
Timer
Nu hoppar vi tillbaka till början av menu.lst och till stycket ## timeout sec. I slutet av den okommenterade raden timeout står det 10 som standard vilket anger tid i sekunder. Vill du ändra tiden, snabba upp den eller förlänga så ändrar du bara siffran 10 till vad du vill. Kom ihåg att siffran du skriver anger sekunder, skriver du 0 så har du ingen möjlighet att välja något annat OS eller återgå till en äldre kernel ifall en kerneluppdatering skulle gå fel.
Osynlig meny
Nästa stycket ## hiddenmenu anger ifall menyn är osynlig vilket är fallet när det finns bara en OS i datorn. Avkommentera med att radera #-teckent som står i raden #hiddenmenu ifall du vill gömma menyn. Escape tangenten vid start av datorn tar fram menyn.
Uppdatering av kernel
Ner till automatiska delen och stycket ## hiddenmenu. Ibland kan groot, Grub root device, skrivas fel av Grub eller av någon annan och det resulterar att menu.lst inte längre uppdateras automatiskt. Se till att i raden # groot=(hd0,2) är samma som partitionen där ditt /boot-mapp finns. Har du fler OS så denna /boot-mapp är samma som menu.lst du arbetar med hör till. Dvs. den ska vara samma som den första startmenyalternativen har.
Följande stycken är bästa att lämna så som de är så Grub behåller sin automatik.
memtest86
Vill du slippa raden Ubuntu, memtest86+ vid start av datorn ädra alternativet till false.
Vid det här laget är du klar och du kan spara och stänga menu.lst samt uppdatera denna med följande kommando i terminalen
Kod: Markera allt
sudo update-grub
Flera OS
Har du fler OS vars menu.lst naturligtvis blir uppdaterade automatiskt så dessa lägger man i slutet av listan. Som jag gjorde, kopierade från deras menu.lst och klistrade in i den första. Problemet var att de andra menu.lst uppdateras automatiskt vid kerneluppdateringar men de skriver inte det till din aktuella menu.lst.och då riskerar du att starta ett äldre kernel än vad du har vilket är inte att rekommendera. Ã…terigen som i Linuxvärlden så finns det flera alternativ att rätta till detta och jag presenterar min favorit. Jag skapar en länk till den andra eller de andra menu.lst

Så här ser länken ut när den är klistrad i slutet av menu.lst:
Kod: Markera allt
title Kubuntu
savedefault
configfile (hd1,0)/boot/grub/menu.lst
savedefault är bra att ha som det står om det ovan.
configfile länkar helt enkelt till partitionen där min Kubuntu bor. Kubuntu bor i mitt fall på min andra hårddiskens första partition. När jag väljer Kubuntu vid start av datorn kastas jag iväg till min andra härddiskens första partition och presenteras dess menu.lst som jag har preparerat likadant som Dappers menu.lst. Givetvis finns det länk tillbaka till Dappers menu.lst som är den första av alla menu.lst (inst. till MBR) och kommer fram först vid start av datorn. Den länken ser ut så här:
Kod: Markera allt
title Dapper
savedefault
configfile (hd0,2)/boot/grub/menu.lst
Har du installerat någon annan distribution (bara på prov!) än Canonicals kan de ha en annan uppfattning om hur många hårddiskar man har etc. Då är det Dappers (den som är din första) benämning som gäller ang. hårddisknamn. Som t.ex. PCLinuxOS tyckte att den ligger på (hd1,4) när den ligger i (hd0,4) då ska länken se ut så här:
Kod: Markera allt
title PCLinuxOS
savedefault
configfile (hd0,4)/boot/grub/menu.lst
Frågor eller fel i guiden, kontakta gärna.
Mer om Grub kan man läsa på Hermans sajt: http://users.bigpond.net.au/hermanzone/p15.htm
(061025 Lade till sudo fdisk -l)