원문 보기: https://dawoum.duckdns.org/wiki/QEMU/macOS_guest
다른 가상 기계에서 macOS를 설치해서 사용하는 것이 그래픽 처리가 늦어서 사용하기에 원할하지 않습니다. 다른 가상 기계에서의 이전 설치와 비교해 보기 위해, KVM/QEMU에서 설치를 해보고자 합니다.
이 정보는 다음 주소의 안내서에 따라 진행됩니다.
Requirements
- 데비안 11과 그 이후 버전과 같은 현대 리눅스 배포판
- QEMU >= 6.2.0
- Intel VT-x 또는 AMD SVM를 지원하는 CPU
- grep -e vmx -e svm /proc/cpuinfo
- SSE4.1를 지원하는 CPU >= macOS Sierra
- AVX2를 지원하는 CPU >= macOS Mojave
Installation Preparation
- QEMU와 필요 패키지 설치
- sudo apt-get install qemu uml-utilities virt-manager git wget libguestfs-tools p7zip-full make dmg2img tesseract-ocr tesseract-ocr-eng genisoimage
- 저장소에서 스크립트 가져오기
- cd ~
- git clone --depth 1 --recursive https://github.com/kholia/OSX-KVM.git
- cd OSX-KVM
- 최신 버전으로 업데이트
- git pull --rebase
- KVM tweak (호스트 리눅스)
- sudo modprobe kvm; echo 1 | sudo tee /sys/module/kvm/parameters/ignore_msrs
- 이 변경 사항을 영구적으로 적용하기 위해,
- sudo cp kvm.conf /etc/modprobe.d/kvm.conf # for intel boxes only
- sudo cp kvm_amd.conf /etc/modprobe.d/kvm.conf # for amd boxes only
- 사용자 그룹 추가
- sudo usermod -aG kvm $(whoami)
- sudo usermod -aG libvirt $(whoami)
- sudo usermod -aG input $(whoami)
명령을 적용하기 위해 로그 아웃 후에 다시 로그인.
- macOS 설치 프로그램 가져오기
- ./fetch-macOS-v2.py
Ventura를 추천함.
- 이미지 변환
- dmg2img -i BaseSystem.dmg BaseSystem.img
- 디스크 생성
- qemu-img create -f qcow2 mac_hdd_ng.img 256G
- 나중에 업데이트를 생각한다면, 큰 이미지를 생성해 둘 필요가 있습니다.
Installation
명령줄에서 설치를 진행하기 위해, 다음 스크립트를 실행할 수 있습니다:
- ./OpenCore-Boot.sh
macOS Base System과 두 개의 메뉴가 올라옵니다. 선택되어 있는 macOS Base System을 누릅니다. 아니면, 몇 초 후에 자동으로 그것으로 부팅됩니다.
- 파티션 나누기
- 디스크 유틸리티(Disk Utility) 도구를 사용해서 파티션을 나눕니다. 현대 macOS 버전에 대해 APFS (기본값)을 사용하십시오.
- 이때, 맥 파티션 구성에 대한 정보가 없는 분들은 3개의 파티션 중에서 위에서 만든 크기와 비슷한 디스크를 선택하고 Erase 정도만 합니다.
- 그런-다음 disk utility를 닫고, Reinstall macOS Ventura를 누릅니다.
- 설치 시작
- 라이선스를 확인하고, 위에서 이름을 붙인 하드디스크를 선택하고 Continue.
- 2시간 17분 남았다는 메시지가 나온 후에 40분으로 줄어듭니다. 아마도 디스크 속력, 네트워크 속력 등에 따라 달라질 것으로 예상됩니다.
- 아마도 네트워크로 이미지를 받아오는 것으로 추정되며, 몇 년 전의 설치에서, 상황에 따라 다운로드를 하지 못하거나, 중간에 비정상적으로 종료되는 경우도 있었습니다. 어쨌든, 2024년 3월 기준, 십 여분 만에 완료됩니다
- 그런-다음 새롭게 화면이 올라오는데, 이전 메뉴 외에 Installer가 새롭게 생기고 선택되어 있습니다.
- Installer 또는 위에서 이름-지은 하드 디스크를 몇 번 선택해서 설치를 진행할 수 있습니다. 이 과정은 20~40분 정도 걸립니다.
- 그런-다음 어는 순간, 설정 화면으로 넘어갑니다. 이 과정은 십여 분 걸립니다.
- (선택) virt-manager 메뉴 만들기
- sed "s/CHANGEME/$USER/g" macOS-libvirt-Catalina.xml > macOS.xml
- virt-xml-validate macOS.xml
- 이때, 홈 디렉토리 아래가 아니면, macOS.xml 파일을 편집해야 합니다.
- virsh --connect qemu:///system define macOS.xml
다음이 필요할 수 있지만, 확인하지 않았습니다: 이 과정은 진행하지 않았지만 부팅에 문제는 없습니다
- sudo setfacl -m u:libvirt-qemu:rx /home/$USER
- sudo setfacl -R -m u:libvirt-qemu:rx /home/$USER/OSX-KVM
처음은 cpu 4, memory 4G로 설정되어 있는데, 상당한 인내력을 요구합니다.
다음으로 cpu 6, memory 16G로 설정을 바꾼 후에 20초 이상 지나면 부팅이 완료되고 쓸만하게 움직입니다.
OSX Optimization
가상 기계에서, 게스트 운영 시스템으로 리눅스를 사용하는 것은 최고의 성능을 보여줍니다. 게다가 윈도우 게스트도 사용하기에 무리가 없을 정도로 충분한 성능이 나옵니다. 반면에 osx는 상대적으로 더 많은 코어와 메모리를 사용하도록 설정해도 가장 낮은 성능을 보여주기 때문에, 좀 더 빠르게 동작하도록 설정할 필요가 있습니다.
이 내용은 보안에 문제가 없을 것으로 판단되는 설정을 다음 문서에서 발췌해서 기록해 둡니다.
- Disable spotlight indexing
- sudo mdutil -i off -a
- Disable heavy login screen wallpaper
- sudo defaults write /Library/Preferences/com.apple.loginwindow DesktopPicture ""
- Reduce Motion & Transparency
- defaults write com.apple.Accessibility DifferentiateWithoutColor -int 1
- defaults write com.apple.Accessibility ReduceMotionEnabled -int 1
- defaults write com.apple.universalaccess reduceMotion -int 1
- defaults write com.apple.universalaccess reduceTransparency -int 1
- defaults write com.apple.Accessibility ReduceMotionEnabled -int 1
- Enable multi-sessions
- sudo /usr/bin/defaults write .GlobalPreferences MultipleSessionsEnabled -bool TRUE
- defaults write "Apple Global Domain" MultipleSessionsEnabled -bool true
- Disable screen locking
- defaults write com.apple.loginwindow DisableScreenLock -bool true
- Disable saving the application state on shutdown
- defaults write com.apple.loginwindow TALLogoutSavesState -bool false
버전별 설치 정보
2024년 3월 기준, 7개의 버전이 있습니다. 설치에서, 아래와 같은 현상이 있습니다.
- 7은 디스크 유틸리티 화면도 올라오지 않기 때문에 설치되지 않을 것입니다.
- 6, 5, 4는 정상적으로 설치될 것으로 보입니다.
- 3, 2, 1은 네트워크에 연결하지 못해서 설치 프로그램을 다운로드하지 못합니다. 즉, 설치를 할 수 없을 것입니다.
아래와 같은 오류가 생길 수 있습니다. 메시지가 나와도 계속 설치 또는 하드디스크를 선택해 보십시오.
- An error occurred preparing the software update.
댓글
댓글 쓰기