Você está perdendo o initramfs para esse kernel. Escolha outro kernel no menu grub, ou execute update-initramfs -u -k version
para gerar o initrd para versão e então update-grub
.
Ao tentar atualizar de 10.10 para 11.04, todos pareciam ir bem até o reinício. Esta mensagem de erro é o que aparece:
Kernel Panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
Como consertamos isso?
Você está perdendo o initramfs para esse kernel. Escolha outro kernel no menu grub, ou execute update-initramfs -u -k version
para gerar o initrd para versão e então update-grub
.
Comece com um livecd, abra um terminal
sudo fdisk -l
sudo mount /dev/sdax /mnt
sudo mount --bind /dev /mnt/dev
sudo mount --bind /dev/pts /mnt/dev/pts
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt
e agora você pode fazer update-initramfs
e update-grub sem erros.
update-initramfs -u -k 2.6.38-8-generic (or your version)
Se você não conhece sua versão. Use:
dpkg --list | grep linux-image
E atualize o Grub.
update-grub2
Reinicialize seu sistema.
Na minha situação o problema era que /boot
estava com 100% de capacidade, então as últimas 2 atualizações do kernel não foram completadas com sucesso, portanto na reinicialização quando o GRUB2 selecionou o último Kernel, ele falhou.
Resolvi o problema inicializando o kernel mais antigo instalado e removendo alguns kernels não utilizados usando o aptitude. Ao usar o aptitude , após a desinstalação, o dpkg tentava automaticamente configurar os pacotes quebrados, e desta vez teve sucesso.
Caso isso aconteça após uma atualização do kernel abortada (por exemplo, travamento do sistema enquanto aptitude safe-upgrade
),
dpkg --configure -a
. Isso completará a atualização, incluindo a configuração das configurações de inicialização, conforme psusi explica .
Além das instruções de Tomeu, antes do chroot eu precisava:
sudo mount --bind /dev /mnt/dev
Além disso, depois do chroot:
cp -r /usr/lib/i386-linux-gnu/pango /usr/lib/
( Tenho isto aqui. )
Você também pode inicializar o servidor no modo de recuperação e reinstalar apenas o grub
link
Eu peguei este problema porque minha partição / boot estava cheia, então minhas atualizações do kernel falharam. Consegui consertar isso inicializando a partir de um kernel antigo no menu GRUB.
Quando consegui inicializar, comecei a remover kernels antigos, mas consegui resolver alguns problemas de dependência, então primeiro tive que desinstalar o pacote linux-server
apt-get remove linux-server
apt-get update
apt-get -f install
apt-get upgrade
Então eu reiniciei e tudo estava funcionando bem!
As mensagens de inicialização do kernel informam quais discos você pode usar
Por exemplo, se na minha configuração da máquina virtual do Linux 4.17 eu substituo o corrija root=/dev/vda
com root=/dev/vdb
a última mensagem é:
---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)-
No entanto , algumas linhas acima, mostra mensagens do tipo:
VFS: Cannot open root device "vdb" or unknown-block(0,0): error -6
Please append a correct "root=" boot option; here are the available partitions:
fe00 524288 vda
driver: virtio_blk
que basicamente me diz que vdb
não foi encontrado, mas que existe um /dev/vda
que pode ser lido devido ao driver virtio_blk
( CONFIG_VIRTIO_BLK=y
).