Masukkan MacOS Catalina di kotak gelandangan.
Beberapa urutan diperpendek. Waktu lari asli 14,5 menit.
Mendukung membuat kotak di salah satu 'vmware_fusion', 'vmware_desktop', 'paralel', atau format 'virtualbox'.
Perangkat lunak berikut diperlukan. Versi selain yang disebutkan dapat berfungsi, tetapi ini adalah versi terbaru yang diuji.
Untuk mem -boot kotak yang dibuat oleh macinbox Anda akan membutuhkan Vagrant:
Untuk membuat kotak, Anda akan memerlukan aplikasi pemasang MacOS. Jika Anda menggunakan host Catalina, Anda harus menggunakan penginstal Catalina:
Host Catalina tidak dapat menggunakan installer sebelumnya (misalnya MacOS 10.14 Mojave), dan host Mojave tidak dapat menggunakan installer Catalina.
Jika Anda menggunakan host mojave, Anda harus menggunakan penginstal mojave:
Dianjurkan agar Anda menggunakan versi yang sama untuk host dan penginstal, tetapi versi sebelumnya dari penginstal MacOS (misalnya MacOS 10.13 High Sierra) juga dapat bekerja dengan host Mojave, dan sebaliknya.
Catatan: Jika Anda memiliki pertanyaan tentang izin virtualisasi macOS, Anda mungkin ingin meninjau dokumentasi untuk perangkat lunak virtualisasi yang Anda gunakan dan perjanjian lisensi perangkat lunak untuk macOS.
Salah satu aplikasi virtualisasi berikut diperlukan:
Untuk membuat dan mem -boot kotak dalam format 'VMware_Fusion' atau 'VMware_desktop' yang Anda perlukan:
Untuk membuat dan mem -boot kotak dalam format 'paralel' yang Anda perlukan:
Untuk membuat dan boot kotak dalam format 'VirtualBox' yang Anda perlukan:
Instal Permata:
$ sudo gem install macinbox
Jalankan dengan sudo dan tanpa argumen, alat macinbox akan membuat dan menambahkan kotak VMware vagrant bernama 'MacInbox' yang memfitnah layar penuh ke desktop pengguna 'Vagrant':
$ sudo macinbox
Harap bersabar, karena ini mungkin memakan waktu cukup lama. (Pada 2,5 GHz MacBookPro11,5 dibutuhkan sekitar 11 menit, 30 detik.) Setelah alat selesai, Anda dapat membuat lingkungan gelandangan baru dengan kotak dan memulainya:
$ vagrant init macinbox && vagrant up
Beberapa saat setelah menjalankan perintah ini, Anda akan melihat tampilan mesin virtual Anda muncul layar penuh. (Tekan Command-Control-F untuk keluar dari mode layar penuh.) Setelah mesin virtual selesai boot (sekitar 1-2 menit) Anda akan melihat desktop pengguna 'vagrant' dan dapat mulai menggunakan mesin virtual.
Untuk membuat kotak desktop paralel, lulus opsi --box-format :
$ sudo macinbox --box-format parallels
Untuk melihat opsi lanjutan, lulus opsi --help :
Usage: macinbox [options]
--box-format FORMAT Format of the box (default: vmware_desktop)
-n, --name NAME Name of the box (default: macinbox)
-d, --disk SIZE Size (GB) of the disk (default: 64)
-t, --fstype TYPE Type for disk format (default: APFS)
-m, --memory SIZE Size (MB) of the memory (default: 2048)
-c, --cpu COUNT Number of virtual cores (default: 2)
-s, --short NAME Short name of the user (default: vagrant)
-f, --full NAME Full name of the user (default: Vagrant)
-p, --password PASSWORD Password of the user (default: vagrant)
--installer PATH Path to the macOS installer app
--installer-dmg PATH Path to a macOS installer app disk image
--vmware PATH Path to the VMware Fusion app
--parallels PATH Path to the Parallels Desktop app
--user-script PATH Path to user script
--no-auto-login Disable auto login
--no-skip-mini-buddy Show the mini buddy on first login
--no-hidpi Disable HiDPI resolutions
--no-fullscreen Display the virtual machine GUI in a window
--no-gui Disable the GUI
--use-qemu Use qemu-img (vmware_desktop only)
--verbose Enable verbose mode
--debug Enable debug mode
-v, --version
-h, --help
Mengaktifkan mode debug menyebabkan file menengah (gambar disk, VMDK, dan kotak) dipertahankan setelah alat keluar daripada dibersihkan. PERINGATAN!!! File perantara ini sangat besar dan Anda dapat kehabisan ruang disk dengan sangat cepat saat menggunakan opsi ini.
Contoh lanjutan ini membuat dan menambahkan kotak bernama 'Macinbox-Large-Nogui' dengan 4 core, 8 GB atau RAM, dan disk 128 GB; Matikan login otomatis; dan mencegah VMware GUI ditampilkan ketika VM dimulai:
$ sudo macinbox -n macinbox-large-nogui -c 4 -m 8192 -d 128 --no-auto-login --no-gui
Jika Anda memiliki set variabel lingkungan vagrant_home dan ingin kotak yang dibuat untuk ditambahkan ke direktori 'kotak' di lokasi itu Anda perlu memberi tahu sudo untuk meneruskannya ke macinbox, misalnya:
$ sudo "VAGRANT_HOME=${VAGRANT_HOME}" macinbox
Secara default macinbox akan mengkonfigurasi OS tamu untuk mengaktifkan resolusi HIDPI, dan mengkonfigurasi mesin virtual untuk menggunakan resolusi tampilan asli. Anda dapat menonaktifkan perilaku ini menggunakan opsi --no-hidpi .
Secara default macinbox akan membuat kotak vagrant dalam format 'vmware_desktop' dengan alat vmware yang telah diinstal sebelumnya.
Ketika format kotak diatur ke 'paralel' menggunakan opsi --box-format maka alat paralel malah diinstal sebelumnya.
Ketika format kotak diatur ke 'VirtualBox' tidak ada ekstensi tamu yang diinstal. Perhatikan bahwa beberapa fitur berperilaku berbeda dengan VirtualBox. Resolusi layar diatur ke 1280x800 dan resolusi HIDPI tidak didukung. Faktor skala GUI diatur ke 2.0 (sehingga VM ditampilkan dengan benar pada host dengan tampilan retina) kecuali jika opsi --no-hidpi digunakan. Terakhir, pengalihan port SSH diaktifkan secara default sehingga host dapat terhubung ke tamu.
Jika Kustomisasi Kotak Tambahan diperlukan, skrip pengguna dapat ditentukan menggunakan opsi --user-script . Script dijalankan setelah OS diinstal dan akan disediakan dengan jalur ke lokasi instalasi sebagai argumen pertama dan satu -satunya. Skrip harus dapat dieksekusi dan keluar dengan kode nol atau pembuatan kotak akan dibatalkan.
Opsi --installer-dmg memungkinkan Anda untuk menunjukkan jalur ke gambar disk yang berisi penginstal macOS, dan mengesampingkan opsi --installer . Gambar disk yang ditentukan belum boleh dipasang; macinbox akan dipasang dan melepasnya sesuai kebutuhan. Fitur ini memungkinkan Anda untuk menggunakan gambar disk installer yang dibuat oleh InstallInstallMacos.py sebagai bagian dari alur kerja macinbox .
Alat ini melakukan tindakan berikut:
Kotak yang dibuat oleh alat ini mencakup vagrantfile bawaan yang menonaktifkan perilaku gelandangan default berikut:
Untuk mengaktifkan kembali penerusan port SSH default, Anda dapat menambahkan baris berikut ke Vagrantfile lingkungan Anda:
config.vm.network :forwarded_port, guest: 22, host: 2222, id: "ssh"
Untuk mengaktifkan kembali folder disinkronkan default, Anda dapat menambahkan baris berikut ke vagrantfile lingkungan Anda:
config.vm.synced_folder ".", "/vagrant"
Alat ini dimaksudkan untuk melakukan segala sesuatu yang perlu dilakukan untuk instalasi macOS baru sebelum boot pertama untuk mengubahnya menjadi kotak vagrant yang mem -boot macOS dengan pengalaman pengguna yang mulus. Namun, alat ini juga dimaksudkan untuk melakukan konfigurasi paling sedikit yang memungkinkan. Tidak ada yang dilakukan yang dapat ditangguhkan ke langkah penyediaan dalam template VagrantFile atau Packer.
Proyek ini terinspirasi oleh karya besar orang lain:
Proyek ini menarik inspirasi dari episode Mr. Robot. Dalam episode tersebut, Elliot ditampilkan dengan cepat booting apa yang tampak seperti mesin virtual yang menjalankan lingkungan desktop Linux yang segar, untuk memeriksa isi CD-ROM yang tidak dipercaya. Ketika saya menyaksikan saya berpikir, "Saya ingin dapat melakukan hal semacam itu dengan macOS!". Tentunya saya bukan satu -satunya orang yang telah mengunduh perangkat lunak yang tidak dipercaya dari internet, dan berharap ada cara mudah untuk mengevaluasinya tanpa menempatkan lingkungan kerja utama saya dalam risiko?
Proyek ini adalah penerus langsung untuk proyek Vagrant-Box-Macos saya, yang dengan sendirinya sangat terinspirasi oleh proyek Templates OSX-VM Tim Sutton.
Dengan rilis MacOS 10.12.4 Teknik yang berlaku untuk menyesuaikan pemasangan macOS terhambat oleh persyaratan installer baru bahwa semua paket ditandatangani oleh Apple. Setelah mencoba berbagai teknik untuk memungkinkan vagrant-box-macos mendukung MacOS 10.13 High Sierra, saya memutuskan pendekatan yang berbeda untuk pembuatan kotak diperlukan, dan macinbox lahir.
Mulailah dengan menjalankan sudo gem install bundler dan bundle install .
Untuk menjalankan macinbox langsung dari root ruang kerja git tanpa menginstal permata, jalankan sudo bundle exec macinbox .
Untuk memasang permata ini ke mesin lokal Anda, jalankan sudo bundle exec rake install .
Anda juga dapat menjalankan bin/console untuk prompt interaktif yang akan memungkinkan Anda untuk bereksperimen. Misalnya:
opts = Macinbox::CLI::DEFAULT_OPTION_VALUES
opts[:collector] = Macinbox::Collector.new
opts[:full_name] = "Vagrant"
opts[:password] = "vagrant"
opts[:image_path] = "macinbox.sparseimage"
opts[:boxes_dir] = File.expand_path "~/.vagrant.d/boxes"
$debug = $verbose = true
include Macinbox::Actions
opts[:macos_version] = CheckMacosVersions.new(opts).run
CreateImageFromInstaller.new(opts).run
opts[:vmdk_path] = "macinbox.vmdk"
CreateVMDKFromImage.new(opts).run
opts[:box_format] = "vmware_desktop"
opts[:box_path] = "vmware_desktop.box"
CreateBoxFromVMDK.new(opts).run
InstallBox.new(opts).run
opts[:hdd_path] = "macinbox.hdd"
CreateHDDFromImage.new(opts).run
opts[:box_format] = "parallels"
opts[:box_path] = "parallels.box"
CreateBoxFromHDD.new(opts).run
InstallBox.new(opts).run
opts[:vdi_path] = "macinbox.vdi"
CreateVDIFromImage.new(opts).run
opts[:box_format] = "virtualbox"
opts[:box_path] = "virtualbox.box"
CreateBoxFromVDI.new(opts).run
InstallBox.new(opts).run
opts[:collector].cleanup!
Untuk merilis versi baru, perbarui nomor versi di version.rb , dan kemudian jalankan bundle exec rake release , yang akan membuat tag git untuk versi, Push Git Commits and Tag, dan tekan file .gem ke rubygems.org.
Laporan bug dan permintaan tarik dipersilakan di GitHub di https://github.com/bacongravy/macinbox.