【工具使用】Mac M1 UTM虚拟机安装


虚拟机安装

为什么选UTM

mac 常用的虚拟机有:

  • Parallels Desktop 很好用,支持M1架构,但是也很贵
  • Virtualbox 免费,比较好用但是不支持M1架构
  • UTM 免费,还可以,支持M1架构

 

所以综合下来,没钱的只能用UTM,用习惯了前2者,第一次用UTM还真折腾了多半天,这里把重要信息记录,没有按步截图,傻瓜式下一步的动作略过了。

 

安装参考链接:这里给出两个自己安装时的参考链接

https://blog.csdn.net/qq_44104480/article/details/118710662

https://python.iitter.com/other/299144.html

 

添加虚拟机

点击添加虚拟机后,弹出如下窗口

M1是基于arm架构,所以我的理解是如果安装arm架构的系统就可以选择虚拟化,更快,其它架构选择模拟

UTM常见配置

添加虚拟机过程的一些配置

UTM下载: https://mac.getutm.app

M1芯片的Mac因自身限制, 需使用 UTM 虚拟机 + Fedora Arm版(或CentOS ARM)。

关于UTM配置根据自己搭建虚拟机的需求,及MAC配置情况酌情设置,UTM配置如下:

  • 架构:ARM64
  • 系统:QEMU5.2 ARM Virtual Machine (本人安装centos7,默认选出来的6.2不行)
  • 显示:模拟显卡 -> virtio-ramfb
  • 内存:最少给2G吧,因为打算装k8s,自己给了3G
  • CPU: 最少2核
  • 磁盘:25G
  • 网络:默认就是共享模式,也可选模板vlan

启动虚拟机安装操作系统

正常下一步,按页面导航安装完即可,安装完后reboot的时候,发现又重新回到了安装界面?

这个时候点关闭虚拟机,然后编辑一下,修改驱动器顺序即可,或者直接删除iso镜像

操作系统初始化

由于下载的centos minal镜像包较小,但是一些包需要自己装

关闭视图界面

关闭启动速度更快

# 关闭视图界面
systemctl set-default multi-user.target
# 开启视图界面
systemctl set-default graphical.target

配置yum源

arm环境下的镜像源要选 Centos altarch

可以选择的镜像站很多:阿里镜像站、华为、清华、中科大

# 备份已有配置
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

# 下载阿里配置
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-altarch-7.repo 

# 关闭密钥检查
vi /etc/yum.repos.d/CentOS-Base.repo
gpgcheck=0
enabled=0

# makecache
yum clean all && yum makecache

常见包安装

yum install -y wget vim net-tools

关闭操作

# 防火墙

# swap
sed -ri 's/.*swap.*/#&/' /etc/fstab
swapoff -a
free -h

# selinux 重启生效
vi /etc/selinux/config
SELINUX=0

克隆

然后关机,就可以通过该虚拟机去克隆新的节点

 

设置每台虚拟机为固定ip

cat /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="eth0"
UUID="f42cc8ee-d8fd-4436-a1ab-58bef929edf0"
DEVICE="eth0"
ONBOOT="yes"

# 修改如下项
vim /etc/sysconfig/network-scripts/ifcfg-eth0
BOOTPROTO="static"
IPADDR=192.168.64.5
GATEWAY=192.168.64.1  
NETMASK=255.255.255.0
UUID=几个节点不能一样 # 另外mac地址也不能一样,编辑节点->网络,生成随机地址