Como é que “make install” só pode ser feito na minha máquina alvo?

0

Recebi um kernel personalizado de um cliente e pedi para construí-lo usando os seguintes comandos:

make
sudo su
make modules_install
make install

Isso tem que ser feito na minha máquina host, porque a máquina de destino está muito lenta. Eu chroot'ed no disco rígido do alvo (HDD externo), e os três primeiros comandos foram bem, mas a etapa final "make install" não pode funcionar. Eu recebo esta mensagem:

grub-probe: error: cannot find a device for / (is /dev mounted?)

Eu o consertei voltando à máquina de destino e concluindo o último comando lá. Mas alguém poderia gentilmente me explicar o que a mensagem de erro significa, e por que isso não pode ser feito na minha máquina desktop?

    
por Joe Sewell 31.10.2012 / 10:35

2 respostas

1

Para make install , ele tenta atualizar o carregador de inicialização do grub. Para isso, deve encontrar /boot e /dev . Desde que você fez isso em um ambiente chroot'ed, você não tem /boot e /dev neste diretório (no disco rígido externo). Daí a mensagem de erro e a falha na instalação.

    
por 31.10.2012 / 15:28
0

Executar make install em um Kernel Linux fará com que seu gerenciador de inicialização, neste caso, o Grub, seja atualizado com a localização da última imagem do kernel.

Agora, como você estava em um ambiente chroot, make não conseguiu encontrar os arquivos de inicialização necessários, que residem em /boot e /dev .

Por segurança, você deve montar /dev , /boot e /proc em seu ambiente chroot antes de executar make install

    
por 01.11.2012 / 16:10

Tags