Two weeks ago my Centos 7 VM that's been running on Google Compute Engine for two years suddenly crashed, serial console log reveals:

[    1.668426] List of all partitions:
[    1.669174] No filesystem could mount root, tried: 
[    1.669979] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
[    1.671773] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 3.10.0-957.27.2.el7.x86_64 #1
[    1.673630] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
[    1.675841] Call Trace:
[    1.676467]  [<ffffffffadb64147>] dump_stack+0x19/0x1b
[    1.677456]  [<ffffffffadb5d850>] panic+0xe8/0x21f
[    1.678455]  [<ffffffffae186761>] mount_block_root+0x291/0x2a0
[    1.679508]  [<ffffffffae1867c3>] mount_root+0x53/0x56
[    1.680619]  [<ffffffffae186902>] prepare_namespace+0x13c/0x174
[    1.681535]  [<ffffffffae1863df>] kernel_init_freeable+0x1f8/0x21f
[    1.684161]  [<ffffffffae185b1f>] ? initcall_blacklist+0xb0/0xb0
[    1.685266]  [<ffffffffadb52220>] ? rest_init+0x80/0x80
[    1.686058]  [<ffffffffadb5222e>] kernel_init+0xe/0x100
[    1.686884]  [<ffffffffadb76c37>] ret_from_fork_nospec_begin+0x21/0x21
[    1.688183]  [<ffffffffadb52220>] ? rest_init+0x80/0x80
[    1.690932] Kernel Offset: 0x2c400000 from 0xffffffff81000000 (relocation range: 0xffffffff80000000-0xffffffffbfffffff)

I can mount the disk in another instance and read the data. It's only 70% full. Launching the disk in a larger instance produces the same result.

Any suggestions??? Thank you.


I faced the same issue. I was using Centos 7.

I Found that my latest kernel installed crashed causing this.

I managed to login to it with old kernel.

to list the kernel:

#rpm -q kernel

To remove the latest kernel:

#yum remove <kernel-3.10.0-1062.4.3.el7.x86_64> (replace with your latest kernel)

Rebooted machine, installed the new kernel again, all good.


AFASIK in our case when we did the latest yum update we lost network connectivity part way through and this caused the problem.


This issue can occurd when your /boot partition is full or you are missing the initramfs for that kernel.

Option #1 Choose another kernel from the GRUB menu under Advanced options for Ubuntu and run

sudo update-initramfs -u -k version

This generates the initrd for version (replace version with the kernel version string such as 4.15.0-36-generic) then

sudo update-grub

Option #2 Choose another kernel from the GRUB menu under Advanced options for Ubuntu and remove old linux kernels

sudo apt-get autoremove
  • What is all this stuff about Ubuntu? He is not using Ubuntu. – Michael Hampton Sep 3 '19 at 15:58
  • GRUB would be great, but i believe the GRUB menu is not accessible in Google Compute Engine-provided CentOS images. – russix Sep 3 '19 at 19:56

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.