Não é possível usar VM clonada, OpenSUSE, VirtualBox

6

Eu clonei uma VM e agora, durante a inicialização, vejo uma mensagem:

Trying manual resume from /dev/sda1
Invoking userspace resume from /dev/sda1
resume: libgcrypt version: 1.5.0
Trying manual resume from /dev/sda1
invoking in-kernel resume from /dev/sda1
Waiting for device /dev/disk/by-id/ata-VBOX_HARDDISK_.....-part2 to appear: ...
Could not find /dev/disk/...-part2
Want me to fall back to /dev/disk/...-part2 (Y/n)

Se eu pressionar 'Y', ele tenta inicializar novamente com falha e sai para / bin / sh. Se eu pressionar 'n', sai para / bin / sh imediatamente.

Li uma solução aqui: link mas não entendo como acessar arquivos no disco para editar /etc/fstab e /boot/grub/menu.lst ?

    
por ivkremer 04.06.2012 / 11:20

5 respostas

8

Consegui fazer meu sistema inicializar fazendo o seguinte:

1) Anote o (s) dispositivo (s) que o sistema não consegue encontrar.

2) Responda "n" a essa pergunta. Isso deve levá-lo a um prompt de comando.

3) Execute este comando: cd /dev/disk/by-id

4) Execute este comando: ls

5) Renomeie todos os arquivos nesta pasta substituindo o nome atual pelo nome do dispositivo anotado na etapa 1. Ex. mv ata-VBOX_OLDNAME....-part2 ata-VBOX_HARDDISK....-part2

6) Depois de ter concluído este tipo, este comando: exit

7) O sistema deve inicializar normalmente.

Ainda estou trabalhando em como isso acontece com o OpenSUSE 11.4.

    
por 25.10.2012 / 21:29
3

Esse problema é causado porque o SUSE, por padrão, configura o Grub para localizar discos pelo nome, e não pelo rótulo ou pelo caminho. Ao criar uma VM a partir de um dispositivo, o VirtualBox cria um novo disco com um novo nome e, em seguida, o Grub não consegue encontrar o disco de inicialização. Consegui corrigir isso permanentemente por:

  1. Adicione o disco como uma unidade secundária a outra máquina que possa montar o sistema de arquivos. Montei o meu para / media / hd2.

  2. Edite /media/hd2/boot/grub/device.map e substitua o caminho conhecido pelo disco rígido /dev/disk/by-name/ata-VBOX.... com o caminho por caminho /dev/disk/by-path/pci-0000:00:0d.0-scsi-0:0:0:0 .

  3. Edite /media/hd2/boot/grub/menu.lst e substitua os caminhos por nome pelos caminhos por caminho. Para o meu, acabei substituindo todos os caminhos da parte 1 por /dev/disk/by-path/pci-0000:00:0d.0-scsi-0:0:0:0-part1 e os caminhos da parte 2 por /dev/disk/by-path/pci-0000:00:0d.0-scsi-0:0:0:0-part2 .

Os caminhos que usei especificam o primeiro disco rígido. Se você quiser inicializar um disco rígido diferente (ou um tipo de disco diferente), será necessário descobrir como o SUSE mapeia o caminho. Eu descobri que o SUSE montará um segundo disco rígido como pci-0000:00:0d.0-scsi-1:0:0:0 .

Especificar o disco rígido pelo caminho pode não ser ideal em alguns casos, mas funcionou perfeitamente para a solução rápida que eu estava procurando.

    
por 15.05.2014 / 16:20
1

Eu recebi este erro e resolvi substituindo o ID antigo do disco pelo novo no etc / fstab e no boot / grub / menu.lst

  1. Pressione 'n' na questão do fallback.
  2. Obtenha um novo ID executando hdparm -i /dev/sda
  3. Renomeie todos os discos conforme expresso na solução aceita e inicialize seu convidado.
  4. Abra o terminal como root e vi etc/fstab e substitua o ID antigo pelo novo, sempre que ele aparecer. Salve e feche.
  5. vi boot/grub/menu.lst e substitua o ID antigo pelo novo, sempre que ele aparecer. Salve e feche.
  6. Reinicialize.

A solução aceita funciona apenas uma vez, enquanto esta é uma correção permanente . Espero que ajude!

    
por 29.08.2016 / 21:43
0

Tive o mesmo problema ao mudar do vshpere 5.1 para o ssd.

O problema ocorre porque a máquina virtual usa o driver Pata e o initrd não tem o driver para montar a unidade física. Novel FAQ teve a resposta que você precisa para montar a unidade usando um disco de recuperação, montar o dispositivo em / mnt, em seguida, montar os diretórios sys proc e dev.

Chroot into mnt, então você pode recriar o initrd. Isso reconstruirá o sistema initrd e incluirá os drivers necessários para montar a unidade física, em vez da unidade virtual na instalação virtual. Veja o link abaixo para detalhes. No meu caso, eu instalei uma imagem do suse studio e depois a transferi para uma unidade real. Depois de fazê-lo funcionar lembre-se de remover as ferramentas vmware para parar o erro de tempo de inicialização. (yast - software - pesquisa vm.

link

    
por 24.08.2014 / 10:30
0

Eu resolvi esse problema com uma mistura das outras soluções.

Apenas para inicializar o sistema eu fiz isso:

  • quando você receber a mensagem de erro de inicialização relatada, anote o ID da partição solicitado pelo procedimento de inicialização (digamos ID1) e digite n
  • cd /dev/disks
  • ls -l para ver quais são os IDs atuais nos nomes dos links para os discos e partições (digamos, ID2)
  • crie uma cópia de cada link aqui renomeando a cópia com o ID exigido acima:

    mv ID2 ID1
    mv ID2-part1 ID1-part1
    ...
    

    por exemplo,

    mv scsi-12345676890abcdefgh0987654321 scsi-0987654321hgfedcba1234567890
    mv scsi-12345676890abcdefgh0987654321-part1 scsi-0987654321hgfedcba1234567890-part1
    ...
    
  • exit

O sistema inicializará.

Agora você pode alterar a configuração para ter certeza de que não encontrará esse problema novamente :

  • abra um terminal e insira uma sessão raiz com sudo su
  • vi /etc/fstab
  • substitua todas as referências a discos e partições por id ( /dev/disks/by-id/... ) por uma referência a /dev/... (por exemplo, /dev/sda , /dev/sda1 ...)
  • vi /boot/grub/menu.lst
  • faça o mesmo neste arquivo
por 29.09.2016 / 15:49