Como criar um stick USB inicializável no Windows usando o Ubuntu?


446

Gostaria de criar um dispositivo USB inicializável no Windows 8, mas não tenho uma máquina Windows comigo.

Então, como faço isso usando o Ubuntu?


31
Psicofrenia "O UNetbootin permite criar unidades Live USB inicializáveis ​​para Ubuntu, Fedora e outras distribuições Linux sem gravar um CD.", E eu já tentei usá-lo e descobri que o UNetbootin realmente não pode ser usado para criar pendrives bootáveis ​​no Windows .
Zignd

Você já tentou seguir os tutoriais do Windows 8 sobre como gravar ticks USB e usar o Wine para criar um desses softwares indicados para execução?
Psicofrenia


1
@MrSeed Eu tentei este tutorial e também baixei a versão mais antiga do UNetbootin, mas o problema é que a versão mais antiga depende de uma biblioteca que não está disponível para o Ubuntu 13.04 porque é muito antiga, a propósito, a versão mais recente do biblioteca está disponível, mas o aplicativo ainda não funciona com ele instalado.
Zignd

2
O UNetbootin sempre gera qualquer erro #
br0000

Respostas:


299

O WinUSB é antigo, obsoleto e desatualizado. Isso pode causar problemas em sistemas mais recentes. Você deve usar o WineUSB ou outro software no lugar do WinUSB.

Esta resposta é, no entanto, deixada aqui como está para fins históricos.

Crie um USB inicializável do Windows (Vista e superior) a partir do Ubuntu através do software WinUSB .

Ubuntu 12.04 a 15.04

Execute os comandos abaixo no terminal para instalar o WinUSB a partir de um PPA ,

sudo add-apt-repository ppa:colingille/freshlight
sudo apt-get update
sudo apt-get install winusb

Captura de tela do WinUSB

Aviso para o Ubuntu EFI:

instalar o WinUSB no Ubuntu carregado pelo EFI desinstalará os pacotes grub-efi para instalar os pacotes grub-pc. Isso fará com que seu sistema não seja inicializado se você não reinstalar manualmente o pacote grub-efi antes de reiniciar.

Para fazer a reinstalação manual, faça:

sudo update-grub
sudo grub-install /dev/sda
sudo update-grub
sudo reboot

1
Algo como sudo add-apt-repository "deb http://ppa.launchpad.net/colingille/freshlight/ubuntu saucy main"seria melhor para o 14.04? apt-add-repositorynão é apenas para PPA de ...
Wilf

6
@empedokles 1. Se você deseja fazer um USB com Windows XP, esqueça-o. Não funciona com o WinUSB. 2. Para corrigir o erro 512, leia isso .
Cornelius

2
@ThoVo leia esta resposta: askubuntu.com/a/539803/269282
Cornelius

2
Não funcionará em 15.10, 16.04, 16.10
rancho

6
Esta publicação está desatualizada, o WinUsb foi descontinuado, mas há o WoeUsb que está bem conservado . Também dê uma olhada nessas respostas (que precisam de mais votos): askubuntu.com/a/928874/256359 askubuntu.com/a/489556/256359
davcri

209

Qualquer versão do Ubuntu

até outras distros do Linux, desde que o GParted e o GRUB estejam instalados.

Instale GParted, GRUB, 7z e NTFS no Ubuntu com:

sudo apt-get install gparted grub-pc-bin p7zip-full ntfs-3g

