CentOS 7 installer: blank screen

centoscentos7kickstart

I am trying to figure out CentOS 7 unattended network (PXE) installations in my setup, but the installer always ends up running into a black screen without interaction options. This is being tried in a 64-bit VM (VMWare Workstation or Oracle VirtualBox).

The installer Kernel and initrd images have been sourced via rsync -av from here: rsync.hrz.tu-chemnitz.de::ftp/pub/linux/centos/7/os/x86_64/images/pxeboot/ and were placed in the TFTP server's directory.

The installation seems to lift off normally, the Kernel boots up, initrd is loaded and startup scripts loading the kickstart file and the installer data off my repository server (via HTTP) have run more or less without errors:
first stage

At this stage, attempts to download updates.img and product.img are reported as failing as they are not present in the repository I am using.

The install seems to proceed without errors:
installer loading

up to the point where it is mentioning that GNOME has started:
GNOME started

after which there is a screen mode switch and everything goes blank. Console switch attempts using Ctrl+Alt+Fx do not work do work if I am persistent enough (it takes 2-3 hits to F3 to actually switch the console), where I can see that X has been started (by /usr/sbin/gdm) and is apparently hanging somewhere – the /var/log/Xorg.0.log file shows that VESA VBE drivers and input device drivers have been loaded successfully a suitable VESA mode has been chosen (0x144), yet it seems to stop there. From here, I can start /sbin/anaconda and the installer is running following the directives from the Kickstart config – if I have specified text in there, I can see the installer succeed and create a bootable system.

Things tried so far without success:

  • Trying to kill X11 using Ctrl+Alt+Backspace does not produce any result
  • the text, cmdline and skipx Kickstart installation options as well as nomodeset text kernel parameters have been set to prevent the installer image from even starting X, but are not honored. The Kickstart installation options seem not to be even evaluated prior to Anaconda's start.
  • playing around with inst.xdriver= kernel boot options did not produce any different results
  • I have tried VMWare Workstation as well as Oracle VirtualBox as the Hypervisor for my VM – to no avail
  • I suspected a problem with my Kickstart script at which point I have exchanged my script initially ripped off this sample by a "minimal" one from here merely replacing the --url= parameter's data by http://ftp.tu-chemnitz.de/pub/linux/centos/7/os/x86_64/ (the installation mirror I want to use)
  • I have tried using another mirror which changed nothing except for the download time of the 278M-sized installer image (presumably LiveOS/squashfs.img)

What is going wrong here and how would I fix my install?

Best Answer

Edit you kernel bootup command line and add the following option: nomodeset This should skip early framebuffer configuration and it will force X to common resolution, with little or no video acceleration.