0551: Running a MacOS Big Sur VM in ProxMox VE

This commit is contained in:
i12bretro 2021-07-29 00:05:01 -04:00
parent c3547d337a
commit e64fb82bcf

152
0551.html Normal file
View file

@ -0,0 +1,152 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Running a MacOS Big Sur VM in ProxMox VE</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript" src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
<script type="text/javascript">
$(function(){
$('textarea').each(function(i,e){
theTextarea = $(this);
theTextarea.height((theTextarea[0].scrollHeight-5) +'px');
});
$('li').each(function(i,e){
var uuid = 'li_' + Math.floor(Math.random() * Math.floor(1000000)).toString() + '_' + i.toString();
$(this).contents().wrap('<span id="'+ uuid +'"><label for="cb_'+ uuid +'"></label></span>');
$(this).prepend('<input type="checkbox" class="completeBox" id="cb_' + uuid +'" rel="'+ uuid +'" />')
});
$('code,div.codeBlock,textarea.codeBlock').each(function(i,e){
theElement = $(this);
var lines = theElement.html().split("\n");
theElement.empty();
for(l=0;l<lines.length;l++){
if($.trim(lines[l]) != '' && $.trim(lines[l]).substr(0,1) != '#' && $.trim(lines[l]).indexOf(' #') == -1 && lines[l].substr(0, 4).toUpperCase() != 'REM '){
theElement.append('<input type="image" src="images/clipboard.png" value="" class="copy-text" rel="copy_'+ i +'_'+ l +'" data-clipboard-text="'+ lines[l].replace(/"/g, '&quot;') +'" /><span id="copy_'+ i +'_'+ l +'">'+ lines[l] +'</span>');
} else {
theElement.append(lines[l]);
}
}
});
$(document).on('click','input.copy-text',function(){
theButton = $(this);
$('input.copy-text').attr('src','images/clipboard.png');
$('span.copy-animation,span.copy-animation-ps').removeClass('copy-animation copy-animation-ps');
try {
if($('#'+ theButton.attr('rel')).parent('div').hasClass('PS')){
$('#'+ theButton.attr('rel')).addClass('copy-animation-ps');
} else {
$('#'+ theButton.attr('rel')).addClass('copy-animation');
}
navigator.clipboard.writeText(theButton.data('clipboard-text').replace(/<[^>]*>?/gm, ''));
theButton.attr('src','images/clipboard_active.png');
} catch(err) {
}
return false;
});
$(document).on('click','input.completeBox',function(){
theBox = $(this);
$('#'+ theBox.attr('rel')).addClass('strikethrough');
theBox.prop('disabled',true);
theBox.parent('li').prevAll().each(function(i,e){
theLI = $(this);
if(theLI.find('input[type=checkbox]').not(':checked')){
$('#'+ theLI.find('input[type=checkbox]').attr('rel')).addClass('strikethrough');
theLI.find('input[type=checkbox]').prop('checked',true).prop('disabled',true);
}
});
});
if(window.self !== window.top){
window.parent.$('iframe.stepsFrame').height((this['scrollingElement']['scrollHeight']+20) +'px');
}
});
</script>
<link href="css/steps.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="gridContainer">
<div class="topMargin"></div>
<div id="listName" class="topMargin">
<h1>Running a MacOS Big Sur VM in ProxMox VE</h1>
</div>
<div></div>
<div id="content">
<ol>
<li>Download a MacOS Big Sur .iso <a href="https://archive.org/search.php?query=Mac%20OS%20Big%20Sur&amp;and[]=mediatype%3A%22software%22" target="_blank">Download</a></li>
<li>Download KVM OpenCore bootloader <a href="https://github.com/thenickdude/KVM-Opencore/releases" target="_blank">Download</a></li>
<li>Extract the downloaded KVM OpenCore bootloader .gz file</li>
<li>Upload the Big Sur and KVM OpenCore .iso files to the Proxmox ISO library</li>
<li>Log into the ProxMox web UI</li>
<li>Right click the ProxMox node name &gt; Create VM</li>
<li>Type MacOSBigSur in the name field, set the VM ID to 1100 (unless 1100 is in use) &gt; Next</li>
<li>On the OS tab, set the Type field to Other and select the KVM OpenCore .iso in the ISO Image field &gt; Next</li>
<li>On the System tab, set the Graphic card field to VMware compatible, BIOS field to OVMF (UEFI), Check the Add EFI Disk checkbox, Machine field to q35 and the SCSI Controller to VirtIO SCSI &gt; Next</li>
<li>On the Hard Disk tab, set the Bus/Device field to VirtIO Block, Disk size field to 64, Cache field to Write back (unsafe) &gt; Next</li>
<li>On the CPU tab, set Cores field to 4, Type field to Penryn &gt; Next</li>
<li>On the Memory tab, set the Memory to 4096 &gt; Next</li>
<li>On the Network tab, set the Model field to VMware vmxnet3 &gt; Next</li>
<li>Verify the summary and click Finish</li>
<li>Click the MacOSBigSur VM &gt; Select Hardware from the left sub-navigation menu</li>
<li>Click Add &gt; CD/DVD Drive</li>
<li>Select the MacOS Big Sur .iso downloaded earlier &gt; Click Create</li>
<li>Select the MacOSBigSur VM &gt; Options &gt; Boot Order</li>
<li>Set the KVM OpenCore disk as the first boot option &gt; Click OK</li>
<li>Right click the ProxMox node name &gt; Console</li>
<li>Run the following commands in the terminal
<div class="codeBlock"># edit the VM conf file, chnage 1100 to the VM ID for the Big Sur VM<br />
nano /etc/pve/qemu-server/1100.conf</div>
</li>
<li>If running on an Intel CPU, add the following line to the bottom of the .conf file:
<p>args: -device isa-applesmc,osk=&quot;ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc&quot; -smbios type=2 -device usb-kbd,bus=ehci.0,port=2 -cpu host,kvm=on,vendor=GenuineIntel,+kvm_pv_unhalt,+kvm_pv_eoi,+hypervisor,+invtsc</p>
</li>
<li>If running on an AMD CPU, add the following line to the bottom of the .conf file:
<p>args: -device isa-applesmc,osk=&quot;ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc&quot; -smbios type=2 -device usb-kbd,bus=ehci.0,port=2 -cpu Penryn,kvm=on,vendor=GenuineIntel,+kvm_pv_unhalt,+kvm_pv_eoi,+hypervisor,+invtsc,+pcid,+ssse3,+sse4.2,+popcnt,+avx,+avx2,+aes,+fma,+fma4,+bmi1,+bmi2,+xsave,+xsaveopt,check</p>
</li>
<li>Press CTRL+W and search for ,media=cdrom</li>
<li>Delete the ,media=cdrom from the two attached .iso files (KVM OpenCore and Big Sur) and add cache=unsafe</li>
<li>Press CTRL+O, Enter, CTRL+X to write the changes to the conf file</li>
<li>Back in the Proxmox web UI, right click the MacOSBigSur VM in the left navigation pane &gt; Start</li>
<li>Click console in the left sub-navigation menu</li>
<li>At the OpenCore menu, select UEFI Shell &gt; Press Enter</li>
<li>Type the following in the UEFI shell:
<div class="codeBlock CMD"># change to the Big Sur .iso, the disk number may be different for you<br />
fs0:<br />
# launch the MacOS installer<br />
System\Library\CoreServices\boot.efi</div>
</li>
<li>After a long initialization sequence the MAC OS Setup should start</li>
<li>Select Disk Utility</li>
<li>Select the VIRTIO Block Media &gt; Click Erase</li>
<li>Name the drive OS11 &gt; Set the Format to APFS &gt; Click Erase</li>
<li>Click Done &gt; Close Disk Utility</li>
<li>Click Install macOS Big Sur</li>
<li>Click Continue &gt; Click Agree &gt; Click Agree again</li>
<li>Select the OS11 disk &gt; Click Install</li>
<li>Wait while Mac OS 11 installs files, the VM will reboot several times</li>
<li>Press Enter at the OpenCore boot screen after each reboot to continue the MacOS installation</li>
<li>Select your Country &gt; Click Continue</li>
<li>Confirm your languages and keyboard layout &gt; Click Continue</li>
<li>Click Not Now on the Accessibility screen</li>
<li>Click Continue on the Data &amp; Privacy screen</li>
<li>Select Not Now on the Migration Assistant screen</li>
<li>Select Set Up Later and then Skip on the Apple ID screen</li>
<li>Click Agree &gt; Agree again</li>
<li>Enter a name, user name, password &gt; Click Continue</li>
<li>Click Customize Settings</li>
<li>Click Continue &gt; Select Use or Don&#39;t Use for Location Services</li>
<li>Pick a timezone &gt; Click Continue</li>
<li>Choose whether to share analytics with Apple &gt; Click Continue</li>
<li>Click Set Up Later on the Screen Time screen</li>
<li>Uncheck the Enable Ask Siri box &gt; Click Continue</li>
<li>Pick a theme &gt; Click Continue</li>
<li>Welcome to MacOS 11 Big Sur</li>
</ol>
</div>
</div>
</body>
</html>