Como fazer com que o Windows 7 instale a mídia flash USB do Linux?

104

Eu tenho:

  • Imagem ISO da mídia de instalação do Windows 7
  • Unidade flash USB de 4 GB
  • sem drive de DVD
  • Linux instalado
por Ian Kelling 10.05.2009 / 00:50

4 respostas

180

OK, depois de tentar sem sucesso todos os métodos mencionados aqui, eu finalmente consegui trabalhar. Basicamente, a etapa que faltava era escrever um setor de inicialização adequado para o pendrive, que pode ser feito no Linux com ms-sys ou lilo -M . Isso funciona com a versão comercial do Windows 7.

Aqui está o resumo completo novamente:

Instale ms-sys - se ele não estiver em seus repositórios, obtenha aqui . Ou, como alternativa, verifique se o lilo está instalado (mas não execute a etapa liloconfig na sua caixa local se, por exemplo, o Grub estiver instalado lá!)

Verifique a qual dispositivo sua mídia USB está atribuída - aqui, vamos supor que é /dev/sdb . Exclua todas as partições, crie uma nova, ocupe todo o espaço, defina o tipo como NTFS (7) e lembre-se de defini-la como inicializável:

# cfdisk /dev/sdb ou fdisk /dev/sdb (partição tipo 7 e inicializável sinalizador

Crie um sistema de arquivos NTFS:

# mkfs.ntfs -f /dev/sdb1

Escreva o Windows 7 MBR no stick USB (também funciona para o windows 8), várias opções aqui:

  1. # ms-sys -7 /dev/sdb
  2. ou (por exemplo, em instalações mais recentes do Ubuntu) sudo lilo -M /dev/sdb mbr ( info )
  3. ou (se o syslinux estiver instalado), você pode executar sudo dd if=/usr/lib/syslinux/mbr/mbr.bin of=/dev/sdb

Montar mídia ISO e USB:

# mount -o loop win7.iso /mnt/iso
# mount /dev/sdb1 /mnt/usb

Copie todos os arquivos:

# cp -r /mnt/iso/* /mnt/usb/ ... ou use o navegador de arquivos GUI padrão do seu sistema

Chame sync para ter certeza de que todos os arquivos foram gravados.

Abra o gparted, selecione a unidade USB, clique com o botão direito do mouse no sistema de arquivos e clique em "Gerenciar sinalizadores". Marque a caixa de seleção de inicialização e feche.

... e pronto.

Depois de tudo isso, você provavelmente vai querer fazer backup de sua mídia USB para outras instalações e se livrar do arquivo ISO ... Basta usar o dd: # dd if=/dev/sdb of=win7.img

Note que isto copia todo o dispositivo! - que geralmente é (muito) maior que os arquivos copiados para ele. Então, em vez disso, proponho

# dd count=[(size of the ISO file in MB plus some extra MB for boot block) divided by default dd blocksize] if=/dev/sdb of=win7.img

Assim, por exemplo, com 8 M de bytes extras:

# dd count=$((('stat -c '%s' win7.iso' + 8*1024*1024) / 512)) if=/dev/sdb of=win7.img status=progress

Como sempre, verifique os nomes dos dispositivos com muito cuidado ao trabalhar com dd .

O método de criação de um USB inicializável apresentado acima também funciona com o instalador do Win10 iso. Eu tentei executar Ubuntu 16.04 copiando Win10_1703_SingleLang_English_x64.iso (tamanho 4.241.291.264 bytes) em um 8 GB USB-stick - em não-UEFI [não-seguro] apenas a inicialização. Após a execução, os relatórios do dd:         8300156 + 0 registros em         8300156 + 0 registra         4249679872 bytes (4,2 GB, 4,0 GiB) copiados, 412,807 s, 10,3 MB / s

Inverte se / da próxima vez que você quiser colocar o instalador do Windows 7 em USB.

    
por 04.08.2010 / 17:38
13

Você pode fazer isso com o dd, se o seu PC suportar UEFI e, por extensão, discos GPT.

Abra um terminal, você precisará encontrar o dispositivo que é seu pendrive. Se você tiver a unidade montada, você pode encontrar o nome do dispositivo, digitando "mount" e olhando para a sua entrada. Algo como o seguinte:

/dev/sdb1 on /media/USBDISK type vfat (rw,nosuid,nodev,uhelper=hal,uid=1000,utf8,shortname=mixed)

Neste caso, a primeira partição de / dev / sdb é montada em / media / USBDISK. Abra um shell de root e desmonte a unidade.

umount /dev/sdb1

Vá para o diretório em que seu ISO está armazenado em um shell raiz e digite o seguinte: (Substitua windows7.iso pelo que a iso é chamada e / dev / sdb com o id do dispositivo do seu usb stick). / p>

dd if=windows7.iso of=/dev/sdb

Se a sua placa-mãe suportar a inicialização de um pendrive, ela poderá ser inicializada. Isso fará com que o instalador no pendrive não seja o próprio SO.

    
por 11.05.2009 / 16:28
5

A sugestão da PCambell é boa, mas você também vai querer limpar o MBR, o equivalente do Linux está abaixo

Eu tentei isso e funcionou (não sei por que o método dd falhou, mas parece que a partição tinha que ser ntfs?):

  • descobrir qual / dev / device é o seu pen drive usb e desmontá-lo
  • limpe o MBR: dd se = / dev / zero de = / dev / device bs = 446 count = 1
  • executar fdisk / dev / device
  • remova todas as partições e crie uma partição primária, torne-a inicializável e salve as alterações
  • execute mkfs.ntfs / dev / device1 (partição 1)
  • copie todo o conteúdo da instalação do Windows para a partição que você criou
por 27.03.2010 / 09:24
-4

Em vez de

dd if=windows7.iso of=/dev/sdb

você escreve como root ,

dd if=windows7.iso of=/dev/sdb1 

(adicione 1 no final ou o que quer que o seu drive USB seja colocado).

    
por 22.12.2010 / 19:20