Instalando grub e xorriso no Ubuntu no Windows

1

Eu preciso usar o grub-mkrescue para gerar alguns ISOs. Meu principal ambiente de trabalho está em uma máquina com Windows 10. Eu uso o susbsystem Linux para várias tarefas já.

Consegui instalar o grub sem problemas, mas preciso do xorriso para poder usar o grub-mkrescue. Quando eu faço sudo apt-get install xorriso , recebo o seguinte erro:

Reading package lists... Done Building dependency tree Reading state information... Done Package xorriso is not available, but is referred to by another package. This may mean that the package is missing, has been obsoleted, or is only available from another source

E: Package 'xorriso' has no installation candidate

Isso é suportado?

    
por user3804799 12.10.2016 / 17:23

1 resposta

0

Construa sua versão vinculada estaticamente a partir do código-fonte.

Faça o download do link para um diretório onde você quer construir xorriso

tar xzf xorriso-1.4.6.tar.gz
cd xorriso-1.4.6
touch xorriso/*.info
./configure && make

Suponho que você precisa de pacotes build-essential e tar .

O comando touch xorriso/*.info evita a necessidade do programa makeinfo do pacote texinfo que pode surgir em casos raros devido a uma infeliz seqüência de arquivos em xorriso-1.4.6.tar.gz . (Para sintomas de falha, consulte o comentário por user3804799, 12 de outubro às 18:56. Isso não pode acontecer em Debian real ou Ubuntu, porque há tar sem opção -m restaura os timestamps do arquivo tar.)

O sucesso deve render um binário que seja executado por

xorriso/xorriso -version

deve dizer algo como

GNU xorriso 1.4.6 : RockRidge filesystem manipulator, libburnia project.
...
There is NO WARRANTY, to the extent permitted by law.

Se sim, então você pode usar o caminho completo para o binário executável como argumento para grub-mkrescue option --xorriso .

grub-mkrescue -o grub.iso --xorriso=/...path.../xorriso-1.4.6/xorriso/xorriso prepared_directory

Supõe-se que você pode mover o binário executável para qualquer outro local de armazenamento, se isso for mais conveniente para você.

Enquanto o problema com a construção do GNU xorriso no subsistema Win10-Ubuntu não foi diagnosticado, eu adicionei as seguintes instruções sobre a construção um binário no real Ubuntu sem as dependências do kernel Linux que provavelmente manteve xorriso fora do repositório Win10-Ubuntu.

Se xorriso/xorriso já foi criado na árvore xorriso-1.4.6 , remova primeiro todos os resultados de compilação:

make clean

Aplicar uma configuração que não se refere a recursos específicos do Linux e compilar:

export CFLAGS="-DLibburn_use_sg_dummY"
./configure --disable-libacl --disable-xattr --disable-zlib --disable-libreadline
make

O arquivo resultante xorriso/xorriso deve então ser copiado para o alcance de o subsistema Win10-Ubuntu. Experimente por /...path.../xorriso -version se está disposta a começar (ou seja, se encontra as bibliotecas necessárias).

xorriso é compilado e executado no Win10-Ubuntu com o "Adaptador GNU / Linux SG_IO sg-linux". Mas ioctl (SG_IO) ou acesso a unidades ópticas parece não implementado. Nenhuma unidade é detectada.
Portanto, parece melhor causar por -DLibburn_use_sg_dummY compilação com "X / Open adaptador sg-dummy", que não depende de detalhes específicos do Linux e não não tente operar unidades ópticas.

    
por 12.10.2016 / 18:39