Blog Linux Avante

Instale macOS Big Sur ou Catalina em uma máquina virtual usando Docker-OSX

16 de março de 2021

Macos Big Sur Docker Qemu Ubuntu

Docker-OSX é um projeto que faz macOS rodar quase nativo usando OSX-KVM dentro de um container Docker. Usando isso, você poderá instalar macOS em uma máquina virtual QEMU (via Docker) e executar o desktop macOS Catalina ou Big Sur ou inicializar para o shell OSX.

O projeto Docker-OSX fornece quatro imagens Docker:

  • sickcodes/docker-osx:latest - Imagem de recuperação de base original usando MacOS Catalina
  • sickcodes/docker-osx:big-sur - Imagem de recuperação de base original usando MacOS Big Sur
  • sickcodes/docker-osx:naked - Forneça seu próprio arquivo .IMG (usando -v "${PWD}/disk.img:/image") sickcodes/docker-osx:auto - Imagem de Docker grande (~ 19.4GB) que inicializa para o OSX Shell (possui SSH ativado, usando user como nome de usuário e alpine como a senha; você precisa de cerca de 50 GB de espaço em disco para executar esta imagem)

As características incluem:

  • Encaminhamento X11
  • Modo automático completo: inicializa diretamente para o shell OSX e até mesmo executa comandos como argumentos de tempo de execução
  • Kubernetes Helm Chart. Veja ./helm
  • SSH em localhost:50922
  • Versão VNC em localhost:8888 (a versão VNC está em um diretório separado devido aos riscos de segurança envolvidos com o uso do VNC)
  • Cria um ARMY do mesmo recipiente exato usando o commit do Docker
  • XFVB modo headless

O projeto também inclui instruções para vários ajustes, como encaminhar portas adicionais, alterar a resolução da tela, habilitar o encaminhamento de rede, permitir a passagem USB, instruções de início rápida para usar a grande imagem pré-fabricada e usando sua própria imagem e mais (todos disponíveis no página do projeto).

Vale a pena notar desde o início que a Apple não permite instalar MacOS em hardware não-Apple, portanto, para usar isso legalmente, seu sistema operacional deve ser instalado no hardware da Apple. Além disso, para usar isso, sua CPU do computador precisa suportar a virtualização de hardware; Veja a lista de verificação KVM a partir daqui para descobrir se o seu CPU o suporta (você também pode executar o sudo kvm-ok, que retornará KVM acceleration can be used se tudo estiver bem).

No meu Ubuntu 20.10 Desktop, instalar macOS usando a imagem sickcodes/docker-osx:big-sur levou cerca de 55 minutos. A imagem Docker leva cerca de 3,2 GB de espaço em disco, enquanto o uso do espaço do contêiner para isso é de cerca de 35 GB.

Você pode querer verificar também Sosumi, um pacote snap que facilita o download e instalação do MacOS Catalina em uma máquina virtual no Linux, que também usa QEMU + KVM e é baseado no macos-simple-kvm. Vale a pena notar que Sosumi não foi atualizado desde o momento em que foi lançado pela primeira vez.

Abaixo você encontrará instruções para usar o Docker (Docker-OSX) para executar uma imagem de recuperação de base MacOS (Catalina ou Big Sur), instalar e executar macos (com a opção de configurar uma resolução personalizada; sem opções especificadas, usa 1920x1080). Há também instruções para remover o contêiner.

Como instalar MacOS (OSX) no QEMU + KVM usando Docker-OSX

1. Pré-requisitos

Antes de continuar, certifique-se de que o seu computador suporta a virtualização de hardware e que esteja habilitado no BIOS (você poderia verificar usando o sudo kvm-ok, que retornará KVM acceleration can be used se tudo estiver OK). Uma vez feito isso, você pode continuar com o restante das instruções abaixo.

Comece certificando-se de ter o Docker instalado (veja também a documentação oficial de instalação do Docker).

Além disso instale o QEMU no sistema host se você ainda não tiver. Você também pode precisar adicionar seu usuário ao grupo KVM usando sudo usermod -aG kvm $USER para que isso funcione corretamente.

Quanto ao espaço em disco necessário, leia meu comentário anterior neste artigo para uma estimativa aproximada. Para sickcodes/docker-osx:auto, você precisará de cerca de 50 GB de espaço em disco para usá-lo.

2. Inicie o Docker-OSX

Execute MacOS Big Sur ou Catalina usando Docker-OSX (para outras opções, consulte a página do projeto Docker-OSX - por exemplo, você pode executá-lo headless, usando sua própria imagem, rodar SickCodes/Docker- OSX:latest mermitindo SSH no macOS, etc.; Você também pode querer verificar esses argumentos do QEMU personalizados que podem ser usados para definir o número de núcleos da CPU, RAM disponível, etc.):

  • Execute o MacOS Big Sur (altere os valores WIDTH e HEIGHT para a resolução da tela que você deseja usar para sua máquina virtual de MacOS Big Sur; estou usando 1600x900 abaixo) usando a imagem de recuperação de base:

Comandos para usar no terminal

docker run -it

--device /dev/kvm

-p 50922:10022

-e GENERATE_UNIQUE=true

-e DEVICE_MODEL="iMacPro1,1"

-e WIDTH=1600

-e HEIGHT=900

-v /tmp/.X11-unix:/tmp/.X11-unix

-e "DISPLAY=${DISPLAY:-:0.0}"

