Pular para o conteúdo
Documentação: Configurações da VM

Documentação · Uso

Configurações da VM

Memória, processadores, tela, servidor gráfico, OpenCore, GPU e início automático: o que cada VM guarda e como mudar.

Alfa

Esta documentação corresponde ao OSX-REIMS 0.4.1, em estágio alfa. Comandos e opções podem mudar entre versões; na dúvida, confira osx-reims --help na versão instalada.

Cada VM guarda as próprias configurações, na pasta dela. Você responde uma vez e, dali em diante, iniciar a VM é uma tecla: o osx-reims start mostra o resumo do que ela vai usar e pergunta apenas se deve iniciar.

O menu de início

Com todas as configurações da VM salvas, o start mostra o resumo e oferece:

Tecla Opção
S Start: inicia a VM com as configurações do resumo
C Change: muda uma configuração antes de iniciar
Q Cancel: não inicia a VM

C abre a lista de configurações, cada uma com o valor atual. Escolher uma leva à mesma pergunta que a primeira inicialização fez; ao voltar, o resumo aparece de novo — então o que o resumo mostra é sempre o que a VM vai usar.

A primeira inicialização de uma VM pergunta tudo o que pode: memória, processadores, tela e servidor gráfico. As respostas ficam salvas e viram o padrão daquela VM.

Nota

Uma configuração respondida no menu C é salva na hora. Mudar uma configuração e depois cancelar o início deixa o novo valor para a próxima vez; Q significa apenas "não iniciar agora".

O que cada VM guarda

Configuração Tecla em C Valores Opção na linha de comando
Memória M 8G, 16384M… (padrão: 8G) -r, --ram
Processadores P de 1 a 32 (padrão: 4) -c, --cpus
OpenCore O disco de inicialização da VM ou disco do macOS --opencore image|esp
Tela S janela (padrão) ou tela cheia --windowed, --fullscreen
Servidor gráfico D wayland ou x11 --wayland, --x11
VMs dentro do macOS V desligado (padrão) ou ligado --nested, --no-nested
GPU U automática (padrão) ou uma GPU do computador --gpu auto|<fabricante:dispositivo>
Memória da GPU G automática (padrão), ligada ou desligada --guest-import auto|on|off
Início automático A desligado (padrão) ou ligado para uma VM osx-reims autostart
  • OpenCore só aparece para uma VM já instalada, porque uma VM só fica instalada depois da própria primeira inicialização. Sem resposta, ela inicia pelo próprio disco de inicialização, e o resumo diz isso.
  • VMs dentro do macOS, GPU e memória da GPU não são perguntadas na primeira inicialização: ficam no valor automático até você mudá-las no menu C ou por uma opção da linha de comando.
  • Início automático não fica na pasta da VM: é um serviço deste computador (veja Início automático).
  • Uma opção da linha de comando vale para aquela inicialização e vira o valor salvo da VM.
  • Um valor salvo que não passa mais nas verificações — mais processadores do que o limite, depois de copiar a pasta da VM para outro computador — conta como ausente, e aquela inicialização pergunta de novo.

Os arquivos ficam na pasta da VM, em /opt/reims-vgpu/vm/disks/rails/macos-<número>/: RAM, CPUS, SCREEN, BACKEND, NESTED, GPU, GUEST_IMPORT e, dentro de live/, OPENCORE.

Tela: janela ou tela cheia

Em tela cheia, a VM ocupa o monitor inteiro, sem decoração de janela e sem a área de trabalho do Ubuntu atrás dela. A pergunta é feita para toda VM, instalada ou não, porque a tela cheia é útil também durante a instalação do macOS.

  • Nada muda dentro do macOS: ele mantém a própria resolução e é centralizado no monitor, então um monitor com outra proporção mostra tarjas pretas nas laterais.
  • A janela da VM não pode ser redimensionada enquanto está em tela cheia. Use Alt+Tab para voltar ao terminal.
  • A VM abre no monitor em que a janela aparece; a escolha do monitor não é do OSX-REIMS.

Servidor gráfico: Wayland ou X11

A janela da VM pode abrir no Wayland da própria sessão ou no X11, pelo XWayland. O padrão é o servidor que a sua sessão usa: um ambiente sem Wayland (o Cinnamon, o MATE e o Xfce do Linux Mint, e qualquer outra sessão X11) recebe x11 como padrão. Os dois são sempre listados, e o que a sessão não tem aparece marcado.

Onde o ambiente tem os dois, a diferença é o teclado. O macOS precisa de atalhos que a área de trabalho guarda para si (Cmd, Alt+Tab, as combinações com Super), e a janela do Reims vGPU os pede assim que recebe o foco:

  • no Wayland, o GNOME confirma o pedido com uma janela ("The app Unknown wants to inhibit shortcuts") a cada início, porque a janela não tem como ser associada a um aplicativo instalado e a resposta não é guardada;
  • no X11, o mesmo pedido é atendido sem pergunta.

Com os atalhos capturados, o Ctrl+Alt+Esc devolve-os ao Ubuntu.

Nota

Pedir um servidor que a sessão não tem é recusado no início da VM: uma janela em um servidor que não existe não abriria em lugar nenhum.

VMs dentro do macOS

