grub loader1.5 slow
My computer is a recon bought in march 09
laptop Packard Bell ARGO C2
x86_64
Intel(R) Core(TM)2 CPU T5300 @ 1.73GHz (x2)
2gig RAM
(i cant find the model of the hard drive from the checkbox report.. I think its SATA)
Ok. I have been using ubuntu for about 8months now. I am running 9.04 (although same issue arose in 9.10). The grub loader is very slow(at least a minute), as opposed to the 32bit version of 9.04, which takes no time at all.
A screen with "grub loader1.5" for about 30 seconds, then then "grub" before the 3 2 1 timer, then it seems to run fine.
It looks as if the following posts have had a similar problem to me.
http://
http://
http://
Now here's the rub; I am really keen to get my hands dirty and have go at fixing it.
Some people seem to mention (http://
"Stage 1 is installed at the mbr of the first disk and just boots stage 2 or stage 1.5. Stage 1.5 is neccessary if your boot (or root) partition is behind the first 1024 cylinders of the first disk"..
My laptop came with vista, so I thought I'll wipe the hard drive of any residual window partitions (or something!), and did so with http://
Some posts have mentioned using LILO, which is in synaptic, but on the website (http://
Equally I'm running version V0.15 of the bios, and some posts state that if you update the bios it fixes the problem. I have the latest bios (en_mz36_
Also in (http://
Right; my question is : which is the best way to do this? I realise the importance of the bios, and having looked at the linux method of updating the bios, my eyes started to bleed. Can I do it through wine with an .exe as sudo maybe?
Equally should I install LILO (and if so how?) or change the /home partition back to reiserfs (whatever that is).
Thank you for taking the time to read this; it's my first proper post and I'm sure I've missed loads out (like which log files to look at etc)
word!
Question information
- Language:
- English Edit question
- Status:
- Answered
- For:
- Ubuntu grub Edit question
- Assignee:
- No assignee Edit question
- Last query:
- Last reply:
Revision history for this message
|
#1 |
When it comes to updating the BIOS, it's quite painful. The path of least resistance is generally to upgrade the BIOS through using a DOS boot disk - which is a little sickening as it requires a proprietary Microsoft OS. Some people have said they can use open source DOS systems such as FreeDOS to do BIOS upgrades, but your mileage may vary.
The fact that grub is painfully slow to load the kernel + initrd images suggest to me that it's a fundamental BIOS problem and so probably you will hit the same issue when using LILO. My gut feeling would be try to do a BIOS upgrade - although there is the potential risk of bricking your machine if you flash it with the wrong image or it fails to flash correctly. However, I've flashed many machines and not yet been unlucky, but it's worth weighing up the risk/benefit.
You may like to check your current BIOS version using dmidecode, e.g.:
sudo dmidecode | less
Look for the Vendor and Version fields to get an idea of what BIOS version you are using.
Revision history for this message
|
#2 |
I had some long boot times after setting up my system with an old install of Windows XP on one HD and a fresh install of Ubuntu 9.04 on the other. I had moved my old drive (Windows C:) to the motherboard SATA1 port and put the Ubuntu HD on SATA0, and also revised the BIOS setting so that the new drive became the first boot drive, using GRUB on the new drive (and leaving the old drive's boot loader unused and unmodified).
Here's what I think was the problem. In BIOS, "Silent Boot" was set to On, which suppressed the diagnostic startup messages and caused a Gateway splash page to display instead during boot.
However, the Gateway splash image, wherever it is, is on the C: drive, which is no longer the primary boot drive, and at the point where BIOS is supposed to display that image, I can't think of any way that BIOS would know where to find it. The Windows boot loader might specify where it is, but GRUB certainly does not. So my guess is that BIOS starts at the primary boot drive (my new drive) and searches all partitions on all drives for a suitable splash image until it finds it. During these long boot times, the drive lights were constantly on.
When I turned Silent Boot off in BIOS, it solved that partcular long boot time problem.
Another long boot problem was caused, I think, by my using this command in Ubuntu to double-ensure (in addition to fstab settings) that my Windows drive would be read-only to Ubuntu:
blockdev --setro /dev/sdb /dev/sdb1
Upon restart, booting took a long time, with constant disk activity, and Windows would always boot even though I have GRUB set to auto-boot the last-used operating system. This problem seems to have been solved by always reverting to blockdev --setrw when I'm through accessing the C: drive.
Not sure either of those apply to your situation, but thought they might suggest possible other considerations during troubleshooting. I'd put off updating (flashing?) the BIOS until you're quite sure the problem can't be solved some other way.
This is my first post in Launchpad, too.
Revision history for this message
|
#3 |
Hmm, thankyou both for your replies. As for the silent boot, stevew, I couldn't find it anywhere in the bios gui. I nuked the hard drive, it doesn't have any associated hard drives (apart from usb stick, which wasn't in when I did installation), and its never been dual boot. Should I wiped MBR (is it on a seperate partition?), or have I done this already?
I Ran the following:
sudo fdisk -l
Disk /dev/sda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x000dd3b7
Device Boot Start End Blocks Id System
/dev/sda1 * 1 9327 74919096 83 Linux
/dev/sda2 9328 9729 3229065 5 Extended
/dev/sda5 9328 9729 3229033+ 82 Linux swap / Solaris
Should there be a space for MBR before start 1, or something? (sorry chaps I'm still very new to all this)
As for your reply Colin King (thanks again), I ran
sudo dmidecode | less
# dmidecode 2.9
SMBIOS 2.4 present.
37 structures occupying 1504 bytes.
Table at 0x000DF810.
Handle 0x0000, DMI type 0, 24 bytes
BIOS Information
Vendor: Packard Bell
Version: V0.15
Release Date: 07/10/2007
Address: 0xE6560
Runtime Size: 105120 bytes
ROM Size: 14592 kB
ISA is supported
PCI is supported
PC Card (PCMCIA) is supported
PNP is supported
I think that updating the bios might be the one (having flashed bios before in my sordid micro$oft days).
Right, my question; is my BIOS "SMBIOS 2.4 present" or "V0.15"? I found an update (http://
As for the DOS bootdisk, would (http://
Any assistance would be fantastic!
word.
Revision history for this message
|
#4 |
Sorry Colin King, I just re read the bit about a "Microsoft OS". That means wiping, installing xp, installing bios exe, then wiping then installing ubuntu again (doesn't it?). I just got it set up how I want it and everything! what about freeDos? How would that work?
Revision history for this message
|
#5 |
I found "IA-32 PC emulator" and "mkrboot " in synaptic searching for freedos: no gui I guess, so its "mkrboot" through terminal then.
Revision history for this message
|
#6 |
I found this (http://
modprobe loop
FATAL: Module loop not found.
I need someone to hold my hand on this one.
All the best
Revision history for this message
|
#7 |
Probably breaking all kinds of netiquette rules here, but this seems to agree with the other post
http://
sorry to go on
Revision history for this message
|
#8 |
Damn it: NOT THE BIOS.....
http://
System BIOS
Release Version Details
2A11 0.15
* Updated CPU support for Merom-based Celeron.
2A05 0.09
* Initial release.
So therefore the installed Bios is the most up to date.
Right... I'm lost
Revision history for this message
|
#9 |
I realise I am starting to sound like a derranged man shouting on a street corner but I thought this might be useful. I have cleaned up grub menus on previous installations, but I don't think I've touched this one
gedit /boot/grub/menu.
# menu.lst - See: grub(8), info grub, update-grub(8)
# grub-install(8), grub-floppy(8),
# grub-md5-crypt, /usr/share/doc/grub
# and /usr/share/
## default num
# Set the default entry to the entry number NUM. Numbering starts from 0, and
# the entry number 0 is the default if the command is not used.
#
# You can specify 'saved' instead of a number. In this case, the default entry
# is the entry saved with the command 'savedefault'.
# WARNING: If you are using dmraid do not use 'savedefault' or your
# array will desync and will not let you boot your system.
default 0
## timeout sec
# Set a timeout, in SEC seconds, before automatically booting the default entry
# (normally the first entry defined).
#timeout 0
## hiddenmenu
# Hides the menu by default (press ESC to see the menu)
hiddenmenu
# Pretty colours
color cyan/blue white/blue
## password ['--md5'] passwd
# If used in the first section of a menu file, disable all interactive editing
# control (menu entry editor and command-line) and entries protected by the
# command 'lock'
# e.g. password topsecret
## password --md5 $1$gLhU0/
# password topsecret
#
# examples
#
# title Windows 95/98/NT/2000
# root (hd0,0)
# makeactive
# chainloader +1
#
# title Linux
# root (hd0,1)
# kernel /vmlinuz root=/dev/hda2 ro
#
#
# Put static boot stanzas before and/or after AUTOMAGIC KERNEL LIST
### BEGIN AUTOMAGIC KERNELS LIST
## lines between the AUTOMAGIC KERNELS LIST markers will be modified
## by the debian update-grub script except for the default options below
## DO NOT UNCOMMENT THEM, Just edit them to your needs
## ## Start Default Options ##
## default kernel options
## default kernel options for automagic boot options
## If you want special options for specific kernels use kopt_x_y_z
## where x.y.z is kernel version. Minor versions can be omitted.
## e.g. kopt=root=/dev/hda1 ro
## kopt_2_
## kopt_2_
# kopt=root=
## default grub root device
## e.g. groot=(hd0,0)
# groot=f8d2009b-
## should update-grub create alternative automagic boot options
## e.g. alternative=true
## alternative=false
# alternative=false
## should update-grub lock alternative automagic boot options
## e.g. lockalternative
## lockalternative
# lockalternative
## additional options to use with the default boot option, but not with the
## alternatives
## e.g. defoptions=vga=791 resume=/dev/hda5
# defoptions=splash vga=769
## should update-grub lock old automagic boot options
## e.g. lockold=false
## lockold=true
# lockold=false
## Xen hypervisor options to use with the default Xen boot option
# xenhopt=
## Xen Linux kernel options to use with the default Xen boot option
# xenkopt=
## altoption boot targets option
## multiple altoptions lines are allowed
## e.g. altoptions=(extra menu suffix) extra boot options
## altoptions=
# altoptions=
## controls how many kernels should be put into the menu.lst
## only counts the first occurence of a kernel, not the
## alternative kernel options
## e.g. howmany=all
## howmany=7
# howmany=all
## specify if running in Xen domU or have grub detect automatically
## update-grub will ignore non-xen kernels when running in domU and vice versa
## e.g. indomU=detect
## indomU=true
## indomU=false
# indomU=detect
## should update-grub create memtest86 boot option
## e.g. memtest86=true
## memtest86=false
# memtest86=false
## should update-grub adjust the value of the default booted system
## can be true or false
# updatedefaulten
## should update-grub add savedefault to the default options
## can be true or false
# savedefault=false
## ## End Default Options ##
title Ubuntu 9.04, kernel 2.6.28-16-generic
uuid f8d2009b-
kernel /boot/vmlinuz-
initrd /boot/initrd.
quiet
title Ubuntu 9.04, kernel 2.6.28-16-generic (recovery mode)
uuid f8d2009b-
kernel /boot/vmlinuz-
initrd /boot/initrd.
title Ubuntu 9.04, memtest86+
uuid f8d2009b-
kernel /boot/memtest86
quiet
### END DEBIAN AUTOMAGIC KERNELS LIST
Right..... any takers?!
All the best
Revision history for this message
|
#10 |
As an Ubuntu newbie, I was already somewhat out of my depth, but I'll try to add a bit more.
As I understand it (from reading I did a month ago), MBR is on the first few sectors of the disk, outside any partition and technically not owned by or part of any operating system. It won't have a partition entry listed in fdisk output, so your output looks ok.
Referring to your text above:
"A screen with "grub loader1.5" for about 30 seconds, then then "grub" before the 3 2 1 timer, then it seems to run fine."
And to this forum post you referenced,
http://
and to this quote in it:
"Stage 1.5 is neccessary if your boot (or root) partition is behind the first 1024 cylinders of the first disk. "
and especially the next sentence caught my eye:
"The job of stage 1.5 is to find and load stage 2. "
You see 1.5 for 30 seconds, which makes me wonder if GRUB is having trouble finding stage 2. (??)
One thing I'd suggest is getting as much info displayed as possible. In your menu.lst, I'd comment out the 3rd line in this block:
## hiddenmenu
# Hides the menu by default (press ESC to see the menu)
hiddenmenu
and change
#timeout 0
to
timeout 10
so that a timeout is enabled and you can watch it counting down
And change this block:
title Ubuntu 9.04, kernel 2.6.28-16-generic
uuid f8d2009b-
kernel /boot/vmlinuz-
initrd /boot/initrd.
quiet
to remove all the words "quiet" and "splash" (but no other changes) so that you'll see diagnostic messages during boot instead of the usual graphics screens. The messages will probably also be viewable in /var/logs after you've booted.
While learning about GRUB, I did find a lot of information about it online (more than I could absorb), and its source code must be available, too. I suspect the key is to figure out what stage 1.5 is trying to do during the long delay.
Revision history for this message
|
#11 |
I am finding this article very interesting reading:
http://
Revision history for this message
|
#12 |
http://
Good shout on this one. It's going to take some digesting
Revision history for this message
|
#13 |
Right steveW: i made suggested changes: not sure where the log would be stored: bootstrap log?
I've installed lilo through synaptic.....
I get the following message.....
It seems to be your first LILO installation. It is absolutely necessary to run liloconfig(8) when you complete this process and execute /sbin/lilo after this.
LILO won't work if you don't do this.
....Oh dear, I just found the LILO documentation..... this could take a while
Revision history for this message
|
#14 |
Ah progress.... ran liloconfig through terminal and get this
LILO configuration. ├──────
│ │
│ WARNING! │
│ │
│ Your /etc/fstab configuration file gives device │
│ UUID=f8d2009b-
│ This doesn't look to me like an "ordinary" block device. Either your │
│ fstab is broken and you should fix it, or you are using hardware (such │
│ as a RAID array) which this simple configuration program does not │
│ handle. │
│ │
│ You should either repair the situation or hand-roll your own │
│ /etc/lilo.conf configuration file; you can then run /usr/sbin/
│ again to retry the configuration process. Documentation for LILO can be │
│ found in /usr/share/
│
Revision history for this message
|
#15 |
That does sound like progress.
The Linux Boot Process article says "Because GRUB understands partitions and filesystems, it can load a kernel that it wasn't told about previously." That made me wonder if maybe the UUID is wrong in menu.lst, and GRUB is spending all that time looking for a valid partition with a valid kernel to load, which it does find, eventually. I didn't mention it because it seemed to be getting ahead of things, but maybe it's become relevant.
I'm not sure how relevant this is, but it describes one way that a UUID can become wrong:
https:/
And this one shows how to determine the actual UUID of partitions:
http://
Since GRUB seems to be an improvement over LILO, if you haven't already overwritten it (or maybe even if you have), it seems like repairing fstab so GRUB will work right is probably the way to go, after getting all the info you can from LILO, which has been quite useful!
Once you've determined the UUID of your boot partition, check that value against the ones shown in fstab and in menu.lst.
Revision history for this message
|
#16 |
ls -l /dev/disk/by-uuid
total 0
lrwxrwxrwx 1 root root 10 2009-11-13 10:39 c4ffe84d-
lrwxrwxrwx 1 root root 10 2009-11-13 10:39 f8d2009b-
menu.lst.
## default grub root device
## e.g. groot=(hd0,0)
# groot=f8d2009b-
First value (c4ffe.....) not in menu.lst
I looked for /etc/fstab in gksudo nautilus, but not there?? Have python-fstab installed in synaptic....
Cheers by the way SteveW.... all help gratefully recieved
Revision history for this message
|
#17 |
found fstab in /etc... but no dir
# /etc/fstab: static file system information.
#
# Use 'vol_id --uuid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
# / was on /dev/sda1 during installation
UUID=f8d2009b-
# swap was on /dev/sda5 during installation
UUID=c4ffe84d-
/dev/scd0 /media/cdrom0 udf,iso9660 user,noauto,
Revision history for this message
|
#18 |
Right, fstab is a plain text file, not a dir. It probably means File-System-TABle.
It looks like the UUID reported by /dev/disk/by-uuid is the same as in fstab and the same as all locations in menu.lst. Also, except for differences in our systems and UUIDs, the entries in your fstab, including the options, match the ones in mine.
Doesn't seem like there's a problem there.
Aha! I've seen in at least two places (one of them being the psychocats article linked above) that it may be preferable to use UUIDs in fstab, but it isn't required, and that you can use the device name /dev/(device) instead.
See this thread:
http://
"As far as I know LiLo hasn't been updated to cope with the UUID numbers "
That might be the only problem LILO is complaining about.
This page might be useful, though I didn't read much of it. It talks about the liloconfig error you saw, and has lots of info about using LILO:
http://
If you decide to go the LILO route, I would personally be starting to get a bit nervous about the possibility of making the computer unbootable while experimenting. I'd make sure I had a LiveCD, and since I don't know how to access the HD in read/write mode after booting from LiveCD (for editing fstab, menu.lst and making whatever other repairs might be needed), I'd experiment with that first to get comfortable with it, just in case.
Revision history for this message
|
#19 |
sorry for the late reply. I ahve been away for the week end (ish).
Right.. ran gedit /usr/sbin/
found fstab (here it is for arguments sake)
# /etc/fstab: static file system information.
#
# Use 'vol_id --uuid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc defaults 0 0
# / was on /dev/sda1 during installation
UUID=f8d2009b-
# swap was on /dev/sda5 during installation
UUID=c4ffe84d-
/dev/scd0 /media/cdrom0 udf,iso9660 user,noauto,
found this "http://
Revision history for this message
|
#20 |
Ha Ha........
Look in system log viewer......dmesg log (record of last boot... "http://
Right, you get time in [ ] brackets on left hand side. my system is hanging for about about a minute..
on my log I get
.........11.808052] Synaptics Touchpad, model: 1, fw: 6.2, id: 0x25a0b1, caps: 0xa04713/0x0
[ 11.844582] input: SynPS/2 Synaptics TouchPad as /devices/
[ 11.926466] lp: driver loaded but no devices found
[ 12.004797] Adding 3229024k swap on /dev/sda5. Priority:-1 extents:1 across:3229024k
[ 124.493158] EXT3 FS on sda1, internal journal
[ 124.910644] type=1505 audit(125829505
[ 124.957942] type=1505 audit(125829505
So what is happening between
12.004 Adding 3229024k swap on /dev/sda5. Priority:-1 extents:1 across:3229024k
and
124.493158] EXT3 FS on sda1, internal journal
that's the swap memory isn't it????!!! It's about 3 gig or so
everything else on the dmesg list is flowing along royally......
right I'm going to move the swap memory to another partition to see if that helps.
Revision history for this message
|
#21 |
Good detective work. Seems very significant. Here's mine. I didn't realize those are timestamps. If so, 0.35 seconds to add swap; looking at multiple log entries, it's about the same amount of time at every boot:
[7.950164] Adding 2096472k swap on /dev/sda2. Priority:-1 extents:1 across:2096472k
[8.307674] EXT3 FS on sda1, internal journal
Revision history for this message
|
#22 |
tried renaming partition, extending partition and deleting the partition through gparted to no avail. Still even if I don't manage to fix this thing, I've certainly learnt a lot more about the inner workings of grub etc...
Thanks a lot for all the help
Revision history for this message
|
#23 |
I keep ploughing on.....
Right (by the way sat in the pub doing this most convivial
.......found this (http://
and ran cd ~/Desktop && wget 'http://
and got (somewhat paraphrased)
=======
=> Grub0.97 is installed in the MBR of /dev/sda and looks on the same drive
in partition #1 for /boot/grub/stage2 and /boot/grub/
sda1: _______
File system: ext3
Boot sector type: -
Boot sector info:
Operating System: Ubuntu 9.04
Boot files/dirs: /boot/grub/menu.lst /etc/fstab /etc/lilo.conf
sda2: _______
File system: Extended Partition
Boot sector type: -
Boot sector info:
sda5: _______
File system: swap
Boot sector type: -
Boot sector info:
=======
Drive: sda ___________________ _______
Disk /dev/sda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders, total 156301488 sectors
Units = sectors of 1 * 512 = 512 bytes
Disk identifier: 0x000dd3b7
Partition Boot Start End Size Id System
/dev/sda1 * 63 149,838,254 149,838,192 83 Linux
/dev/sda2 149,838,255 156,296,384 6,458,130 5 Extended
/dev/sda5 149,838,318 156,296,384 6,458,067 82 Linux swap / Solaris
blkid -c /dev/null: _______
/dev/sda1: UUID="f8d2009b-
/dev/sda5: UUID="8f4cc1ba-
=======
/dev/sda1 on / type ext3 (rw,relatime,
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,
proc on /proc type proc (rw,noexec,
sysfs on /sys type sysfs (rw,noexec,
varrun on /var/run type tmpfs (rw,nosuid,
varlock on /var/lock type tmpfs (rw,noexec,
udev on /dev type tmpfs (rw,mode=0755)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,noexec,
fusectl on /sys/fs/
lrm on /lib/modules/
securityfs on /sys/kernel/
binfmt_misc on /proc/sys/
gvfs-fuse-daemon on /home/rigobert/
=======
the rest of it is the standard menu.lst.....
I also get boot_info_
Right. No pressure on anyone here. All the best
Revision history for this message
|
#24 |
rigobert@
[sudo] password for rigobert:
Disk /dev/sda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders, total 156301488 sectors
Units = sectors of 1 * 512 = 512 bytes
Disk identifier: 0x000dd3b7
Device Boot Start End Blocks Id System
/dev/sda1 * 63 149838254 74919096 83 Linux
/dev/sda2 149838255 156296384 3229065 5 Extended
/dev/sda5 149838318 156296384 3229033+ 82 Linux swap / Solaris
rigobert@
Can you help with this problem?
Provide an answer of your own, or ask rigobert77efc for more information if necessary.