Linux用QEMUエミュレーターのMac OS X

ハブロビテスこんにちは。 最近、Mac OS XでObjective-Cを書く必要がありました。私のハードウェアはどのビルドにも最適ではなく、宗教によってこのOSに完全に座ることはできません。 Linux上のQemu仮想マシンにMac OS Xをインストールすることにしました。



ここに私が使用したすべてのもののリストがあります:



-Gentoo Linux 64ビット

-Qemu 0.10.5

-KVM(カーネルベースの仮想マシン)88-r1

-LinuxカーネルでのKVMサポート

-Intel Virtualization Technologyをサポートするプロセッサー (私の場合はCore2Duo E6400です

-Linuxカーネル> = 2.6.20

-Mac OS X iATKOS v7(Leopard 10.5.7)をビルドします



構成に進み、カーネルでKVMを追加する必要があります。 ソースをダウンロードし、解凍し、 make menuconfigを実行します

プロセッサのタイプと機能->準仮想化ゲストのサポート

マーク:

-KVM準仮想化クロック

-KVMゲストサポート

- スピンロックの準仮想化レイヤー



次に、カーネル構成のルートに新しい仮想化オプションが表示されます。

私たちはそこに行き、注意します:

- カーネルベースの仮想マシン(KVM)サポート

-Intelプロセッサー用のKVMサポート

-KVMトレースのサポート

-virtioデバイス用のPCIドライバー

-Virtioバルーンドライバー



新しいカーネルでアセンブル、インストール、再起動します。

次に、KVMサポート付きのQemu、およびKVM自体をインストールします

USE = "kvm" emerge qemu

emerge kvm



次に、仮想マシンでのシャーマニズムに目を向けます。

仮想ハードドライブを作成します。

qemu-img create -f raw macos.disk 30G



ルートの外部からQemuを実行する場合、他のユーザーにdevice / dev / kvmの読み取り/書き込み権限を与える必要があります

chmod 0666 / dev / kvm



以下を開始します。

kvm-boot d -hda macos.disk -m 900 -net nic、model = rtl8139 -net tap -usb -no-reboot -no-shutdown -vga std -cpu core2duo -cdrom 10.5.7.iso

-hdaの仮想ハードドライブへのパス

-cdromはイメージにしましょう

-no-shutdown -no-rebootは 、エラーが発生した場合にエミュレータウィンドウが「フリーズ」し、エラーを読み取ることができるようにするために必要です。

-net nic、model = rtl8139はネットワークカードRealtek 8139をエミュレートします

-ゲストシステムがネットワーク上のホストを表示するためのネットタップ、TAPデバイスが必要



-m 900ゲストシステムに割り当てられたメモリ

-sidiromaからboot d boot

-usb USBサポート

-cpu core2duoプロセッサエミュレーションCore2Duo



ディスクをロードします。 ディスクユーティリティを使用してハードドライブをマークします (上のメニューから選択します)。



ドライバー設定。

[ インストール ] クリックする前に、[ カスタマイズ ]ボタンに注意してください。



選択する必要があるもの:

x86 ACPI

障害者

OHR

TyMCEを削除する

カードバス

USB

Intel SATA / IDE

カーネル

Apple PS / 2



インストールできます。 約30分待っています。

Mac OS Xがインストールされ、カスタマイズ可能です。

開始する行で、 -boot dを-boot cに変更して、ハードドライブから起動します。

ロード中です。 次に、ネットワークで何かを考え出す必要があります。

インターネットでPCGenRTL8139Ethernet.kext検索してインストールします。kextinstallerプログラムを使用してインストールするのは非常に簡単です。 ネットワークがない間、必要なファイルをUSBフラッシュドライブ経由でシステムに転送できます。たとえば、 -hdb / dev / sdb (USBデバイスへのパス)を追加します

ゲストOSを再起動します。

ここで、ネットワークをMac OS Xで機能させるには、ネットワーク管理に入り、イーサネットデバイスを選択してオフにし、目的のIP(たとえば、192.168.1.1)をオンにして構成し、ホストシステムでデバイスtap0を構成する必要があります。

ifconfig tap0 192.168.1.2



それは基本的にそれです。



画像



UPD。 投稿の著者はヴィニシュテインに登場しました



All Articles