You are not logged in.

#1 2014-04-27 01:53:03

rabcor
Banned
Registered: 2013-02-09
Posts: 500

Won't boot after installing plymouth

I installed plymouth on my desktop and now it refuses to boot. I followed that guide trying to use the framebuffer solution (i.e I installed v86d and ran it as a hook from mkinitcpio, i added plymouth after it and added splash to the command line through grub settings)

Now I always get this error.

Booting the kernel.
[...]Initramfs unpacking failed: unexpected EOF
:: running early hook [udev]
:: running hook [udev]
:: Triggering uevents...
:: running hook [v86d]
:: running hook [plymouth]
:: Loading plymouth...done.
ERROR: device '' not found. Skipping fsck.
ERROR: Unable to find root device ''.

And then I get dropped into a recovery shell without a working keyboard. What did I do wrong? I clearly need to chroot through a CD to get back in my system this way, but I'd like to know if anyone knows how to solve this before I give up on installing a bootsplash (with fbsplash flagged out of date and splashy incompatible with systemd)

Last edited by rabcor (2014-04-27 01:55:54)

Offline

#2 2014-04-27 10:03:13

ooo
Member
Registered: 2013-04-10
Posts: 1,638

Re: Won't boot after installing plymouth

you should've at least posted your grub and mkinitcpio configurations. Quite impossible to tell where the problem could be otherwise..

Offline

#3 2014-04-28 09:37:33

Padfoot
Member
Registered: 2010-09-03
Posts: 382

Re: Won't boot after installing plymouth

The questions you need to provide answers for to get a possible solution are:

1. UEFI or BIOS?
2. NVIDIA, ATI, INTEL, NOUVEAU or RADEON video driver?
3. Post your  /etc/mkinitcpio.conf

Cheers.

Offline

#4 2014-04-29 03:59:20

rabcor
Banned
Registered: 2013-02-09
Posts: 500

Re: Won't boot after installing plymouth

1: BIOS
2: NVIDIA
3:

MODULES="pci-stub"
BINARIES=""
FILES=""
HOOKS="base udev v86d plymouth autodetect modconf block filesystems keyboard fsck"

I didn't have pci-stub in when I posted this, but I doubt it changes much.

In grubs case I had

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

The problem seems to me when I google the same error that my system doesn't detect the root hard drive, and looks for it in '' (basically doesn't look for it) but I could be wrong of course.

Last edited by rabcor (2014-04-29 04:01:09)

Offline

#5 2014-04-29 06:36:55

Padfoot
Member
Registered: 2010-09-03
Posts: 382

Re: Won't boot after installing plymouth

That all looks ok. The error seems as if it cannot find your root device from the kernel command line passed through grub.

Post your /boot/grub/grub.cfg.

Offline

#6 2014-05-01 18:02:59

rabcor
Banned
Registered: 2013-02-09
Posts: 500

Re: Won't boot after installing plymouth

