Welcome to the Linux Foundation Forum!

USB Keyboard & Mouse not working following kernel update

Hello,

I updated the kernel on my Linux machine to linux-image-2.6.39-bpo.2-686-pae. After the installation a couple of things changed:

1. I was prompted to select the screen resolution I would like to use which did not happen before. My USB keyboard worked to select the option at this point.

2. When the system finished loading the keyboard and mouse (both USB) do not work at all. I tried unplugging them and plugging them into other USB ports but they don't work.

I used a portable version of Linux on a USB key and booted from that and it works fine.

Does anyone have a suggestion as to how to return to the previous stable version of Linux or how to get the keyboard and mouse to work?

Many thanks,

Christian

Comments

  • Goineasy9
    Goineasy9 Posts: 1,114
    Older kernel versions should still be present on your install. You didn't say what distro you are running, so I can't give you exact instructions, but, it you press the escape key during boot up you should be able to bring up the grub screen (if it's hidden in your distro, In Fedora I have to hit escape, with Debian Sid it is not hidden). Once you see the grub screen, you should be able to press the down arrow once, hit enter, and it will boot into the previous kernel. Once again, since you really didn't give us much info, I can't tell you exactly what you will see when the grub screen appears, or if just hitting the down arrow once will let you boot into the previous kernel.

    Most distros will keep multiple kernels on the install (Fedora keeps 3, with Debian Sid I have to remove them manually), so, if you can bring up the grub screen, you will see your alternatives.
  • Thanks GoinEasy9.

    I'm using Linux Debian - when I press on the Esc key when it loads up I get stuck on a white screen with a cup of coffee with 'Debian' written on the bottom right hand side of the screen and 'Lin_2.6.18img0' on the top right hand side of the screen.

    There is a counter at the top that counts down before I press 'Esc' and that just reads '--:--' after. Nothing is happening after this.

    If I press the space bar after this it loads the system and ends up on a screen which asks me to login but I can't do anything as the mouse and keyboard do not respond.

    If you have any suggestion as to how I can access the GRUB screen or how I can get the USB keyboard and mouse to work that would be great.

    Thanks again,

    Christian
  • Goineasy9
    Goineasy9 Posts: 1,114
    Hey ChristianM

    You could have a corrupted partition, or (and hopefully or), grub or one of the kernel init files got corrupted when installing the kernel from the backports.

    First of all, lets get some more precise information. What version of Debian are you running. Debian 5.0, or Debian 6.0, or are you using testing or unstable? Some of these are dumb questions, I see your using backports, so I'm assuming you not using unstable and are probably using stable, but, I need you to tell me, since when you use backports for anything, you're running a hybrid system.

    Do you know if you are using legacy Grub or the new Grub2? It would make things easier to fix or experiment with if you still have legacy grub.

    You didn't mention it, so I'm assuming it is not a dual boot system running Windows. Am I correct? Maybe tell be what kind of hardware your using. If you're using a pae kernel, do you have more than 4Gb of memory?

    One can fix the current install with the OS you have on the USB key, it would just require mounting the /root partition and working on it from there. What Linux OS is on the USB key?

    How (what command?) did you install the kernel? I'm wondering if anything else got updated from the backport besides the kernel.

    The Lin_2.6.18img0 error comes from a very old kernel, I'm wondering if the new kernel is being used on a very old system that needs to be updated. BTW - Is your system fully updated?

    OK, whole lot of questions. See if you can fill me in with some more info and maybe a solution will be easier to find.


  • Hello,

    Here are the answers I hope you are looking for:

    What version of Debian are you running. Debian 5.0, or Debian 6.0, or are you using testing or unstable? Some of these are dumb questions, I see your using backports, so I'm assuming you not using unstable and are probably using stable, but, I need you to tell me, since when you use backports for anything, you're running a hybrid system.
    I KNOW I AM RUNNING DEBIAN BUT I'M NOT SURE IT 5.0 OR 6.0. BEFORE INSTALLING THE NEW VERSION, UNAME -A RETURNED: '2.6.32-5-686'. IS THIS WHAT YOU ARE AFTER? IF NOT LET ME KNOW HOW I CAN FIND OUT. THE ONLY REASON I UPDATED THE SYSTEM WAS TO GET THE USB WIRELESS CARD TO WORK AS VERSION OF LINUX I HAD DIDN'T ALLOW IT.

    Do you know if you are using legacy Grub or the new Grub2? It would make things easier to fix or experiment with if you still have legacy grub.
    I'M NOT SURE BUT IF YOU TELL ME HOW TO CHECK I CAN LET YOU KNOW.

    You didn't mention it, so I'm assuming it is not a dual boot system running Windows. Am I correct? Maybe tell be what kind of hardware your using. If you're using a pae kernel, do you have more than 4Gb of memory?
    I AM NOT DUAL BOOTING WITH WINDOWS. THERE IS ONLY LINUX ON THIS MACHINE. I'M USING AN INTEL PENTIUM 4HT MACHINE (DESIGNED FOR WINDOWS XP).

    One can fix the current install with the OS you have on the USB key, it would just require mounting the /root partition and working on it from there. What Linux OS is on the USB key?
    THE LINUX I PUT ON THE USB KEY IS: debian-live-6.0.3-i386-gnome-desktop.

    How (what command?) did you install the kernel? I'm wondering if anything else got updated from the backport besides the kernel.
    aptitude install linux-image-2.6.39-bpo.2.686-pae linux-base initramfs-tools firmware-ralink
    I WAS GETTING ERRORS WHEN TRYING TO INSTALL THE NEW KERNEL SO I FOLLOWED THIS GUIDE:
    http://hydra.geht.net/tino/howto/linux/fixes/lilo/.
    I CHANGED IN LILO.CONF:
    #boot=/dev/hda
    boot=/dev/disk/by-id/ata-XXXXX_XXXXXXX_XXXXXXXX (WITH THE XXX REPLACED BY MAXTOR_STM3802110A_5LR7FGDH). THIS ALLOWED THE INSTALLATION TO GO AHEAD BUT THEN WHEN IT REBOOTED THE KEYBOARD AND MOUSE STOPPED WORKING.

    The Lin_2.6.18img0 error comes from a very old kernel, I'm wondering if the new kernel is being used on a very old system that needs to be updated. BTW - Is your system fully updated?
    I'M NOT SURE IT IS FULLY UPDATED. I DON'T MIND WHAT VERSION TO UPDATE TO. THIS WAS THE ONE THAT WAS AVAILABLE ON MY SYSTEM.

    LET ME KNOW IF YOU NEED MORE INFORMATION.
  • Goineasy9
    Goineasy9 Posts: 1,114
    I've been running Linux for close to 10 years and have never used a distro that ran lilo as the bootloader. I think that what probably happened is that you overwrote the grub bootloader with the lilo bootloader and that is the reason you can no longer boot. While it's fairly simple to restore grub, I don't know if lilo has to be removed or if something else has to be done before grub is restored.
    You're Live usb of Debian 6.0.3 will be helpful fixing the problem, but, I need to see if someone knows more about lilo removal, since I have never used it. In the advanced options there is a rescue mode, but, I need to know what commands you have to use once you get there.
    Be patient, I'm going to ask around.
  • Hello,

    I've made a little progress: when I get to what I think is the lilo boot screen I press esc then tab. This lead to a prompt that reads 'boot:'. I typed in 'Lin_2.6.18img0 1'. The kernel then loads and instead of ending on the screen where I don't have control of the mouse I end up with a prompt for the root password. Once I enter this I get to a command prompt where the keyboard does work!!

    Now I have control of the system and the keyboard I need help figuring out what I can type to see what the problem is and how to fix it.

    Any ideas would be welcome.

    Many thanks,

    Christian
  • Goineasy9
    Goineasy9 Posts: 1,114
    Well, I'm glad you have the machine working. It'll make it easier to fix, but, I still need to find one of the mods who is more adept at lilo then I am. I'm working at it.
  • mfillpot
    mfillpot Posts: 2,177
    Ok, it looks like some of the arguments passed to lilo or the initrd image are causing conflicts. Can you please copy the entire lilo entry for that kernel into your response so I can review the syntax?
  • mfillpot
    mfillpot Posts: 2,177
    In addition I forgot about the runlevel issue where you are faced with a terminal, have you confirmed that it is booting to the correct runlevel and if the splash option is set in lilo?
  • you may try this ,
    1. Backup bootloader- Install your boot loader in an External USB device
    lilo -d <usb_device_partion>
    2. Use "liloconfig" to create a fresh new lilo file by configuring the boot options, using this CLI GUI
    3. after that run the command, "lilo" to overwrite the current loader in MBR

    Look for "gpm" module when you used to login as root using the "Esc" sequence .

    And as Mfillpot told, check the runlevel, which will be in "/etc/inittab" file
  • I've left out the comments but this is the lilo.conf file as it is at the moment:

    large-memory
    lba32
    boot=/dev/hda
    root=/dev/md0
    bitmap=/boot/coffee.bmp
    bmp-colors=12,,11,15,,8
    bmp-table=38p,100p,1,10
    bmp-timer=38,2,13,1
    install=bmp
    prompt
    timoue=50
    mpa=/boot/map
    vga=9
    image=/boot/wmlinuz-2.6.18-3-686
    labal="Lin 2.6.18img0"
    initrd=/boot/initrd.img-2.6.18-3-686
    read-only.

    I tried running /sbin/lilo after but got an error: Fatal: chroot /dev/root: Not a directory.

    Just as an aside there is a 'grub' folder in the /boot/ directory also. Not sure if this matters.

    Thanks again.
  • I tried running sudo lilo -v - it says a few lines:
    LILO verson 22.8, Copyright...
    ...
    ...
    Debian GNU/Linux

    Reading boot sector from /dev/hda
    Fatal: creat /boot/map~: Read-only file system.

    Not sure this helps figure out the problem?
  • One more thing: the inittab file reads under the comment # The default runlevel.

    id:2:initdefault:
  • mfillpot
    mfillpot Posts: 2,177
    Christian,
    Here is what I got from your system.

    It defaults to runlevel 2, which is multi-user GUI mode, you will need to change it to runlevel 5 if you want it to boot to the gui.

    I have not used raid on linux, but based upon my research the map file option should not be necessary except on older bios.

    Newer kernels have removed the mapping of ide drives as hd#, when you can successfully boot into the system please run "fdisk -l" to confirm if you the drive is being mapped as sda or hda with the new kernel, if it is sda you will need to adjust the boot option in lilo.conf.

    Please report back with your findings and any changes that you have made.

    As an example of a working lilo.conf file you can refer to mine below:
    append=" vt.default_utf8=0"
    boot = /dev/sda
    
    default = Slack
    
      bitmap = /boot/slack.bmp
      bmp-colors = 255,0,255,0,255,0
      bmp-table = 60,6,1,16
      bmp-timer = 65,27,0,255
    
                                                                                         
    prompt                                                                               
    lba32                                                                                
    compact                                                                              
    timeout = 30                                                                         
    change-rules                                                                         
      reset                                                                              
    large-memory                                                                         
    vga = 791                                                                            
    image = /boot/vmlinuz                                                                
      root = /dev/sda5                                                                   
      label = Slack-safe                                                                 
      read-only                                                                          
    image = /boot/vmlinuz-generic-64g-2.6.37.6                                           
      root = /dev/sda5                                                                   
      label = Slack                                                                      
      initrd = /boot/initrd.gz-64g                                                       
      read-only                                                                          
                                                                                         
    image = /boot/sc/vmlinuz                                                             
      root = /dev/sda8                                                                   
      label = slack-curr                                                                 
      read-only
    
  • Hi - I will try those changes in the lilo.conf files and report back ut don't I need to do something after making the changes to activate them? Like running sudo lilo -v?
  • mfillpot
    mfillpot Posts: 2,177
    The command lilo -v is used to get the version information, you use the command lilo with no arguments to write the image to the MBR, after you try the command please report back to tell us if it was successful or if it resulted in error messages.
  • I ran fdisk - l |more. Here is what it says:

    Disk /dev/hda: 80G
    ...
    ...
    ...

    Device Boot Start End Blocks Id System
    /dev/hda1 1 486 390...+ fd Linux raid autodetect
    /dev/hda2 487 9729 742...+ 5 Extended
    /dev/hda5 487 579 746...+ fd Linux raid autodetect
    /dev/hda6 580 9729 734...+ fd Linux raid autodetect

    Disk /dev/hdb: 80G
    ...
    ...
    ...

    Device Boot Start End Blocks Id System
    /dev/hdb1 1 486 390...+ fd Linux raid autodetect
    /dev/hdb2 487 9729 742...+ 5 Extended
    /dev/hdb5 487 579 746...+ fd Linux raid autodetect
    /dev/hdb6 580 9729 734...+ fd Linux raid autodetect

    Disk /dev/md1: 764MB
    ...
    ...
    ...

    Disk /dev/md2: 75.3MB
    ...
    ...
    ...

    Does that help to let me know how to configure lilo.conf? I'm still not clear whether I need to run /sbin/lilo before rebooting.

    Finally, how can I be sure that it is using GRUB or LILO? Should I remove one or the other?

    Thanks again.

    Christian
  • When I run /sbin/lilo (with no changes made to the lilo.conf file yet) - I get the following response:

    Fatal: chroot /dev/root: Not a directory.

    1. Any ideas of how the lilo.conf file should be changed to avoid this?
    2. Could the system be using Grub instead? How can I find out?

Categories

Upcoming Training