1

Right now I use GRUB version which comes with Ubuntu 10.04 (but I think it used to happen on older versions too). I have a list of options to select. If computer registers more key presses than there are item on a list, it will beep once from pc speaker for every extra key press and until computer finishes beeping, it is unresponsive.

In my list newest Ubuntu kernel is on top and Windows 7 is on bottom. I tend to press down arrow key and keep it pressed until Windows item is selected. Unfortunately, moving the selection is not synchronized with amount of key presses and if I'm not careful, I'll hear a lot of beeps.

How do I stop this behavior?

EDIT As requested, GRUB.cfg

#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by /usr/sbin/GRUB-mkconfig using templates
# from /etc/GRUB.d and settings from /etc/default/GRUB
#

### BEGIN /etc/GRUB.d/00_header ###
if [ -s $prefix/grubenv ]; then
  load_env
fi
set default="0"
if [ ${prev_saved_entry} ]; then
  set saved_entry=${prev_saved_entry}
  save_env saved_entry
  set prev_saved_entry=
  save_env prev_saved_entry
  set boot_once=true
fi

function savedefault {
  if [ -z ${boot_once} ]; then
    saved_entry=${chosen}
    save_env saved_entry
  fi
}

function recordfail {
  set recordfail=1
  if [ -n ${have_grubenv} ]; then if [ -z ${boot_once} ]; then save_env recordfail; fi; fi
}
insmod ext2
set root='(hd0,6)'
search --no-floppy --fs-uuid --set 35fef0b0-75c0-4019-b907-1447f3445977
if loadfont /usr/share/GRUB/unicode.pf2 ; then
  set gfxmode=640x480
  insmod gfxterm
  insmod vbe
  if terminal_output gfxterm ; then true ; else
    # For backward compatibility with versions of terminal.mod that don't
    # understand terminal_output
    terminal gfxterm
  fi
fi
insmod ext2
set root='(hd0,1)'
search --no-floppy --fs-uuid --set 9b175976-1267-442f-9f9a-d75d85d328e1
set locale_dir=($root)/GRUB/locale
set lang=sr
insmod gettext
if [ ${recordfail} = 1 ]; then
  set timeout=-1
else
  set timeout=10
fi
### END /etc/GRUB.d/00_header ###

### BEGIN /etc/GRUB.d/05_debian_theme ###
insmod ext2
set root='(hd0,6)'
search --no-floppy --fs-uuid --set 35fef0b0-75c0-4019-b907-1447f3445977
insmod png
if background_image /usr/share/images/desktop-base/moreblue-orbit-GRUB.png ; then
  set color_normal=black/black
  set color_highlight=magenta/black
else
  set menu_color_normal=white/black
  set menu_color_highlight=black/light-gray
fi
### END /etc/GRUB.d/05_debian_theme ###

### BEGIN /etc/GRUB.d/10_linux ###
menuentry 'Ubuntu, with Linux 2.6.32-24-generic' --class Ubuntu --class gnu-Linux --class gnu --class os {
 recordfail
 insmod ext2
 set root='(hd0,1)'
 search --no-floppy --fs-uuid --set 9b175976-1267-442f-9f9a-d75d85d328e1
 Linux /vmlinuz-2.6.32-24-generic root=UUID=35fef0b0-75c0-4019-b907-1447f3445977 ro   quiet splash
 initrd /initrd.img-2.6.32-24-generic
}
menuentry 'Ubuntu, with Linux 2.6.32-24-generic (recovery mode)' --class Ubuntu --class gnu-Linux --class gnu --class os {
 recordfail
 insmod ext2
 set root='(hd0,1)'
 search --no-floppy --fs-uuid --set 9b175976-1267-442f-9f9a-d75d85d328e1
 echo 'Loading Linux 2.6.32-24-generic ...'
 Linux /vmlinuz-2.6.32-24-generic root=UUID=35fef0b0-75c0-4019-b907-1447f3445977 ro single 
 echo 'Loading initial ramdisk ...'
 initrd /initrd.img-2.6.32-24-generic
}
menuentry 'Ubuntu, with Linux 2.6.32-23-generic' --class Ubuntu --class gnu-Linux --class gnu --class os {
 recordfail
 insmod ext2
 set root='(hd0,1)'
 search --no-floppy --fs-uuid --set 9b1
5
  • @BloodPhilia Any chance of explaining what you did to get rid of that unnecessary strong text?
    – AndrejaKo
    Aug 15, 2010 at 19:32
  • Just remove the pre and code tags, select the piece of text and then click the "code" button above the textbox. (The one with the 1's and 0's) =)! The code will then be indented with four spaces. The site then automatically formats it as code! Happy SUing! =D
    – Pylsa
    Aug 15, 2010 at 19:45
  • @BloodPhilia Thanks! I did try that first, but only first # used to end up inside code tag. Looks like I just need to practice more in future.
    – AndrejaKo
    Aug 15, 2010 at 20:00
  • 1
    You'll be fine! for more markdown information, check here: superuser.com/editing-help
    – Pylsa
    Aug 15, 2010 at 20:02
  • I'm not familiar with GRUB, but if you press the up-arrow once, does it wrap round to the last item? Jul 16, 2014 at 15:01

2 Answers 2

1

It sadly is not as simple as blacklisting pcspkr, since ubuntu hasn't even booted yet. Can you post your (/boot/grub/)grub.cfg here?

Another solution, don't hold down downarrow, just press it until you get to Windows 7. If there are too many grub menu entries for this to be practical, consider removing entries for earlier kernel versions (again, through grub.cfg).

1
  • Well I do keep it pressed until I get to windows 7. It's just that by the time the selection box gets to windows 7 option, computer will register two or three more key presses meaning that I have to wait while it emits two or three one second beeps.
    – AndrejaKo
    Aug 15, 2010 at 14:46
0

There is only one solution to stop those incredibly annoying beeps: unplug the PC Speaker. Just go into the case and disconnect the SPKR pins from the motherboard.

When the computer is fully up, you can use the real sound card for any audio you need to produce. When the OS isn't yet booted, you don't want to listen to those earsplitting irritating beeps anyhow.

1
  • As I said I do not want to disable PC speaker in general. I understand that some people hate it (although I do not understand why, it's really useful) and this computer is a laptop, so PC speaker is directly connected to sound card and cannot be unplugged. It's not the beeps themselves that annoy me. It's the fact that computer is unresponsive during beeps that is annoying me. Unplugging the speaker itself would not help there, even if it was possible.
    – AndrejaKo
    Aug 15, 2010 at 19:30

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .