ハブロビテスこんにちは。 最近、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 qemuemerge 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障害者OHRTyMCEを削除するカードバスUSBIntel 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。 投稿の著者はヴィニシュテインに登場しました