Para BIOS: esquema de partição MBR

  1. Usando GParted, reescreva a tabela de partição da unidade USB como msdos , formate-a como NTFS e, em seguida, "Gerenciar sinalizadores" e adicione o bootsinalizador.
  2. No GParted, clique com o botão direito do mouse na partição USB e selecione Informações . Copie o UUID em algum lugar, conforme necessário.
  3. Monte seu ISO ou DVD do Windows e copie todos os seus arquivos para a unidade USB.
  4. Vá para a unidade USB e, se a pasta nomeada boottiver caracteres maiúsculos, deixe todos em letras minúsculas renomeando-os.
  5. Instale o GRUB na unidade USB.

    No comando abaixo, substitua /dev/sdXpelo dispositivo (por exemplo /dev/sdb, não /dev/sdb1 ) e substitua <USB_mount_folder>pela pasta em que você montou a unidade USB (que pode ser como /media/<username>/<UUID>).

    sudo grub-install --target=i386-pc --boot-directory="/<USB_mount_folder>/boot" /dev/sdX
    
  6. Crie um arquivo de configuração do GRUB na pasta da unidade USB boot/grub/com o nome grub.cfg.

    Escreva isso no arquivo, substituindo <UUID_from_step_2>pelo UUID que você copiou na etapa 2.

    echo "If you see this, you have successfully booted from USB :)"
    insmod ntfs
    insmod search_fs_uuid
    search --no-floppy --fs-uuid <UUID_from_step_2> --set root
    ntldr /bootmgr
    boot
    
  7. Desmonte a unidade USB.

  8. Agora, para usá-lo, reinicie o PC e inicialize a partir da unidade USB.

Para UEFI: esquema de partição GPT *

* Versões / edições mais antigas do Windows podem não ser adequadamente suportadas ou nem suportadas. Sugiro ler a página de firmware UEFI da Microsoft .

  1. O uso do GParted reescreve a tabela de partição da unidade USB como GPT .
  2. Crie uma nova partição primária e formate-a como FAT32 .
  3. Copie todos os arquivos do Windows (de ISO ou DVD montado) para a unidade USB.
  4. Procure em USB na efi/boot/pasta. Se houver um arquivo bootx64.efi( bootia32.efi), você está pronto. O USB é inicializável. Pule para a etapa 7.
  5. Caso contrário, abra sources/install.wimcom o Archive Manager (você deve ter 7zinstalado) e navegue até ./1/Windows/Boot/EFI/. A partir daqui, extraia em bootmgfw.efialgum lugar, renomeie-o para bootx64.efi(ou bootia32.efipara o SO de 32 bits suportado [?]) E coloque-o na efi/boot/pasta USB .
  6. Se você estiver bootusando um USB do Windows 7, copie a pasta de efi/microsoft/para a efipasta.
  7. Não se esqueça de desmontar (remover com segurança) a unidade USB. Selecione o carregador EFI adequado no seu BIOS.

Fonte: Meu post sobre isso pode ser encontrado em Faça um USB inicializável do Windows a partir do Linux .

Nota

Quando usado corretamente com um sistema operacional de destino compatível, ambos os métodos devem fornecer uma unidade USB inicializável. No entanto, isso não garante a instalação bem-sucedida do Windows.


2
@GuiImamura clique com o botão direito do mouse na partição no GParted, selecione Manage Flags e marque a caixa de seleção ao lado de inicializar .
Cornelius

8
O método EFI é a maneira de fazer isso no Win10. E você pode pular com segurança as etapas de 4 a 6 atualmente.
Ivan Anishchuk 21/03

2
Depois de tentar muitas outras coisas, este é o único que funcionou para mim. Obrigado.
Becko

3
Posso confirmar que o método UEFI / GPT funciona sem passos 4-6 com o Windows 10.
Josch

2
Se você encontrar algum erro, verifique a postagem do blog (vinculada na parte inferior da resposta) para obter informações detalhadas. Soluções para alguns casos de erro podem ser úteis.
Teo

100

Ubuntu 14.04 e posterior

O WinUSB é uma ferramenta para criar uma unidade flash USB inicializável usada para instalar o Windows. A inicialização UEFI nativa é suportada no Windows 7 e imagens posteriores. O WoeUSB é um fork atualizado do projeto WinUSB.

Alguns instaladores de terceiros apresentam imagens de instalação do Windows ( /sources/install.wim) maiores que 4 GB, impossibilitando o FAT32 como sistema de arquivos de destino. O suporte ao sistema de arquivos NTFS foi adicionado ao WoeUSB 3.0.0 e posterior.

