How to Pause Boot to Read Errors in Fedora 27
This page documents common problems with the Linux kernel in Fedora.
How to ready kernel boot options
Kernel boot options are contained in the file /boot/grub/grub.conf
. Each installed kernel has a group of lines called a stanza describing:
- the title of the operative system to load
- where to find the kick partition (in grub named root!)
- what kernel (vmlinuz-*) to kick, with additional kernel options
- the proper name of the initrd to load
A typical stanza looks something like this:
title Fedora 13 (two.six.33.five-124.fc13.i686.PAE) root (hd1,7) kernel /vmlinuz-ii.vi.33.5-124.fc13.i686.PAE ro root=/dev/mapper/VG_f13-LV_f13_root rd_LVM_LV=VG_f13/LV_f13_root rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=us rhgb quiet initrd /initramfs-2.6.33.five-124.fc13.i686.PAE.img championship CentOS 5 (2.half dozen.18-194.3.1.el5) root (hd0,iv) kernel /vmlinuz-2.six.18-194.3.1.el5 ro root=/dev/mapper/VG_CentOS-LV_CentOS_root rd_LVM_LV=VG_CentOS/LV_CentOS_root rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=us rhgb quiet initrd /initrd-2.six.18-194.3.one.el5.img title Ubuntu ten.04 LTS root (hd0,6) chainloader (hd0,6)+1 kernel /grub/core.img savedefault boot
In this example, we accept three OO.SS: Fedora 13 (kick) resides on the eighth partition of the second hard disk. (Remember, that in grub the partition and deejay numbers begin from 0); CentOS on the fifth partition of the offset disk and Ubuntu on the 7th division of the starting time disk.
Kernel options are placed at the cease of the kernel line and are separated by spaces. In the case:
- ro: mounts root device read-merely on boot
- root: root filesystem
- rd_LVM_LV: it activates the root filesystem in the logical volume LV_f13_root of the volume group VG_f13
- rd_NO_LUKS: disables crypto LUKS detection
- rd_NO_MD: disables Doc RAID detection
- rd_NO_DM: disables DM RAID detection
- LANG: is the system linguistic communication, written to /etc/sysconfig/i18n in the initramfs
- SYSFONT: is the console font, written to /etc/sysconfig/i18n in the initramfs
- KEYTABLE: is the keytable filename, written to /etc/sysconfig/keyboard in the initramfs
- rhgb: for graphical boot support
- quiet: disables most log letters
For other options view also the wiki Dracut kernel command line parameters.
When having bug, it is commonly a good thought to remove the tranquillity pick so that the full set of kernel messages is shown during boot
Getting the Full List of Kernel Options
How to set up module options for boot drivers
Module options are fix in the file /etc/modprobe.conf
, or (with versions of module-init-tools in F10+) on the kernel command line. Drivers that are needed to boot the system are put into an initrd, and their options are copied from modprobe.conf by the mkinitrd
script that builds the initrd. To change module options for those drivers, you can change the /etc/modprobe.conf
file and rebuild the initrd, or alternatively (in recent releases of Fedora) you lot can merely suspend on the kernel command line.
For example, to disable adma fashion on an nVidia SATA controller, add these options to the kernel control line (format is <modulename>.<selection>=value):
sata_nv.adma=0
Alternatively, add this line to a file in /etc/modprobe.d/
:
options sata_nv adma=0
To get options set in /etc/modprobe.d/*
into the initrd, run the mkinitrd
program. Usually this is simply the command mkinitrd /boot/initrd-$(uname -r).new.img $(uname -r)
to build a new initrd for the currently-running kernel without overwriting the exisitng one. (Meet homo mkinitrd
for help on additional options.) To test the new initrd, reboot the organisation and use the control line editing facilities to change the proper name of the initrd. Or, create a new stanza in the /etc/grub.conf
file something like this (see above for the original):
title Fedora Core [with new initrd] (2.6.29-0.215.rc7.fc11.i586) root (hd0,1) kernel /vmlinuz-2.6.29-0.215.rc7.fc11.i586 ro root=LABEL=/ rhgb quiet initrd /initrd-2.half-dozen.29-0.215.rc7.fc11.i586.new.img
This volition allow you kick with either the new or the old initrd by pressing the upwards arrow / down arrow keys on the very first boot screen. Once everything is tested, remove the original initrd and rename the new one to the same proper name as the old ane, then remove the "[with new initrd] " stanza from /etc/grub.conf
.
How to ensure y'all e'er accept a working kernel installed
Keeping more than than the default number of kernels installed
If yous are having problems with some update kernels, you may want to increase the maximum number of kernels that yum will leave installed. Edit /etc/yum.conf
and change the number on the installonly_limit
line to practise that. Note that you will need enough free infinite in /boot to keep the extra kernels installed.
Uninstalling older non-working kernels
Yous may besides erase kernels that you lot know are not working in order to keep older, working kernels from beingness uninstalled on the side by side update.
Can't notice root filesystem / error mounting /dev/root
- A lot of these bugs end upward existence a broken initrd due to bugs in mkinitrd. Get the user to adhere their initrd for their kernel to the bz, and also their /etc/modprobe.conf, or have them examine the contents themselves if they are capable of that.
- Picking apart the initrd of a working and failing kernel and doing a diff of the init script can reveal clues.
To take autonomously an initrd, do the following ..
mkdir initrd cd initrd/ gzip -dc /boot/initrd-2.half-dozen.23-0.104.rc3.fc8.img | cpio -id
Another mode to examine the initrd is with Midnight Commander. Add together the extension .cpio.gz to the filename and then just place the cursor over the name and printing Enter.
- Unsupported mount options like "relatime" in /etc/fstab can cause issues. Removing whatsoever references to the "relatime" option and rebuilding the initrd volition fix this.
Crashes/Hangs
- Checking whether or not the CapsLock key (or NumLock or ScrollLock) causes the light on the keyboard to change country can be used every bit an indication of whether or non the kernel has hung completely, or if there is something else going on.
- For kick related bug nosotros demand equally much info as possible, and then removing
tranquility
rhgb
from the boot flags should be the first thing to ask for. - Slowing down the speed of text output with
boot_delay=1000
(the number may need to be tweaked higher/lower to suit) may allow the user to accept a digital photographic camera photo of the last thing on screen. - Booting with
vga=791
(or even but vga=i if the video menu won't back up 791) will put the framebuffer into high resolution mode to become more lines of text on screen, allowing more than context for bug assay. -
initcall_debug
will allow to see the last thing the kernel tried to initialise before it hung. - There are numerous switches that change which at times have proven to be useful to diagnose failures by disabling diverse features.
-
acpi=off
is a big hammer, and if that works, narrowing down past tryingpci=noacpi
instead may yield clues -
nolapic
andnoapic
are sometimes useful -
nolapic_timer
can exist useful on i386; on x86_64 this choice is callednoapictimer
- Given information technology's new and still seeing quite a few changes,
nohz=off
and/orhighres=off
may be worth testing. (Though this is kernel 2.vi.21 and to a higher place only) - If you get no output at all from the kernel, sometimes booting with
earlyprintk=vga
can sometimes yield something of interest. - If the kernel locks up with a 'soft lockup' report, booting with
nosoftlockup
volition disable this cheque assuasive booting to go along. - If the kernel locks up really early on, booting with
edd=skipmbr
oredd=off
may help - The arrangement can hang because the clock isn't running properly, see System clock runs besides fast/slow
- Sometimes the system can hang because it is looking for nonexistent floppy drives. Meet Kick pauses probing floppy device
- Sometimes multiple options are needed, e.g.
clocksource=acpi_pm nohz=off highres=off
- Try to narrow downwardly the options needed to the absolute minimum. This helps the kernel maintainers observe the underlying problem.
- If it hangs after "Freeing unused kernel memory: 280k freed" you might have glibc.i686 when your processor is not capable of i686. Supplant it to glibc.i386 and be certain the "i686" and "nosegneg" directories are deleted.
Kick pauses probing floppy device
On some machines (by and large laptops with removable floppy drives), boot volition pause while the (non-existant) floppy device is probed. A series of the post-obit messages will appear:
end_request: I/O fault, dev fd0, sector 0 end_request: I/O mistake, dev fd0, sector 0 Buffer I/O error on device fd0, logical block 0
This is caused by initrd'south nash searching for filesystem labels on the floppy device. This problem can exist avoided by adding floppy.allowed_drive_mask=0
to the kernel boot options.
Can't find installation CD/DVD or difficult drives
- Try
pci=nomsi,nommconf
. This disables PCI Bulletin Signaled Interrupts and MMCONFIG.
- Try booting with
libata.dma=ane
[employ DMA only for hard drives] orlibata.dma=0
[practice not use DMA at all] . This tin at to the lowest degree get the system installed, then the drivers can be updated.
- Endeavour the kicking pick
pci=nocrs
on ii.6.34 and later kernels.
- The choice
pcie_aspm=off
may be needed past some SCSI and RAID drivers (and some network drivers as well.)
- Try disabling the AHCI driver by adding
rdblacklist=ahci
. This forces the generic drivers to be used, which may work, just sometimes very slowly.
Install runs very slowly
If the system runs very slowly, it may take a BIOS bug that causes role of the organization memory to be uncached. Playing with the mem=
parameter tin can work effectually this trouble. Trying for instance, mem=1000M
volition limit the organization to 1000 megabytes of memory and may make the install run much faster.
Can't install
Sometimes, fifty-fifty booting with acpi=off or diverse other boot command line options, the kernel refuses to kick on some subsets of hardware. If none of the higher up tricks helps, then..
- In rawhide bugs, if the study is something that would prevent someone from installing the next release (crashes during kick, doesn't find hard disks etc), mark the bug as blocking 'F9Blocker' (bug 235706).
- if information technology'southward confronting the previously released version of Fedora, then it's possible that the problem was caused in a kernel bug that has since been stock-still upstream. As Fedora constantly rebases to newer upstream kernels, they'll go picked up by the respins washed by the folks at http://fedoraunity.org Propose that the user tries an updated ISO if one is available.
Diagnosing "My machine locked up"
This can be a tricky 1 to diagnose. Near users don't accept serial console capability, and so nosotros're generally guessing in the dark.
- For possible workarounds for this problem, see Crashes/Hangs
- If information technology'south repeatable, hooking up a serial cable to a 2d box can be useful for capturing kernel messages that may go printed just earlier the lockup. Configure the automobile being debugged to kick with
console=ttyS0,115200 console=tty0
and run a last program such asminicom
on the other end. Configure the remote cease to talk at the same baud rate (115200). (In minicomctrl-a, p, i, enter
. More info on setting up a series last can be found at http://searchenterpriselinux.techtarget.com/tip/0,289483,sid39_gci1118136,00.html - Sometimes just getting lsmod output from users can yield enough clues if at that place are multiple reports and common modules between both. (It also allows to filter out reports from users of nvidia,vmware etc).
- Hooking upwardly serial console / can sometimes get debug info out of the car.
- If the hang happened whilst in Ten, the auto may notwithstanding reply to ssh logins from other machines. Attempt this to get a dmesg.
- The magic sysrq key might work. Encounter QA/Sysrq for details.
- booting with
nmi_watchdog=ii
may cause a backtrace to occur when the lockup happens.
Append/Resume failure
The most common failure mode is 'blackness screen on resuming', simply the organization may likewise hang while suspending.
- Laptops using the nv driver should be considered hibernate-simply capable as per https://www.redhat.com/archives/fedora-test-list/2007-September/msg00365.html
- If the system fails to resume, see if the organization is locked up completely by hitting the caps lock key.
- If the capslock lite doesn't toggle, or the failure is during suspend, try once more, simply this time before suspending, actuate the pm_trace functionality with
echo ane > /sys/power/pm_trace
. This reprograms the real time clock to contain a few bytes of information which we can use to diagnose which driver failed to append or resume. After the hang, reboot, boot upwards over again. Now apply the controldmesg | grep "hash matches"
and yous will become a listing of matches like this:hash matches device 0000:05:06.1
. The last device on the list is likely the one thats causing problems. To discover out which commuter is causing the problem you volition have to wait upwards the commuter in/sys/autobus/pci/drivers/
. This tin can be done usingdetect /sys/passenger vehicle/pci/drivers/ -proper noun "0000:05:06.1"
. Information technology will return a path like to this 1:/sys/bus/pci/drivers/firewire_ohci/0000:05:06.ane
which means that the firewire_ohci commuter is causing troubles. Unloading the module usingmodprobe -r firewire_ohci
should set up the append issues. Please also note that pm_trace uses the RTC for storing the data, which volition result into a wrong system clock later on boot. To fix it just use system-config-date to prepare the correct appointment. - If the capslock light does toggle when resuming, and then the arrangement did come back up, and it's possible that we just failed to reinitialise the video. It may be useful to initiate the suspend from a tty (
ctrl-alt-f1
) and runpm-suspend ; dmesg > dmesg.out ; sync
by hand. Upon resuming you lot'll now have some more debug info to sift through. Additionally, this way when information technology resumes, you already have a console logged in from which you can type commands 'blind'. Tryingvbetool mail service
for example may bring things back to life. - Proprietary 3d graphics driver users should examination with respective open source drivers.
- Try
rmmod
'ing diverse modules earlier doing the suspend. If this makes things work once more, retry with a smaller set of modules unloaded. Keep retrying until you lot narrow down which module is to blame. - Another trick that sometimes works to forcefulness video to come back up is to enable the BIOS password. This makes the system resume in a VGA text mode that the kernel recovers from a lot easier. Not a real solution, but information technology can assistance to diagnose other issues.
Organization clock runs too fast/slow
- Try a different clock source, e.g. :
clocksource=acpi_pm
- Clock sources can be changed at runtime by writing the new clocksource name to the file
/sys/devices/system/clocksource/clocksource0/current_clocksource
, but be aware that changing to an unstable/broken clock source tin can hang the system. Irresolutetsc
orjiffies
toacpi_pm
should be okay. (The list of available sources is in the fileavailable_clocksource
in the same directory.)
- The kernel's tickless style is enabled by default in Fedora seven and 8, simply tin sometimes cause incorrect timekeeping. Using
nohz=off highres=off
will disable it.
Sound card doesn't work
"Loftier Definition Sound" devices
Many times the model can't be detected properly. Adding the correct model to the sound carte du jour commuter'south entry in /etc/modprobe.d/dist.conf will force the driver to use that model, e.g. options audio-card-0 model=3stack
. Options for this driver are documented in the file /usr/share/medico/kernel-doc-<version>/Documentation/sound/alsa/ALSA-Configuration.txt
in the kernel-physician package.
Organization hangs on reboot
Changing the reboot method can piece of work around this problem. To strength a reboot method other than the default, use the reboot=
kernel option:
-
reboot=b
forces reboot through the arrangement BIOS.
-
reboot=w
forces a 'warm" reboot (no memory test.)
These can be combined: reboot=b,w
forces a warm reboot using the organisation BIOS.
Booting is wearisome
The first matter to do is isolate which function of the boot process is slow to decide if the fault is the kernel, the initrd scripts, or other parts of the kicking process. One way to practise this is using the bootchart
awarding. Install this with yum, and the next time you reboot, profiling will be done during boot which tin be collected by running the command bootchart
which will generate a .png file containing a graph showing where the time was spent. If the kernel appears to stall during kick, booting with the kick parameter printk.time=1
volition insert timestamps earlier every message the kernel prints to its ringbuffer. Think these messages with dmesg, and await for big deltas between 2 timestamps to isolate (for eg) drivers which may exist spending a long fourth dimension initialising.
Cosmos of slab failed
In Rawhide/devel kernels (and in -debug flavors of released kernels), Fedora uses the SLUB allocator with total slab debugging enabled past default. The debugging might cause bug in some rare cases: retention allocations can fail, causing the organisation to panic. Slab debugging tin be disabled with the selection slub_debug=-
(a unmarried minus sign.) Note, that this choice volition hide an bodily problems that actually should exist reported and fixed rather than worked around.
USB devices don't work
This can be caused by USB autosuspend stopping and starting devices repeatedly. To disable autosuspend globally, employ the kernel option usbcore.autosuspend=-one
.
Problems with PCMCIA / PC Carte adapters
By default, the kernel merely reserves a fairly small amount of retentivity and I/O space for PC Card adapters. Some adapters need more infinite, or volition not work within the default range of addresses.
- The corporeality of memory allocated can exist set up using the
cbmemsize
kernel selection. Default is 64 megabytes, but it can be changed to e.m. 256 megabytes using the pickcbmemsize=256M
. Going over 256M is not recommended.
- The default for Cardbus IO space is 256 bytes, but information technology can be inverse using
cbiosize
, e.g. to change the size to 4096 bytes, usecbiosize=4096
. Setting this to a value larger than 4096 may crusade problems.
nVidia SATA controllers don't recognize all connected drives
- Try the kernel parameter
pnpacpi=off
CPU stuck at the lowest frequency on ThinkPad machines
ThinkPad users who see their system throttled as soon as the processor module gets loaded and without obvious reason should check the contents of this file:
/sys/devices/system/cpu/cpu0/cpufreq/bios_limit
If it is ready to the lowest value, you must laissez passer processor.ignore_ppc=1
boot parameter equally a workaround. (See kernel.org bug #16382 for details.)
Tin't decrypt drive / encryption password not accepted
Try adding the boot choice rdblacklist=aesni-intel
. You may besides accept to blacklist the aesni-intel driver past adding a blacklist entry in /etc/modprobe.d
.
Elantech trackpad not recognized as a trackpad
You can add together the selection psmouse.force_elantech=one
to force recognition. This requires at least kernel ii.6.34 to work.
Systems with nVidia adapters using the nouveau driver lock up randomly
Try adding the kicking option nouveau.noaccel=i
.
Network drives using the CIFS filesystem get inconsistent data when reading files
This is stock-still in recent kernel updates, just can be worked effectually by calculation noserverino
to the mountain options.
PCI Devices Not Recognized / AHCI: "failed to stop engine"
On kernel version 2.half-dozen.34 and subsequently, ACPI is used to determine PCI resources. Some machines have bugs in their ACPI BIOS code and fail set configure resources properly. Try using pci=nocrs
to disable utilise of ACPI for resources enumeration.
Unable to Allocate Memory / page allocation failure
Heavily-loaded network servers may have problem allocating memory even though at that place is no shortage. Try setting the sysctl vm.min_free_kbytes
to 65536 in order to keep additional memory free for resource allotment past network drivers.
See Likewise...
- Mutual file arrangement problems
How to Pause Boot to Read Errors in Fedora 27
Source: https://fedoraproject.org/wiki/Common_kernel_problems