Installation de MacOS Catalina virtualisé sous Qemu

  • Objectif :

Virtualiser MacOS via Qemu sous Ubuntu, cela permet de tester un site web sous Safari ou de tester des logiciels spécifiques à MacOS.

  • Liens :

https://tuxicoman.jesuislibre.net/2021/01/virtualiser-macos-sur-linux-avec-qemu.html
https://github.com/foxlet/macOS-Simple-KVM
https://www.linuxuprising.com/2020/03/how-to-install-macos-in-virtual-machine.html

1/ Création du répertoire de travail.

util01@station66:~$ mkdir QEMU1
util01@station66:~$ cd QEMU1/
util01@station66:~/QEMU1$ 

2/ Téléchargement du script d'installation de 'macOS'.

util01@station66:~/QEMU1$ git clone https://github.com/foxlet/macOS-Simple-KVM.git
util01@station66:~/QEMU1$ cd macOS-Simple-KVM/
util01@station66:~/QEMU1/macOS-Simple-KVM$ 

3/ Lancement du script.

util01@station66:~/QEMU1/macOS-Simple-KVM$ ./jumpstart.sh 
...
opening partition 4 ...             100.00%  ok
opening partition 5 ...             100.00%  ok
opening partition 6 ...             100.00%  ok
opening partition 7 ...             100.00%  ok

Archive successfully decompressed as /home/util01/QEMU1/macOS-Simple-KVM/BaseSystem.img
util01@station66:~/QEMU1/macOS-Simple-KVM$ 

4/ Création du disque dur virtuel.

util01@station66:~/QEMU1/macOS-Simple-KVM$ qemu-img create -f qcow2 MyDisk.qcow2 64G
Formatting 'MyDisk.qcow2', fmt=qcow2 cluster_size=65536 extended_l2=off compression_type=zlib size=68719476736 lazy_refcounts=off refcount_bits=16

5/ Configuration du script Qemu.

  • Prise en compte de la souris :

Ouvrir :

basic.sh 

Ajouter :

    -drive id=SystemDisk,if=none,file=MyDisk.qcow2 \
    -device ide-hd,bus=sata.4,drive=SystemDisk 

Chercher :

    -usb -device usb-kbd -device usb-mouse \

Remplacer par :

    -usb -device usb-kbd -device usb-tablet \

6/ Lancement de Qemu.

util01@station66:~/QEMU1/macOS-Simple-KVM$ ./basic.sh 

7/ Installation de 'macOS'.

  • Sélectionner l'icône 'macOS', soit 'Boot macOS Install from macOS Base System' pour commencer l'installation de macOS :

mac01

  • A ma fenêtre 'macOS Utilisties', sélectionner 'Disk Utility' pour configurer le disque :

mac03

  • Sélectionner 'QEMU HARDDISK Media' de 68.72 go:

mac04

  • Au niveau du menu contextuel, sélectionner 'Erase...' :

mac05

  • Nommer le disque : macOS Et cliquer sur 'Erase'.

mac07

  • Après la suppression du disque, cliquer sur 'Done' :

mac08

  • Sélectionner 'Reinstall macOS' :

mac09

  • L'installation de macOS commence :

mac10

  • Accepter la license :

mac11

  • Sélectionner le disque pour l'installation : macOS 68.38Gb total Et cliquer sur 'Install'.

mac13

  • L'installation dure plus de 5 heure sur une machine hôte de 4 coeurs avec 4 Go de RAM.

mac14

  • A la fin de l'installation sélectionner : France

mac15

  • Configuration de langue :

mac16

  • Cliquer sur 'Continue' pour continuer l'installation :

mac17

  • Cliquer sur le lien 'Set Up Later' pour passer l'enregistrement d'un compte Apple :

mac19

  • Accepter les conditions d'utilisation :

mac20

  • Créer son compte :

mac22

  • L'installation continue :

mac23

  • Après l'installation, identifier le type de clavier :

mac30

  • Ainsi que l'agencement du clavier :

mac31

  • L'installation est enfin terminé !!!

mac32

mac33

8/ Script de lancement.

Créer :

basic1.sh

Ajouter :

#!/bin/bash

OSK="ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc"
VMDIR=$PWD
OVMF=$VMDIR/firmware
#export QEMU_AUDIO_DRV=pa
#QEMU_AUDIO_DRV=pa

qemu-system-x86_64 \
    -enable-kvm \
    -m 2G \
    -machine q35,accel=kvm \
    -smp 4,cores=2 \
    -cpu Penryn,vendor=GenuineIntel,kvm=on,+sse3,+sse4.2,+aes,+xsave,+avx,+xsaveopt,+xsavec,+xgetbv1,+avx2,+bmi2,+smep,+bmi1,+fma,+movbe,+invtsc \
    -device isa-applesmc,osk="$OSK" \
    -smbios type=2 \
    -drive if=pflash,format=raw,readonly,file="$OVMF/OVMF_CODE.fd" \
    -drive if=pflash,format=raw,file="$OVMF/OVMF_VARS-1024x768.fd" \
    -vga qxl \
    -device ich9-intel-hda -device hda-output \
    -usb -device usb-kbd -device usb-tablet \
    -netdev user,id=net0 \
    -device e1000-82545em,netdev=net0,id=net0,mac=52:54:00:c9:18:27 \
    -device ich9-ahci,id=sata \
    -drive id=ESP,if=virtio,format=qcow2,file=ESP.qcow2 \
    -drive id=MyDisk,if=virtio,format=qcow2,file=MyDisk.qcow2 \
    -k fr 

Action :

$ chmod +x basic1.sh

9/ Post-configiurat

  • Au 1er lancement de macOS, sélectionner l'icône 'Boot macOS from macOS' :

mac34

  • Le démarrage commence :

mac35

  • Le bureau s'affiche :

mac36

mac37

mac38