Se você chegar até aqui, significa que o carregador de inicialização carregou o kernel e initrd / initramfs com sucesso, mas o kernel não está encontrando o dispositivo root. Então você deve poder inicializar passando algo como root=/dev/sda42
na linha de comando do kernel.
No prompt do Grub, edite a entrada para o Linux e procure a linha que começa com linux
. Nessa linha, deve haver um parâmetro que se pareça com root=/dev/sda42
. Altere para root=/dev/sdb42
, ou seja, uma unidade diferente. A letra atual pode não ser a
, e a letra que funciona pode não ser b
, mas se você tiver duas unidades, provavelmente só precisará trocar sdb
para sda
ou vice-versa.
A ordem das letras de unidade no Linux não está relacionada (ou pelo menos não está diretamente relacionada) com a ordem no BIOS, no Grub ou no Windows (depende da ordem em que os drivers são carregados). (Existem maneiras de contornar isso, mas eles não vão ajudá-lo agora).
Ao inicializar, você pode obter erros se as entradas em /etc/fstab
não corresponderem aos nomes dos dispositivos de disco atuais. Se você não for capaz de acessar um console de reparo, reinicialize e (além do root=
change) adicione init=/bin/sh
para soltar diretamente em um shell e, em seguida, execute
mount /proc
mount -o remount,rw /
vi /etc/fstab # or whatever your favorite editor is