Recovering from Booting Problems using Live CD

This page describes methods for using the Ubuntu Live CD for recovering from different kinds of problems. If you do not have an Ubuntu disk, please refer to GettingUbuntu. If you have any issues booting the LiveCD, please have a look at the BootFromCD page. Most of the methods described below can also be used from RecoveryMode

Lost Password

Here is how you can use the Live CD to change the administrative password on your machine if you have lost/forgot the current password. Please note that you can usually boot into RecoveryMode and run the passwd command directly.

  1. Boot the Ubuntu Live CD.
  2. Press Ctrl-Alt-F1

  3. sudo mount /dev/hda1 /mnt

  4. Depending on your machine it could also be sudo mount /dev/sda1 /mnt. If you created a custom partition layout when installing Ubuntu you have to find your root partition using the fdisk utility. See the section Finding your root partition.

  5. sudo chroot /mnt

You can now use the passwd command to reset a password.

Note: In the mount command, /dev/hda1 will need to be replaced with the partition where the root of the file system resides.

Add User to a Group

If you have removed yourself from a group, you can use the following to add yourself again. Please note that you can usually use RecoveryMode and run the adduser command directly.

  1. Boot the Ubuntu Live CD.
  2. Press Ctrl-Alt-F1

  3. sudo mount /dev/hda1 /mnt

  4. sudo chroot /mnt

  5. adduser username groupname

Update Failure

If there was an update that made your system non-bootable and they have fixed it in the repositories, you can use the Live CD to run apt-get to get the new files to fix your system.

  1. Boot the Ubuntu Live CD.
  2. Press Ctrl-Alt-F1

  3. sudo mount /dev/hda1 /mnt

  4. sudo chroot /mnt

  5. apt-get update

  6. apt-get upgrade

Finding your root partition

If you created a custom partition layout during the Ubuntu installation, your root partition is probably not /dev/hda1 or /dev/sda1. If you do not know which partition corresponds to your root partition you can use the following procedure to find your root partition. We assume you have booted the live cd and are at the terminal.

  1. If you are not using a software raid setup or have setup your partitions using LVM/2 or EVMS your IDE/SATA/SCSI devices should be accessible through the files /dev/hd[a-z] and /dev/sd[a-z]. /dev/hda corresponds to the primary master device on your IDE bus, while /dev/sda is your first SCSI/SATA device. If you are using software raid, LVM, LVM2 or EVMS, your devices may be listed in the following directories:

    /dev/evms/dm     if you are using software raid
    /dev/evms/lvm if you are using LVM
    /dev/evms/lvm2 if you are using LVM2
    /dev/evms if you are using EVMS

    with their device (software raid) or partition name. You can learn more about Linux partitions here: http://tldp.org/HOWTO/Partition

  2. Now use the fdisk utility to list the partitions on a device. Let's assume that you installed Ubuntu to the fist IDE disk. Type the following:

    sudo fdisk -l /dev/hda

This will produce some output like this:

Password:

Disk /dev/hda: 120.0 GB, 120034123776 bytes
16 heads, 63 sectors/track, 232581 cylinders
Units = cylinders of 1008 * 512 = 516096 bytes

Device Boot Start End Blocks Id System
/dev/hda1 * 1 13206 6655792+ 7 HPFS/NTFS
/dev/hda2 13207 232581 110565000 5 Extended
/dev/hda5 228706 232484 1904616 82 Linux swap / Solaris
/dev/hda6 13207 228705 108611464+ 83 Linux
/dev/hda7 232485 232581 48856+ 83 Linux

Partition table entries are not in disk order

That means you have two standard Linux partitions on your disk: /dev/hda6 and /dev/hda7. You can now try to mount them and see if your Ubuntu installation is there. In this case /dev/hda7 is probably not the root partition, because it is only about 50MiB in size (see the Blocks column). Therefore we mount /dev/hda6:

sudo mount /dev/hda6 /mnt

Now show the files on the partition:

ls /mnt

If this command shows something like:

bin     dev      home      media     proc      sbin     tmp     var
boot etc lib opt root sys usr

it is a partition holding a Linux distribution. You can check if it really is Ubuntu (if you have multiple linux installations on your disk) using the following command:

cat /mnt/etc/lsb-release

That will give you some information about the distribution (if this file does not exist, it is probably not Ubuntu). If it is the wrong partition, just unmount it: sudo umount /mnt and try another partition on the same disk or choose a different partition on another disk (using fdisk as before).

Recover Grub

If you install some other system, or change drives and lose your Grub bootloader. For more information please have a look at the Grub page.

  1. Boot the Ubuntu Live CD.
  2. Press Ctrl-Alt-F1

  3. Find the partition where your /boot directory is (normally the root partition) check the previous tip for that.
  4. sudo mount /dev/hda1 /mnt

  5. sudo chroot /mnt

  6. grub

  7. find /boot/grub/stage1 (will output a partition name like (hd0,3) )

  8. root (hd0,3)

  9. setup (hd0)

  10. quit

  11. Now restart the system and remove the Live CD

The GUI Way: Reinstalling Grub

  1. Boot your computer with the Ubuntu CD
  2. Go through the installation process until you reach "[!!!] Disk Partition"
  3. Select Manual Partition
  4. Mount your appropriate linux partions:
    • /
    • /boot
    • swap
    • ...
  5. DO NOT FORMAT THEM.

  6. Finish the manual partition
  7. Say "Yes" when it asks you to save the changes
  8. It will give you errors saying that "the system couldn't install ....." after that
  9. Ignore them, keep select "continue" until you get back to the Ubuntu installation menu
  10. Jump to "Install Grub ...."
  11. Once it is finished, just restart your computer

No comments:

Post a Comment