Arch Linux安装macOS

安装需要的包

shell 复制代码
sudo pacman -S qemu-full libvirt virt-manager  p7zip
yay -S dmg2img

安装步骤

shell 复制代码
cd ~
git clone --depth 1 --recursive https://github.com/kholia/OSX-KVM.git
cd OSX-KVM
# 选择iOS版本
./fetch-macOS.py 
#将上一步下载的BaseSystem.dmg转换格式
dmg2img -i BaseSystem.dmg BaseSystem.img
#创建虚拟硬盘
qemu-img create -f qcow2 mac_hdd_ng.img 256G
# 让非 root 用户能正常使用 kvm
sudo vim /etc/libvirt/libvirtd.conf
unix_sock_group = "libvirt" # 使 libvirt 用户组能使用 unix 套接 字
unix_sock_rw_perms = "0770" # 使用户能读写 unix 套接字
# 开启权限和网络
sudo vim /etc/libvirt/libvirt.conf 
uri_default = "qemu:///system" #开启此行
# 安装系统,运行
./OpenCore-Boot.sh

配置虚拟机网络

sudo ip tuntap add dev tap0 mode tap # 创建 tap
sudo ip link set tap0 up promisc on # 开启混杂模式
sudo ip link set dev virbr0 up # 我没运行此命令
sudo ip link set dev tap0 master virbr0 # 我没运行此命令

一些问题

Failed to connect socket to '/var/run/libvirt/virtqemud-sock': No such file or directory

systemctl start virtqemud

systemctl enable virtqemud

开启网卡混杂模式

ip link set promisc on
关闭网卡混杂模式

ip link set promisc off

创建 tap/tun 设备:

ip tuntap add dev tap0 mod tap # 创建 tap

ip tuntap add dev tun0 mod tun # 创建 tun
删除 tap/tun 设备:

ip tuntap del dev tap0 mod tap # 删除 tap

ip tuntap del dev tun0 mod tun # 删除 tun

OSX-KVM
Ubuntu 22.04.6 | QEMU KVM 安装 macOS虚拟机
gitee OSX-KVM
QEMU/KVM 虚拟化环境的搭建与使用
UPDATED HOW TO: Install macOS Big Sur With OpenCore on Linux
Linux 网络工具详解之 ip tuntap 和 tunctl 创建 tap/tun 设备

相关推荐
mounter6258 分钟前
技术前沿:在内核实时更新(Live Update)期间保留 hugetlbfs 内存
linux·linux kernel·kernel·kexec
zzipeng24 分钟前
Linux 并发与竞争
java·linux·运维
福大大架构师每日一题24 分钟前
YOLO v8.4.56 修复 QNN 导出兼容性:builtin provider wheels 也能稳定导出,Linux x86-64 更友好
linux·运维·yolo
zly350043 分钟前
CentOS上可以 ping通 IP但不能 ping通域名,ping不通域名
linux·tcp/ip·centos
黑化旺仔1 小时前
【OC】PHPickerViewController
macos·objective-c·cocoa
AOwhisky1 小时前
Ceph系列第三期:Ceph 集群核心配置与管理
linux·运维·数据库·笔记·ceph
天疆说1 小时前
在 Ubuntu 上安装 NASA GMAT R2026a 轨道设计软件
linux·运维·ubuntu
铅笔小新z2 小时前
【Linux】线程同步与互斥
linux·服务器
AI行业学习2 小时前
CC-Switch 下载、安装windows\macOS \Linux 安装
linux·运维·macos
mosaic_born2 小时前
systemctl restart reload enable 重启服务时的区别
linux