0

In Ubuntu 18.04.2, I would like to show a consistent background image from the start of Grub2 to the appearance of the GDM login screen.

I have customized the ubuntu-logo plymouth theme to show the background image that I would like. All the necessary procedures as described by @Jake were done, and tested. Even the test procedure described by @Jake were performed. However, the plymouth theme just does not appear. Between the Grub2 and GDM login stage, I still encounter 6-7 seconds of black screen each time the system boots up.

What can I do to discover the issue(s) for this black screen? How should I fix this missing splash screen issue.? The system uses NVidea driver version:418.56.

Remark: The system is able to boot up and login at the GDM login screen.

Update 1:

I introduced the following amendments to try to resolve my issue:

  1. I added the following commands in the default Grub2 file /etc/defaults/grub:

    GRUB_GFXMODE=1920x1080x32 GRUB_GFXPAYLOAD_LINUX="keep"

    According to GRUB_GFXPAYLOAD_LINUX, the value "keep" preserves the graphics mode set using GRUB_GFXMODE when the linux kernel is booted.

    The resolution of 1920x1080x32 was selected for GRUB_GFXMODE because it was the highest resolution available in the video driver detected by Grub2, which was a EFI GOP driver.

    To get available resolutions detected by Grub2, at the Grub2 menu during the boot phase, I pressed the keyboard 'c' key. Then at grub> prompt, I entered the command videoinfo (see below Videoinfo); the command vbeinfo did not exist in Grub2.

  2. I created a splash file to set FRAMEBUFFER on with this terminal command:

    echo FRAMEBUFFER=y | sudo tee /etc/initramfs-tools/conf.d/splash

  3. As a splash image is involved, I performed the amendments described in the section on Configuration settings (splash image present) in this ubuntu wiki.

  4. Ran terminal commands: sudo update-initramfs -u and sudo update-grub

reference

Videoinfo:

grub> videoinfo
List of supported video modes:
Legend: mask/position=red,green,blue,reserved
Adapter 'Bochs PCI Video Driver':
  No info available
Adapter 'Cirruls CLGD 5446 PCI Video Driver':
  No info available
Adapter 'EFI GOP Driver':
* 0x000 1920 x 1080 x 32 (7680)  Direct color, mask: 8/8/8/8  pos: 16/8/0/24
  0x001  640 x  480 x 32 (2560)  Direct color, mask: 8/8/8/8  pos: 16/8/0/24
  0x002  800 x  600 x 32 (3200)  Direct color, mask: 8/8/8/8  pos: 16/8/0/24
  0x003 1024 x  768 x 32 (3200)  Direct color, mask: 8/8/8/8  pos: 16/8/0/24
  0x004 1280 x  800 x 32 (5120)  Direct color, mask: 8/8/8/8  pos: 16/8/0/24
  0x005 1280 x 1024 x 32 (5120)  Direct color, mask: 8/8/8/8  pos: 16/8/0/24
  0x006 1440 x  900 x 32 (5760)  Direct color, mask: 8/8/8/8  pos: 16/8/0/24
  0x007 1400 x 1050 x 32 (5600)  Direct color, mask: 8/8/8/8  pos: 16/8/0/24
  0x008 1680 x 1050 x 32 (6720)  Direct color, mask: 8/8/8/8  pos: 16/8/0/24
  EDID version: 1.3
    Preferred mode: 1920x1080
grub>

Issue:

During my many reboots checks, the good news is that I am able now able to see the plymouth splash the I had implemented. However, the bad news is that the plymouth splash does not last all the way till the GDM login screen appears; the splash is still proceeded by first a black text screen(see below images on 1st reboot and subsequents reboots) and then followed by a complete black screen, before the GDM login screen appears. The appears for about 5 to 10 secs. Also, after I had made the amendments that I had described above, on the first reboot, the plymouth splash appeared the longest. On my 2nd and subsequent reboots, the appearance of the splash was shortened. Strange...

1st Reboot(left) and Subequent Reboots(right):

1st boot 2nd boot

Question: How can I avoid/overcome these black text screen and black blank screen that appears between the plymouth-splash and gdm-login stages? Is there another stage in the boot sequeence to implement a background image that I have not attended to? Thus far, I only know of the the need to put a background image in the grub, plymouth and gdm stages, and I have perform these setups.

Update 2:

I like to share here my findings from using GRUB_GFXPAYLOAD_LINUX="keep" and when I instructed Grub2 to process the linux kernel with these values: ro, ro splash, ro nomodeset, ro quiet, ro quiet splash, ro quiet splash, $vt_handoff, and ro splash $vt_handoff. For each case, I recorded the boot events from the moment after I had pressed F10 while at the Grubmenu->pressed-key-"e"-environment up till the appearance of the GDM-login screen, and I conducted the same video measurement thrice. Resolution of the reported timings is 1 second. The reported timings is constrained by Seagate's Firecuda internal 2.5" SATA3 HDD performance and would not apply to OS installed on a SSD.

A summary of my measurements are given here.Results

A chart of their cumulative timings is shown below. Note that when the curve between two events is horizontal, it means that the event on the left did not occur.Cumulative timings

Key Findings:

  1. Using $vt_handoff allowed an uninterrupted display of the Grub background image from the Grub Menu stage to the Plymouth Splash stage.
  2. The performance from using ro splash $vt_handoff and ro quiet splash $vt_handoff are similar, except that the former can be slightly faster (in my case it was 1 sec faster) than the latter.
  3. The shortest boot duration of 20 sec was achieved using ro or ro splash $vt_handoff. The latter is most suited when a background image needs to be displayed.

Comments:

My setup presently is still plagued by 2 phenomenon.

  1. The appearance of a black blank screen, for 8 to 10 seconds, prior to the appearance of the GDM-Login screen, and
  2. A 1 sec appearance of the Boot Log immediately after the Plymouth Splash or just before the black blank screen mentioned earlier. It appeared even when the value quiet was used.

I suspect these two issues have something to do with the communication between the Nvidia driver and Grub, or timing issues when transitioning between various virtual screens. Can someone who is knowledgeable of these phenomenons advice me on how to overcome/investigate them? Thank you.

0

Adding the kernel parameter loglevel=3 resolved the appearance of the bootlog for me. You might need to decrease the value of loglevel depending on the exact problem you're encountering. This won't do anything for a blank screen, alas.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.