Inicializa o Linux a partir do DOS (com loadlin.exe etc)

1

Eu tenho usado a versão mais recente do loadlin.exe (versão 1.6e). Ele funciona em algumas máquinas, mas em outros eu recebo "no place after kernel for initrd". O kernel tem cerca de 5MB de tamanho (não-modular) e a minha imagem initrd (descompactada) tem cerca de 8MB. Uma rota que eu poderia fazer é ativar o suporte a módulos e descarregar parte do peso do kernel na imagem initrd, mas não tenho certeza de que isso irá corrigir o problema. Existem alternativas para loadlin.exe que são capazes de carregar o Linux a partir de uma sessão do DOS inicializada? Eu basicamente tenho uma série de ferramentas do DOS que eu gostaria de executar uma após a outra e depois inicializar no Linux, o qual loadlin.exe parece estar funcionando muito bem, exceto em algumas máquinas.

    
por dreamlax 09.07.2012 / 00:31

3 respostas

3

Se ainda é interessante:

Tente iniciar o Linux com o comando linld.com . Ele pode lidar com grandes imagens do kernel (> 4 MB) e um grande initrd (> 10 MB).

No meu sistema, eu uso o seguinte comando:

c:\loadlin\mandrake\linld image=C:\loadlin\mandrake\linuz263.889 initrd=c:\loadlin\mandrake\init-263.889 "cl=root=/dev/sdc14 ro video=1024x768"

linld.com pode ser baixado de aqui .

    
por 17.05.2015 / 13:23
1

No final, tive que reduzir o tamanho do kernel. Quando você executa loadlin.exe sem nenhum argumento, ele imprime a quantidade de memória disponível (essa é a quantidade de memória que o DOS vê e não a quantidade de memória instalada na máquina). Em algumas máquinas, apenas 16MB estão disponíveis e, em outros, 64MB estão disponíveis. Eu acho que poderia ser qualquer valor realmente.

loadlin.exe assume que o kernel tem uma taxa de compactação de 1: 2 e, como o Linux está carregado no endereço 0x00100000 (1MB), é necessário garantir que:

kernel_size * 2 + initrd_size < available_ram - 0x00100000

Se você tem um kernel modular, descarregar módulos do kernel no initrd em vez de compilá-los no kernel pode ajudar. Escolher uma compressão de kernel diferente também pode ajudar.

    
por 09.07.2012 / 22:37
0

Experimente o Syslinux em vez disso, ele tende a funcionar melhor para mim.

    
por 09.07.2012 / 01:06