After the Feisty Fawn release, many people have reported various problems that all have the following error in common:
BusyBox v1.1.3 (Debian 1:1.1.3-2ubuntu3) Built-in shell (ash) Enter 'help' for a list of built-in commands. /bin/sh: can't access tty; job control turned off
What follows is a compendium of fixes and workaround that were gathered on the support channels (with special thanks to the Italian support group).
Desktop CD (LiveCD)
The fixes proposed below are valid for those who experience difficulties installing from the Desktop CD or using its 'live' session.
When the boot screen appears, press the F6 key. A text box will appear, and you should try adding the parameters acpi=force and irqpoll to the end of the command line:
If the acpi=force parameter doesn't solve your problem, try giving acpi=off instead.
In some cases it's possible for the floppy drive to cause hardware conflicts. In this case, putting a disk in the drive before Ubuntu boots or, alternatively, disabling the floppy from your computer's BIOS interface may help.
The fixes proposed below are valid for those who experience difficulties using Ubuntu after installing it to the hard drive or upgrading it.
The partition containing the system's root directory (/) is usually identified by a hexadecimal string called UUID. This value can be obtained from the file /etc/fstab:
# /dev/sda1 UUID=8d28b051-ed78-412f-9831-4caa49babd04 / reiserfs notail 0 1
If the UUID value indicated there does not match your partition's correct value, it could be changed into the correct value as shown by the command
but it's also worth trying to replace it with the corresponding block device, which can by obtained using the command
sudo fdisk -l
since using even the correct UUID is known to generate problems in some cases.
Storing GRUB Configuration
The appropriate device identifier can be stored to the /boot/grub/menu.lst file, in order to make the GRUB boot loader correctly recognize the root partition during subsequent boots, by changing the root parameter:
kernel /boot/vmlinuz-2.6.20-15-lowlatency root=/dev/sda1 ro quiet splash locale=it_IT
This change must be performed again after every kernel update or installation. (FIXME: should be added to kopt line!)
Temporary GRUB Editing
In an emergency, the root parameter can also be temporarily modified from inside GRUB while it is running, allowing to boot into a working system that will later allow permanently modifying /boot/grub/menu.lst.
In the kernel list menu, select the entry for the kernel you want to boot from, and hit the «e» key:
In the menu that appears, select the kernel line and press «e» again:
Then a text edit box will allows you to move to the root parameter using the cursor keys and substitute the wrong UUID with the correct value:
You can confirm your edit by pressing «Enter», and then hitting the «b» key to boot your system.
It is always best to make sure the initial RAM disk (initrd) is present after every installation or kernel update. The relevant file should be in the /boot directory, and it is usually named initrc.img-$(uname -r), where $(uname -r) is the kernel version. If it is not found there, it can be generated using the following command:
sudo update-initramfs -k $(uname -r)
The above is only a partial collection of solutions for problems related to the "tty" error. In case the proposed fixes didn't help you solve your problem, you should give a detailed report to the community support channels. In particular, the following information will be essential:
- if the problem manifests itself on the Desktop CD or on an installed system
- when the problem occurs (immediately after booting begins, after some components have already been loaded, etc)
- a log of the kernel messages before the error occurred, which can be obtained by loading the system in Safe Graphics Mode (FIXME: how exactly to get to the logs)