Para instalar o WoeUSB (fork atualizado do projeto WinUSB) no Ubuntu 14.04 / 16.04 / 17.10 / 18.04 / 18.10 / 19.04 :

sudo add-apt-repository ppa:nilarimogard/webupd8 
sudo apt update  
sudo apt install woeusb

Para instalar o WinUSB no Ubuntu 14.04 / 16.04 / 16.10 / 17.04:

sudo add-apt-repository ppa:nilarimogard/webupd8 
sudo apt update  
sudo apt install winusb

Isso instalará a interface gráfica do WinUSB e a ferramenta de linha de comando do WinUSB. O WinUSB e o WoeUSB suportam UEFI e BIOS para unidades flash USB FAT32 / NTFS / ExFAT.

A GUI do WinUSB é muito mais fácil de usar do que a ferramenta de linha de comando do WinUSB. Para instalar uma partição ISO do Windows em NTFS e editar o MBR (Registro de Inicialização Mestre) do dispositivo usando a ferramenta de linha de comando WinUSB e WoeUSB, execute o seguinte comando: Clique no botão de rádio à esquerda de onde diz De uma imagem de disco (iso ) , navegue até o local do arquivo .iso do Windows, em Dispositivo de destino, selecione uma unidade flash USB, abra o aplicativo Disks e verifique se o nome do dispositivo em Discos corresponde ao dispositivo de destino no WinUSB (deve ser algo como / dev / sd X onde X é uma letra do alfabeto) e clique no botão Instalar para instalar e criar uma mídia de instalação inicializável do Windows na unidade flash USB.

insira a descrição da imagem aqui

A instalação do WinUSB no Ubuntu carregado por EFI desinstalará os pacotes grub-efi para instalar os pacotes grub-pc; portanto, antes de reiniciar, execute os seguintes comandos para reparar o grub:

sudo update-grub
sudo grub-install / dev / sd X # substitua X pela letra da partição em que o grub está localizado
sudo update-grub
reinicialização do sudo

1
Ele funciona (usado a versão de 64 bits)
Pavak Paul

2
Ou simplesmente usar dd como todos os outros ...
ChangosMuertos

1
Eu tive que comprar um pen drive de alta qualidade para fazê-lo funcionar. Eu imagino que isso não é um problema específico para o WinUSB.
Seth

$ sudo add-apt-repository ppa: nilarimogard / webupd8 Não é possível adicionar PPA: 'ppa: ~ nilarimogard / ubuntu / webupd8'. ERRO: O usuário ou a equipe '~ nilarimogard' não existe.
Christophe Ferreboeuf

Funciona no meu computador. Você verá uma mensagem que diz: More info: https://launchpad.net/~nilarimogard/+archive/ubuntu/webupd8 Press [ENTER] to continue or ctrl-c to cancel adding itDepois de ver esta mensagem, pressione a tecla Enter para continuar. Talvez você tenha um problema de conectividade.
Karel

52

Escrevendo ISOs com o WoeUSB (WinUSB fork)

Algumas respostas estão desatualizadas, pois o WinUSB não está mais funcionando. Mas há um garfo de trabalho chamado WoeUSB .

Github: https://github.com/slacka/WoeUSB

Instalação

Ele não desinstala mais o grub-efi!

☞ Ubuntu / Debian

sudo add-apt-repository ppa:nilarimogard/webupd8
sudo apt update
sudo apt install woeusb

☞ Arco

pacaur -S woeusb-git

☞ Fedora

dnf install -y WoeUSB

☞ OpenSUSE

zypper install WoeUSB

Escrevendo o ISO

Após a instalação, escreva o ISO do Windows com o seguinte comando:

sudo woeusb --device /path/to/your.iso /dev/sdX

(Substitua a Xem /dev/sdXcom a letra correspondente ao seu USB. Você pode descobrir qual é o correto nos discos do programa.)


2
Funcionou perfeitamente. No Achlinuxpacaur -S woeusb-git
dvim

1
WoeUSB é perfeito! E, diferentemente do WinUSB, ele não requer o kit da Web inteiro como uma dependência (apenas a compilação do kit da Web leva algumas horas no meu PC de mesa).
Davcri 31/10

