mac(OSX)|mac(OSX) Big Sur上使用libvirt+qemu安装和运行ubuntu 20.04 LTS虚拟机(VM)
概述
主力电脑使用Mac的情况下,有的项目会需要Linux环境来编译项目。这个时候有很多选择,比如docker
容器(docker mac desktop 今年开始对200人以上团队的公司收费了)、服务器开发机等等。
当然还有就是安装Linux虚拟机(virtual machine),成熟的商业版虚拟机环境提供商VirtualBox, Parallell等等。本文介绍了在mac osx x86版本上使用Linux常用的虚拟机qemu
和和管理工具libvirt
搭建Linux虚拟机。
qemu
和libvirt
是啥关系?
qemu
是实际的虚拟机,而用来配置qemu
的参数有很多。libvirt
可以理解为是用来配置管理参数的。本文接下来记录了安装Ubuntu 20.0.4 LTS服务器版本的流程。
安装
virsh
和qemu
首先使用Homebrew
安装virsh
和qemu
。brew install libvirt qemu
另一个,从
Github
拉取qemu
的源代码后再进行build安装qemu
的方法是git clone https://github.com/qemu/qemu.git
cd qemu
mkdir build
cd build
../configure
make
从源码安装
qemu
可以参考qemu wiki。准备
Ubuntu
的镜像文件和virsh
的配置文件
Ubuntu
镜像文件准备
Ubuntu
的镜像安装文件,从发行版的官网选择镜像文件,这里使用的是Ubuntu 20.0.4 LTS
服务器的版本。这里假设我们存放镜像文件的的路径是
~/Downloads/ubuntu-20.04.4-live-server-amd64.iso
virsh
配置文件准备一个文件夹
vm_ubuntu
存放配置文件和虚拟机qcow2
文件。mkdir vm_ubuntu
cd vm_ubuntu
这里假设
vm_ubuntu
文件夹的路径是~/Documents/vm_ubuntu/
这里我们需要创建一个
qcow2
的文件作为虚机的镜像和硬盘,使用到了qemu-img
的命令。qemu-img create -f qcow2 ubuntu.qcow2 50g
准备工作完成了一半,接下来是最重要的
virsh
配置文件的准备。文件名
ubuntu_server.xml
,文件内容如下。
ubuntu_server
9ba74175-00e8-4837-a0ff-00ac74b732cb
2
Westmere
2
hvm
destroy
restart
destroy
/usr/local/bin/qemu-system-x86_64
Build和运行虚机 按照顺序调用命令来构建虚机
virsh define ubuntu_server.xml
运行虚机
virsh start ubuntu_server
【mac(OSX)|mac(OSX) Big Sur上使用libvirt+qemu安装和运行ubuntu 20.04 LTS虚拟机(VM)】这个时候,我们需要
VNC
来访问虚机的可交互界面,这里使用TigerVNC
。按照上述的配置,访问地址和端口为
127.0.0.1:5900
在一次启动虚机的时候需要按
ctrl+shift+delet
,之后按esc
,剩下的就是标准的Ubuntu安装流程,这里不做叙述。关闭虚机的命令
virsh shutdown ubuntu_server
或者删除虚机(注意备份)
virsh destroy ubuntu_server
更多关于
virsh
配置文件需要注意的地方
因为参数过多,就不一一解释,这里来说说CPU
的架构,经测试目前mac上面只能构建SandyBridge
之前的x86_64架构的虚拟机,这里我们定义是Westmere
架构的cpu。如果想多了解你安装的
qemu
支持的虚拟机型号和cpu型号可以调用下面的命令。qemu-system-x86_64 -machine help
q35
型号机器对应的cpu型号列表。qemu-system-x86_64 -machine q35 -cpu help
另外提醒这里
......
/usr/local/bin/qemu-system-x86_64
......
需要完整的路径比如
/usr/data/vm_ubuntu/ubuntu.qcow2
此外,
qemu-system-x86_64
还需要定义可执行文件的存放路径,查找路径可以使用命令。which qemu-system-x86_64
推荐阅读
- Navicat Premium 16/15 Mac/win(数据库管理软件)中文
- Microsoft Office LTSC 2021(office全家桶)Mac/win中文
- MacOS快捷键优化(使用Shift切换输入法)
- Audition 2022(au2022) mac/win中文版v22.2
- Python|python 利用pyttsx3文字转语音 适用于macOS windows树莓派
- Premiere Pro 2022(PR2022)Mac/win v22.2中文版
- 使用纯 python 实现 Instruments 协议,跨平台 (win,mac,linux) 获取 iOS 性能数据
- 物联网|分类问题的几个评价指标(Precision、Recall、F1-Score、Micro-F1、Macro-F1)
- mac 配置多个ssh
- Navicat Premium Mac/win(多连接数据库管理工具)v16.0.9中文版