다른 가상 기계에서 macOS를 설치해서 사용하는 것이 그래픽 처리가 늦어서 사용하기에 원활하지 않습니다. 다른 가상 기계에서의 이전 설치와 비교해 보기 위해, KVM/QEMU에서 설치를 해보고자 합니다.
이 정보는 다음 주소의 안내서에 따라 진행됩니다.
Requirements
- 데비안 10과 그 이후 버전과 같은 현대 리눅스 배포판
- QEMU >= 4.2.0
- Intel VT-x 또는 AMD SVM를 지원하는 CPU
- SSE4.1를 지원하는 CPU >= macOS Sierra
- AVX2를 지원하는 CPU >= macOS Mojave
Installation Preparation
KVM tweak (호스트 리눅스)
- echo 1 | sudo tee /sys/module/kvm/parameters/ignore_msrs
이 변경 사항을 영구적으로 적용하기 위해, github에서 OSX-KVM을 가져온 후에, (인텔 CPU에서만 하십시오, AMD는 위의 것만 수정하라는 것인지?? 하지 말라는 것인지??)
- sudo cp kvm.conf /etc/modprobe.d/kvm.conf
QEMU와 필요 패키지 설치
- sudo apt-get install qemu uml-utilities virt-manager git wget libguestfs-tools p7zip-full make -y
사용자 그룹 추가
- sudo usermod -aG kvm $(whoami)
- sudo usermod -aG libvirt $(whoami)
명령을 적용하기 위해 컴퓨터 재시작
저장소에서 스크립트 가져오기
- cd ~
- git clone --depth 1 --recursive https://github.com/kholia/OSX-KVM.git
- cd OSX-KVM
최신 버전으로 업데이트
- git pull --rebase
macOS 설치 프로그램 가져오기
- ./fetch-macOS-v2.py
Big Sur 선택을 추천, 설치가 되지 않아, High Sierra로 선택.
이미지 변환
- qemu-img convert BaseSystem.dmg -O raw BaseSystem.img
디스크 생성
- qemu-img create -f qcow2 mac_hdd_ng.img 120G
나중에 업데이트를 생각한다면, 큰 이미지를 생성해 둘 필요가 있습니다.
macOS guest menu
Tap Networking (Better Performance) :
다운로드가 느려서 이것을 추가하고 시작해 봅니다.
- sudo ip tuntap add dev tap0 mode tap
- sudo ip link set tap0 up promisc on
- sudo ip link set dev virbr0 up
- sudo ip link set dev tap0 master virbr0
명령줄에서 설치를 하려면, 다음 스크립트를 실행할 수 있지만, 좀 더 편하게 아래의 방법을 이용할 수 있습니다.
- ./OpenCore-Boot.sh
virt-manager 메뉴 만들기 :
위의 방법보다는 이 방법이 간편할 수 있습니다.
- sed "s/CHANGEME/$USER/g" macOS-libvirt-Catalina.xml > macOS.xml
- virt-xml-validate macOS.xml
- virsh --connect qemu:///system define macOS.xml
이제 virt-manager에서 macos가 보입니다.
디스크 지우기 :
디스크 유틸리티를 사용해서 위에서 만든 120G 디스크를 지우기를 실행해야 설치 중에 선택할 수 있습니다. APFS를 선택하지 말고 Mac OS Extended를 선택하는 것이 좋다고 합니다.
설치 시작 :
라이선스를 확인하고, 아마도 네트워크로 이미지를 받아오는 것으로 추정되는데, 상황에 따라 다운로드를 하지 못하거나, 중간에 비정상적으로 종료되는 경우도 있습니다. 어쨌든, 대체로 수십 분에서 몇 시간이 걸릴 수 있습니다.
스레드 4개 메모리 8G에서 부팅은 다른 게스트에 비해 많이 느리지만, 로그인 후에는 쓸만한 그래픽 속도를 보여줍니다. 충분히 사용할 만 합니다!!
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
Installation information
High Sierra :
가장 짧은 시간에 설치가 되고, 사용함에도 무리가 없습니다.
Mojave :
설치 중인데, 설치 시간이 길지는 않습니다.
Catalina :
설치 시간이 High Sierra 보다 훨씬 오래 걸리지만, 사용함에 무리가 없습니다.
Big Sur :
마찬가지로 설치 시간이 오래 걸리고, 해상도가 5000x3000으로 설정되고, 시스템 설정이 화면에서 노출되지 않아, 사용하기 힘듭니다.
Monterey :
가장 오랫동안 설치를 진행하고 있습니다. 최소화 애니메이션에서 시스템에 무리가 갑니다.