2
Em Error: Target device is currently busyquestões, use sudo umount /dev/sdb(ou o respectivo dispositivo). ( "Ejetar" do stick USB é não . Ajudar, uma vez que não deve ser completamente desaparecido, apenas a partição desmontada Caso contrário, o erro será: probing initialization failed: No medium found)
Frank Nocke

2
Também trabalhou no Fedora 28 com uma iso Win10_1803_x64. Para instalar:dnf install -y WoeUSB
eddygeek

6
Se você vir um erro "O arquivo na imagem de origem excedeu a Limitação do tamanho de arquivo único do FAT32 Filesystem 4GiB", será necessário adicionar --tgt-fs ntfsà linha de comando.
Adam Dingle

49

A atual cadeia de inicialização UNetbootin não é compatível com UEFI e computadores que vêm com uma cópia pré-instalada do Windows 8

Você pode usar dd, enquanto toma cuidado com o que está fazendo:

sudo dd if=/path/to/iso/windows.iso of=/dev/sdX bs=4M; sync
  • Substitua sdXpela unidade que você deseja usar (no meu caso sdg):
  • Isso requer que sua placa-mãe possa inicializar a partir do CD-ROM-USB.

Se você ainda deseja usar o UNetbootin, existem 2 (3) itens que você precisará:

  1. Unetbootin
  2. Gparted
  3. Acesso à Internet para instalar todos os itens acima, a imagem ISO do Windows e um pendrive com mais de 4 GB.

Então, primeiro, faça backup de todo o conteúdo do seu pendrive . Feito isso, instale o gparted e o unetbootin:

sudo apt-get install gparted unetbootin

Agora, procure gparted no Dash ou digite gpartedo terminal. Selecione seu pendrive na lista suspensa à direita. No meu caso, o /dev/sdgseu pode ser diferente. Remova todas as partições e crie uma única grande partição FAT32 com o Gparted.

Feito isso, desconecte e conecte seu pendrive USB para que ele seja montado (você também pode montá-lo pelo mesmo GParted), agora execute o Unetbootin; novamente, você pode olhar no painel ou digitar o terminal. Selecione que você deseja usar um iso, procure o caminho que seu ISO é.

Marque a caixa de seleção para ver todos os dispositivos. Aqui você precisa selecionar o mesmo dispositivo selecionado no Gparted, caso contrário , seus dados poderão ser perdidos . Selecione continuar. Aguarde um momento e pronto. Reinicie o seu PC e selecione para inicializar a partir do USB.


1
@ GCB estranho, era um Windows 8?
Braiam

1
bom ponto. não. foi o windows7 pro. Vou verificar com o win8 para ver se esse CD tem o formato sd / hdd.
gcb

2
Eu prefiro sua resposta (a variante dd) à aceita, simplesmente porque não requer a adição de outro repositório nem a instalação de nenhum software (o unetbootin não é necessário, basta usar o dd).
Doublehelix 24/05

7
ddnão funcionou para mim, o computador simplesmente não inicializou a partir do pendrive. Se você deseja usar o UNetbootin em um pendrive formatado com ntfs , é necessário iniciá-lo na linha de comando: sudo unetbootin installtype=USB targetdrive=/dev/sdb1(sdb1 é a partição formatada em ntfs do meu pendrive, a sua pode ser diferente).
Erik

7
Como essa resposta na falha do servidor, o método dd falha com muita freqüência, porque exige que sua placa-mãe possa inicializar o CD-ROM USB e não apenas o HDD USB .
Erik

19

