Ubuntu 20 black screen after boot menu

baron164

New Member
Jan 16, 2024
25
3
3
I am having issues trying to convert a Ubuntu 20 vm from Hyper-V to Proxmox 8.1.4. I am able to convert the disk and everything appears to be working fine, but after the machine boots up and it proceeds to boot to Ubuntu I get a black screen and nothing else. I can't tell if the VM is hanging or the display just isn't working. I've tried different display, Default/Standard VGA/VMware Campatible/SPICE. Behavior doesn't change. Initially when I booted the machine it stopped at a message saying that SecureBoot was enabled. I then disabled SecureBoot from within the VM's BIOS and then I started getting just the black screen.

I performed a quick test and gave the system sufficient time to boot up. Then, (while still seeing a black screen) I was able to login using the root account and reboot the system. So it appears that the system is working, I'm just not getting anything on the console. And since the network is not yet configured, I can't access the system via SSH or some network based method.

Does anyone have experience with an issue like this and can you recommend a solution?
 
Last edited:
So I've made some progress. I found that if I booted to an older kernel version such as 5.4.0-1109 the screen would work. I was then subsequently able to configure the network interface and regain SSH access. Now when I reboot I don't get a screen but at least I can SSH into the system. My question now becomes, why is 5.15.0-1054 broken in this way and how do I fix it? I tried recovery mode for 5.15 but it doesn't give me a screen at all so it looks like I either need to revert back to 5.4 or somehow fix 5.15. Any suggestions would be greatly appreciated.

1707249581283.png
 
Maybe cloud-optimized kernels don't provide drivers for (virtual) displays? I think I noticed something similar with a KVM-specific kernel. Try installing and booting a (recent) generic kernel in your Ubuntu VM?
 
Maybe cloud-optimized kernels don't provide drivers for (virtual) displays? I think I noticed something similar with a KVM-specific kernel. Try installing and booting a (recent) generic kernel in your Ubuntu VM?
So I assume Microsoft uses the same optimized kernel for both on-prem Hyper-V and Azure. But so far it looks like the 5.4.0-1109-azure Kernel works fine on Proxmox. I checked a few of the other Ubuntu VM's I moved over from Hyper-V that are working and they are running that same Kernel version without issue.

I've never had to mess with grub before so this is new to me. I'm googling what I need to do to revert and/or replace kernel versions. Right now I'd settle with just reverting back to the 5.4.0-1109 version while I figure out how to move from an Azure version to a Generic version. But I'm not sure how to do that yet.
 
Maybe just remove linux-azure kernels (since KVM is not Azure) and dist-upgrade your installation to the latest normal kernel?
EDIT: Do make a backup and don't remove all kernels and try to make sure you know what you are doing with your VM.
 
Last edited:
Yeah, that's what I'm thinking, just never done it before. Ubuntu 20.04 should hopefully work with the 5.4 generic version of the kernel that's installed. So I just need to figure out how to switch the system over to that version and/or remove the azure versions.
 
Yeah, that's what I'm thinking, just never done it before. Ubuntu 20.04 should hopefully work with the 5.4 generic version of the kernel that's installed. So I just need to figure out how to switch the system over to that version and/or remove the azure versions.
literally just had this issue I am new to proxmox/server hosting and got the black screen. I spammed a fey keys on my keyboard out of mild frustration and it kicked the vm into gear. don't know why, but it might do the same for you.
 
So the issue definitely appears to be kernel related. I ended up modifying my grub file by adding the options below to my grub file. This allows me to change the linux image during boot to the older linux kernel and then the system remembers that option and uses it in the future. I removed the Linux Azure agent but the system still wants to use the latest azure kernel image that is installed. Once I fully remove it and the latest image is back to being a generic version I should be able to switch grub back to using the Grub_Default=0 option. But for now the vm is up and running with a functioning console.

GRUB_DEFAULT=saved
GRUB_SAVEDEFAULT=true
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!