Com VMs dentro do macOS ligado, o processador que o macOS vê passa a ter o Intel VT-x, então o Hypervisor.framework funciona dentro da VM e o Docker, o VirtualBox e o emulador do Android têm em que rodar. Dentro do macOS, sysctl kern.hv_support responde 1 quando está valendo.

  • Nada mais muda no macOS: a identidade que ele mostra é a mesma, então ligar e desligar não afeta os serviços da Apple.
  • A VM precisa ser reiniciada para a mudança chegar até ela.
  • Precisa de um computador Intel com a virtualização aninhada ligada no KVM (kvm_intel nested=Y, o padrão do Ubuntu). Não é uma questão de desempenho no AMD: o macOS virtualiza só pelo VT-x, e o KVM não tem como oferecê-lo em um processador AMD.
  • Onde o computador não pode oferecer isso, a resposta da VM continua salva, a VM inicia sem o recurso, e o menu, o resumo e o osx-reims doctor dizem isso.

GPU e memória da GPU

Em um computador com mais de uma GPU — uma integrada e uma placa de vídeo —, a VM roda na GPU que o Reims vGPU escolhe: a dedicada. Essa é a resposta automática. Cada VM pode indicar outra:

osx-reims start 10 --gpu 8086:a780   # esta VM na GPU integrada Intel
osx-reims start 10 --gpu auto        # de volta à escolha do Reims vGPU

O menu C › U lista as GPUs que o Vulkan mostra neste computador e que o Reims vGPU pode usar, cada uma pelo identificador de fabricante e dispositivo (1002:73ff), como o vulkaninfo --summary mostra. Uma GPU que não está no computador na hora de iniciar — uma pasta de VM trazida de outro computador, ou uma GPU integrada que a placa-mãe desliga — não impede o início: a VM inicia na GPU automática, o resumo diz isso, e a escolha continua salva para quando aquela GPU voltar.

A memória da GPU decide como a memória da VM chega à GPU. No automático, o OSX-REIMS manda copiá-la em um computador cuja GPU é uma integrada Intel ou AMD, e deixa a decisão para o Reims vGPU nos demais casos — veja Solução de problemas. on e off fixam a escolha para aquela VM, para um computador em que a resposta automática não é a certa.

O resumo da inicialização tem uma linha GPU, com a GPU em que a VM roda, e uma linha GPU memory; o osx-reims doctor mostra a resposta automática deste computador e as VMs com escolha própria.

OpenCore

O OpenCore que inicia a VM pode ser o disco de inicialização da VM, que veio com ela, ou o disco do macOS, quer dizer, o OpenCore na partição EFI do próprio disco onde o macOS está instalado. Os detalhes, inclusive como instalar o OpenCore da VM nessa EFI, estão em Configuração avançada.

Início automático

O início automático faz uma VM abrir sozinha, para que ligar o computador termine no macOS. Ele fica no menu C › A e também tem comando próprio:

osx-reims autostart status
osx-reims autostart on 13            # e oferece o login automático do Ubuntu
osx-reims autostart on 13 --login    # sem perguntar
osx-reims autostart off

Como a janela da VM abre na sessão gráfica, nada inicia a VM antes de alguém entrar na sessão: é um serviço de usuário do systemd (osx-reims-vm@<número>.service), não um serviço do sistema. Por isso, ir de "ligar o computador" até o macOS são duas configurações:

  1. o início automático da VM;
  2. o login automático do Ubuntu, que é uma configuração do próprio Ubuntu (/etc/gdm3/custom.conf). O OSX-REIMS oferece ligá-lo quando o início automático é ativado, e nunca o liga como efeito colateral.

Atenção

Com o login automático, quem liga o computador entra na sua sessão, e a senha de login deixa de destravar o chaveiro. Na primeira mudança, uma cópia do arquivo é guardada em /etc/gdm3/custom.conf.osx-reims.bak.

  • Só uma VM pode ter o início automático; ativá-lo em uma tira-o da outra.
  • Só uma VM com o macOS já instalado pode tê-lo: a primeira inicialização é a instalação do macOS, que não é para ficar sozinha na tela.
  • A VM inicia com as próprias configurações salvas. Para o monitor inteiro, deixe a Tela dela em tela cheia.
  • Desligar o macOS encerra o serviço, e é assim que você volta ao Ubuntu. Sair da sessão ou desligar o computador pede o desligamento ao macOS e espera até 120 segundos, em vez de cortar a energia.
  • Se a VM não iniciar, uma notificação e uma janela de terminal dizem o motivo e abrem o console — o erro não fica escondido no log do sistema.
  • A resposta fica no systemd, e não na pasta da VM: copiar a pasta para outro computador não leva o início automático com ela.

Configurações fixas do computador

Em um computador que sempre mostra a VM do mesmo jeito, como um totem, o arquivo /etc/osx-reims.conf aceita FORCE_SCREEN e FORCE_BACKEND. Eles vêm antes da escolha salva de cada VM e depois da resposta daquela inicialização, então as opções da linha de comando e o menu C continuam valendo. Veja Configuração avançada.

Tudo pela linha de comando

osx-reims start 13 -r 16G -c 6 --fullscreen --x11 --nested
osx-reims start 13 -y            # sem perguntas, com o que estiver salvo
osx-reims start 13 --dry-run     # mostra o comando de inicialização e sai

Todas as opções estão em Comandos.