Em máquinas que não sejam UEFI, podemos usar o GRUB2 para tornar o pendrive inicializável. Em seguida, podemos usar o comando 'ntldr' no GRUB2 para inicializar o Windows a partir do USB.

  • Habilite o sinalizador de inicialização na partição de destino da unidade USB. Isso pode ser feito facilmente com o uso da ferramenta chamada "GParted". É uma ferramenta GUI para particionamento de unidades.
  • Se a imagem de instalação for um arquivo ISO, monte-a e acesse os arquivos.
  • Copie todos os arquivos para a raiz da unidade USB.
  • Instale o GRUB na unidade USB:

    sudo grub-install --boot-directory="/media/user/MyUSBDrive/boot" /dev/sdX
    
  • Configure o GRUB para inicializar o Windows colocando o seguinte arquivo como "/boot/grub/grub.cfg" na unidade USB:

    set menu_color_normal=white/black
    set menu_color_highlight=black/light-gray
    menuentry 'Install Windows 8' {
     ntldr /bootmgr
    }
    

Veja a resposta completa no meu blog Criando um USB inicializável do Windows a partir do Linux


2
Nenhuma instalação é necessária. Passos mais simples. Deveria ter tentado isso antes a resposta aceita
Anurag

O comando grub-install precisa ser executado como superusuário. Apenas informações ausentes
Anurag

4
ESTA É A RESPOSTA FINAL !!!
Danial Behzadi /

3
É o mesmo que a resposta "Qualquer versão do Ubuntu ... esquema de partição MBR", mas está faltando a --target=i386-pcopção grub-installe não usa o comando grub2 search para encontrar o "root" para inicializar. Talvez isso não é necessário ...
David Tonhofer

Eu acho que algo mais deve ser necessário instalar sábio, eu não tenho i386-pc como opção.
Teknopaul 9/08

15

mkusb-nox e mkusb versão 12 podem criar unidades de instalação do Windows

Parece difícil encontrar uma ferramenta Linux que possa criar unidades de inicialização (pen drives, cartões de memória ...) com o Windows, então eu adicionei esse recurso ao mkusb-nox e, posteriormente, criei a versão 12 do mkusb com esse recurso. Ele funciona em todas as versões atuais do Ubuntu (e nos sabores Ubuntu: Kubuntu, Lubuntu ... Xubuntu) e com o Debian Jessie. A unidade de inicialização criada pode inicializar o Windows de 64 bits no modo UEFI e BIOS.

Você obtém / atualiza esta nova versão do mkusb e mkusb-nox do PPA mkusb através dos seguintes comandos

sudo add-apt-repository universe  # this line only for standard Ubuntu

sudo add-apt-repository ppa:mkusb/ppa
sudo apt-get update
sudo apt-get install mkusb mkusb-nox

sudo apt-get install usb-pack-efi  # only for persistent live drives

Veja estes links,

mkusb-nox 11.1.2: recurso adicional: faça a instalação da unidade USB para Windows

mkusb / v7 - página de ajuda do ubuntu

O mkusb-nox pode criar um stick de inicialização USB com o Windows 7 - 10, mas você precisa lidar com uma interface de linha de comando.

Edit 1: New: mkusb versão 12 , a nova versão fornece uma interface gráfica com o usuário para o mesmo método. Veja estes links,

help.ubuntu.com/community/mkusb#Windows_USB_install_drive

mkusb-nox: captura de tela do diálogo do usuário

dus com guidus alias mkusb versão 12: insira a descrição da imagem aqui insira a descrição da imagem aqui

Edição 2:

  • Uma nova versão aprimorada, mkusb 12.2.9 , está disponível agora através do PPA padrão (e estável).

    sudo add-apt-repository universe  # this line only for standard Ubuntu
    
    sudo add-apt-repository ppa:mkusb/ppa
    sudo apt-get update
    sudo apt-get install mkusb mkusb-nox
    
    sudo apt-get install usb-pack-efi  # only for persistent live drives
    
    • Também pode instalar no modo BIOS a partir de sistemas instalados em execução no modo UEFI.

    • Alguns erros menores, mas irritantes, são esmagados.

    • Com os arquivos iso, que consegui baixar, posso criar esses tipos de unidades de instalação do Windows

      • Instalador do Windows 7 que inicializa no modo BIOS
      • Instalador do Windows 8.1 que inicializa nos modos UEFI e BIOS
      • Instalador do Windows 10 inicializado nos modos UEFI e BIOS

Um método simples de "faça você mesmo"