sickcodes/docker-osx:big-sur

  • Execute MacOS Catalina (Altere os valores WIDTH e HEIGHT para a resolução da tela que você deseja usar para a sua máquina virtual de MacOS Big Sur; Estou usando 1600x900 abaixo) usando a imagem de recuperação básica:

Comandos para usar no terminal

docker run -it

--device /dev/kvm

-p 50922:10022

-e GENERATE_UNIQUE=true

-e DEVICE_MODEL="iMacPro1,1"

-e WIDTH=1600

-e HEIGHT=900

-v /tmp/.X11-unix:/tmp/.X11-unix

-e "DISPLAY=${DISPLAY:-:0.0}"

sickcodes/docker-osx:latest

Os comandos de execução acima do Docker usam as opções básicas para iniciar MacOS (imagem de recuperação básica, usada para instalar macos) no QEMU usando o Docker, fornecido pela página de projeto Docker-OSX com a adição de opções para resolução de tela. Se você remover as opções GENERATE_UNIQUE, DEVICE_MODEL, WIDTH e HEIGHT, a máquina virtual usará a resolução de tela padrão (1920x1080).

3. Use o Disk Utility para formatar o maior disco rígido QEMU

Depois de alguns minutos, a máquina virtual de MacOS será iniciada. Inicialize no sistema Base MacOS e escolha Disk Utility no menu:

Utilitário de disco de Docker MacOS QEMU

Em seguida, na ferramenta Disk Utility, verifique qual é o maior disco rígido à esquerda dos 2 QEMU HARDDISK e clique em oo maior (é 214,75 GB na versão que estou usando para testar isso).

Dica: Para que a máquina virtual QEMU libere o mouse, pressione Ctrl + Alt + g (em alguns casos, que é apenas Ctrl + g).

Agora clique no botão Erase da barra de ferramentas do utilitário de disco para formatar este disco rígido:

Utilitário de disco de Docker de MacOS QEMU

Defina um nome para o disco, talvez macOS, e deixe as outras opções para seus padrões (eles são Format: APFS para macOS Big Sur e Mac OS Extended (Journaled) para macOS Catalina, com o esquema sendo GUID Parition Map para ambos).

Depois de terminar de apagar o maior HDD QEMU, feche a caixa de diálogo do Disk Utility.

4. Instale macOS na máquina virtual

Depois de fechar o utilitário de disco, você mais uma vez chegará ao menu de onde poderá iniciar o Disk Utility, etc. Mas desta vez, você precisará selecionar a opção para Reinstall macOS Big Sur (ou, se você estiver usando a imagem sickcodes/docker-osx:latest que tem Catalina, esta opção é chamada apenas Reinstall macOS):

MacOS Qemu Docker Reinstall

Clique em Continue, e, em seguida, Agree, e você chegará a uma tela de onde você pode escolher o HDD que você formatou na etapa 3 (ele aparece usando o nome que você digitou ao apagá-lo, por exemplo, macOS no nosso exemplo). Selecione o HDD e clique em Continue:

MacOS QEMU Docker Select Disk

O macOS Big Sur/Catalina (dependendo da imagem que você escolheu) agora será iniciada:

MacOS Qemu Docker Installing

Depois de um tempo, a máquina virtual Mac OSX será reiniciada. Escolha a entrada macOS Installer na inicialização:

MacOS QEMU Docker Installer

Uma vez terminada a instalação, esta entrada de inicialização se torna apenas "macOS", e permite inicializar em sua nova instalação de MacOS dentro de uma máquina virtual :

Macos Qemu Docker MacOS MacOS Menu

Agora você precisará escolher o seu país ou região, opcionalmente, assinar com o seu ID da Apple, concordar com os termos e condições, etc., bem como criar sua conta do computador (nome de usuário e senha).

Observe que depois de instalar macos e inicializá-lo pela primeira vez, tive que selecionar a entrada MacOS duas vezes (reinicializou depois de escolhê-lo pela primeira vez). Além disso, há lag de mouse (e lag geral) através do processo de instalação de MacOS, mas isso não ocorre mais (ou é muito menos perceptível; isso depende do hardware do seu computador) depois de executar a máquina virtual de MacOS instalada.

5.Inicie sua máquina virtual do macOS recém-instalada

Quando você deseja iniciar sua máquina virtual recém-instalada do macOS, execute docker ps -a para ver o ID do contêiner e/ou nome:

Comandos para usar no terminal

docker ps -a

Então inicie o contêiner:

Comandos para usar no terminal

docker start Container_ID_or_Name

Substitua Container_ID_or_Name com o ID do contêiner ou nome obtido usando o comando anterior.

Como remover Docker-OSX

Então você decidiu que deseja remover Docker-OSX. Comece executando o seguinte comando para obter uma lista de nomes e IDs de contêineres de Docker:

Comandos para usar no terminal

docker container ls -a

Usando este comando, identifique o contêiner que deseja remover. Agora pare e remova o contêiner usando:

Comandos para usar no terminal

docker container stop ID_or_Imagedocker container rm ID_or_Image

Para remover a imagem do Docker-OSX, inicie usando este comando para listar as imagens de Docker existentes:

Comandos para usar no terminal

docker image ls

Depois, remova a imagem do Docker-OSX usando:

Comandos para usar no terminal

docker image rm Image_ID

VIA cerebrux.net (gr)

Confira a versão original desse post em inglês
Propaganda
Blog Comments powered by Disqus.