My grub.cfg is just the normally generated one with "grub-mkconfig -o /boot/grub/grub.cfg" and os-prober for windows. (note: I don't have pci-stub anymore)

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

### BEGIN /etc/grub.d/00_header ###
insmod part_gpt
insmod part_msdos
if [ -s $prefix/grubenv ]; then
  load_env
fi
if [ "${next_entry}" ] ; then
   set default="${next_entry}"
   set next_entry=
   save_env next_entry
   set boot_once=true
else
   set default="0"
fi

if [ x"${feature_menuentry_id}" = xy ]; then
  menuentry_id_option="--id"
else
  menuentry_id_option=""
fi

export menuentry_id_option

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 load_video {
  if [ x$feature_all_video_module = xy ]; then
    insmod all_video
  else
    insmod efi_gop
    insmod efi_uga
    insmod ieee1275_fb
    insmod vbe
    insmod vga
    insmod video_bochs
    insmod video_cirrus
  fi
}

set menu_color_normal=light-blue/black
set menu_color_highlight=light-cyan/blue

if [ x$feature_default_font_path = xy ] ; then
   font=unicode
else
insmod part_msdos 
insmod ext2
set root='hd0,msdos6'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos6 --hint-efi=hd0,msdos6 --hint-baremetal=ahci0,msdos6  9ca1414d-92e6-4033-8885-9abb94999176
else
  search --no-floppy --fs-uuid --set=root 9ca1414d-92e6-4033-8885-9abb94999176
fi
    font="/usr/share/grub/unicode.pf2"
fi

if loadfont $font ; then
  set gfxmode=auto
  load_video
  insmod gfxterm
  set locale_dir=$prefix/locale
  set lang=en_US
  insmod gettext
fi
terminal_input console
terminal_output gfxterm
if [ x$feature_timeout_style = xy ] ; then
  set timeout_style=menu
  set timeout=5
# Fallback normal timeout code in case the timeout_style feature is
# unavailable.
else
  set timeout=5
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/10_archlinux ###

menuentry "Arch Linux pkg-linux kernel" --class arch-linux --class arch --class gnu-linux --class gnu --class os {
    
    if [ x$feature_all_video_module = xy ]; then
        insmod all_video
    fi
    set gfxpayload=keep
    insmod ext2
    if [ x$feature_platform_search_hint = xy ]; then
        search --no-floppy --fs-uuid  --set=root --hint-bios=hd0,msdos5 --hint-efi=hd0,msdos5 --hint-baremetal=ahci0,msdos5  4a01a229-af05-4d36-8c5d-47f316609be3
    else
        search --no-floppy --fs-uuid  --set=root 4a01a229-af05-4d36-8c5d-47f316609be3
    fi
    echo 'Loading Arch Linux pkg-linux kernel ...'
    linux /vmlinuz-linux root=UUID=9ca1414d-92e6-4033-8885-9abb94999176 rw  quiet
    echo 'Loading Arch Linux pkg-linux kernel initramfs ...'
    initrd /initramfs-linux.img
}


menuentry "Arch Linux pkg-linux kernel (fallback initramfs)" --class arch-linux --class arch --class gnu-linux --class gnu --class os {
    
    if [ x$feature_all_video_module = xy ]; then
        insmod all_video
    fi
    set gfxpayload=keep
    insmod ext2
    if [ x$feature_platform_search_hint = xy ]; then
        search --no-floppy --fs-uuid  --set=root --hint-bios=hd0,msdos5 --hint-efi=hd0,msdos5 --hint-baremetal=ahci0,msdos5  4a01a229-af05-4d36-8c5d-47f316609be3
    else
        search --no-floppy --fs-uuid  --set=root 4a01a229-af05-4d36-8c5d-47f316609be3
    fi
    echo 'Loading Arch Linux pkg-linux kernel ...'
    linux /vmlinuz-linux root=UUID=9ca1414d-92e6-4033-8885-9abb94999176 rw  quiet
    echo 'Loading Arch Linux pkg-linux kernel fallback initramfs ...'
    initrd /initramfs-linux-fallback.img
}

### END /etc/grub.d/10_archlinux ###

### BEGIN /etc/grub.d/10_linux ###
menuentry 'Arch Linux' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-9ca1414d-92e6-4033-8885-9abb94999176' {
	load_video
	set gfxpayload=keep
	insmod gzio
	insmod part_msdos 
	insmod ext2
	set root='hd0,msdos5'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos5 --hint-efi=hd0,msdos5 --hint-baremetal=ahci0,msdos5  4a01a229-af05-4d36-8c5d-47f316609be3
	else
	  search --no-floppy --fs-uuid --set=root 4a01a229-af05-4d36-8c5d-47f316609be3
	fi
	echo	'Loading Linux linux ...'
	linux	/vmlinuz-linux root=UUID=9ca1414d-92e6-4033-8885-9abb94999176 rw  quiet
	echo	'Loading initial ramdisk ...'
	initrd	/initramfs-linux.img
}
submenu 'Advanced options for Arch Linux' $menuentry_id_option 'gnulinux-advanced-9ca1414d-92e6-4033-8885-9abb94999176' {
	menuentry 'Arch Linux, with Linux linux' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-advanced-9ca1414d-92e6-4033-8885-9abb94999176' {
		load_video
		set gfxpayload=keep
		insmod gzio
		insmod part_msdos 
		insmod ext2
		set root='hd0,msdos5'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos5 --hint-efi=hd0,msdos5 --hint-baremetal=ahci0,msdos5  4a01a229-af05-4d36-8c5d-47f316609be3
		else
		  search --no-floppy --fs-uuid --set=root 4a01a229-af05-4d36-8c5d-47f316609be3
		fi
		echo	'Loading Linux linux ...'
		linux	/vmlinuz-linux root=UUID=9ca1414d-92e6-4033-8885-9abb94999176 rw  quiet
		echo	'Loading initial ramdisk ...'
		initrd	/initramfs-linux.img
	}
}

### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/30_os-prober ###
menuentry 'Windows 7 (loader) (on /dev/sda1)' --class windows --class os $menuentry_id_option 'osprober-chain-A8E82870E8283EC6' {
	insmod part_msdos 
	insmod ntfs
	set root='hd0,msdos1'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1  A8E82870E8283EC6
	else
	  search --no-floppy --fs-uuid --set=root A8E82870E8283EC6
	fi
	chainloader +1
}
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f  ${config_directory}/custom.cfg ]; then
  source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f  $prefix/custom.cfg ]; then
  source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###

### BEGIN /etc/grub.d/60_memtest86+ ###
### END /etc/grub.d/60_memtest86+ ###

Offline

#7 2014-05-02 09:14:49

Padfoot
Member
Registered: 2010-09-03
Posts: 382

Re: Won't boot after installing plymouth

Ok, someone please correct me if I am wrong, it's been a while since I used grub.

How many menu entries are listed in grub when you boot?

It looks like you should see 4 from the grub.cfg you posted.
If this is the case, try the 3rd option (it should be labeled as 'Arch Linux', not 'Arch Linux pkg-linux kernel')

The reason I suggest this is in your ### BEGIN /etc/grub.d/10_archlinux ###
The menu entries generated (titled with 'Arch Linux pkg-linux kernel'), there is no set root='hdo,msdos5'
This could explain why no root device is found.

In your ### BEGIN /etc/grub.d/10_linux ###
The menu entries generated (titled with 'Arch Linux'), the set root line is present

It would seem to me that you have an old custom grub config script in /etc/grub.d, specifically /etc/grub.d/10_archlinux which does not appear to be generating valid menu entries.

Cheers.

Offline

#8 2014-05-05 09:49:52

rabcor
Banned
Registered: 2013-02-09
Posts: 500

Re: Won't boot after installing plymouth

I don't have anything custom in this regard, unless it was installed by maybe os-prober. If there's anything custom it would be /etc/default/grub.conf.

But well you might be right. It's 5 menu entries btw, one was "Advanced options for Arch Linux" .

if I do ls /etc/grub.d/

I get

00_header      10_archlinux   10_linux       20_linux_xen   30_os-prober   40_custom      41_custom      60_memtest86+

So you were right I do have something called custom, but I don't even know what this is...

40_custom has

#!/bin/sh
exec tail -n +3 $0

41_custom has

!/bin/sh
cat <<EOF
if [ -f  \${config_directory}/custom.cfg ]; then
  source \${config_directory}/custom.cfg
elif [ -z "\${config_directory}" -a -f  \$prefix/custom.cfg ]; then
  source \$prefix/custom.cfg;
fi
EOF

Anyways yeah I'll try to use the arch-linux entry rather than pkg-kernel.

Last edited by rabcor (2014-05-05 09:51:35)

Offline

Board footer

Powered by FluxBB