2
O Mkusb-nox é a melhor solução que encontrei, especialmente porque as respostas que mencionam o Winusb nesta página são obsoletas, pois esse programa não é mais suportado e não funciona imediatamente com a versão 16.04, mantenha o bom trabalho Sudodus.
CSCameron

1
Dus trabalhou para mim.
Alberto Salvia Novella

Obrigado por seu trabalho. Para sua informação, no Ubuntu 16.04, recebo um erro no final do processo:Bootloader: grub-install: error: /usr/lib/grub/i386-pc/modinfo.sh doesn't exist. Please specify --target or --directory.
Pointy

... no entanto, o stick USB aparece para trabalhar (eu estou instalando Win 10 em uma diferente máquina do que a que eu usei para fazer o stick USB.)
Pointy

@ Pointy, você está executando o mkusb em um sistema Ubuntu instalado no modo UEFI? Nesse caso, há um problema: o pacote de programas grub-pcnão pode ser instalado a menos que o pacote 'concorrente' grub-efiseja removido. Isso pode ser resolvido executando um sistema [persistente] ao vivo, baseado no Ubuntu ou Ubuntu, com o mkusb. Esse sistema pode funcionar no modo BIOS e UEFI e grub-pcpode ser instalado junto com o pacote `grub-efi '. Veja este link, help.ubuntu.com/community/mkusb/…
sudodus


7

Você pode usar o WinUSB para instalar o WinUSB no seu Ubuntu, siga estas instruções.

Okey, se você é do Ubuntu 13.10,13.04,12.10,12.04, execute o seguinte no terminal:

sudo add-apt-repository ppa:colingille/freshlight
sudo apt-get update
sudo apt-get install winusb

e se você é do Ubuntu 14.04, execute isto no terminal:

sudo add-apt-repository ppa:colingille/freshlight
sudo sh -c "sed -i 's/trusty/saucy/g' /etc/apt/sources.list.d/colingille-freshlight-trusty.list"
sudo apt-get update
sudo apt-get install winusb

O WinUSB vem com uma GUI simples, com opções mínimas, aqui está como usar o WinUSB para tornar o Windows USB inicializável a partir do Ubuntu. Você pode usar qualquer ISO do Windows que seja para XP, Windows 7, Windows 8, Windows 8.1 ou qualquer outro.

  1. Insira o Flash Drive e obtenha o ISO do Windows (usei o Windows 10 Technical Preview) ou insira o CD / DVD do Windows
  2. Inicie o WinUSB e, nada mais precisa ser explicado.
  3. Selecione sua fonte, ISO ou unidade de CD
  4. Escolha o seu dispositivo de destino (USB). Se não aparecer, clique em Atualizar e verifique se está montado.
  5. Clique em "Instalar" e digite sua senha (necessária para montar dispositivos e gravar diretamente nas unidades)

Isso é tudo o que você precisa fazer para criar um Windows USB Stick inicializável

Fonte: Como instalar e usar o WinUSB no Ubuntu


4

Para qualquer um que esteja obtendo uma exceção de limite de arquivo usando o woeUsb, use o comando terminal

sudo woeusb --device /home/uName/Downloads/Win10_1809Oct_English_x64.iso /dev/sdb --target-filesystem NTFS

Em vez de /home/uName/Downloads/Win10_1809Oct_English_x64.isousar seu caminho para o arquivo iso e

Em vez de /dev/sdbusar seu caminho, faça a unidade flash.


2

Para fins de completude, deixe-me adicionar instruções sobre como criar um disco USB inicializável a partir dos ISOs de atualização UEFI / BIOS do ThinkPad. Nenhuma das respostas acima funcionou para mim. (Talvez haja problemas semelhantes com outros fornecedores.)

  1. Crie um arquivo img comgeteltorito

    sudo apt install genisoimage
    geteltorito <image>.iso -o <image>.img
    
  2. Escreva o arquivo img no disco. É importante usar esse tamanho exato de bloco.

    sudo dd if=<image>.img of=/dev/sdX bs=512K && sync
    
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.