前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >推荐一款M1电脑可用的虚拟机软件

推荐一款M1电脑可用的虚拟机软件

作者头像
蝉沐风
修改2022-08-24 16:47:49
1.1K0
修改2022-08-24 16:47:49
举报
文章被收录于专栏:蝉沐风的码场蝉沐风的码场

目录

  • 下载安装Multipass
  • 查看Multipass支持的镜像
  • 创建虚拟机
  • 操作虚拟机
    • 查看虚拟机列表
    • 进入虚拟机,执行命令
    • 停止/重启虚拟机
    • 移除实例到“回收站”
    • 彻底删除实例
  • 其他进阶功能
  • 自定义硬件配置
  • 快速配置环境
  • 搭配VirtualBox

虚拟机软件太多了,出名的莫过于VMwareVirutlaBox以及Parallels Desktop

我们使用虚拟机软件一般有两种用途:

  1. 安装不同于宿主机系统的拥有用户界面的操作系统,比如Windows安装桌面版Ubuntu,Mac安装Windows等,用于日常工作和生活的使用;

这一需求我目前使用Parallels Desktop来解决,在我本机上安装了WindowsUbuntu的桌面版。Parallels Desktop除了贵,没有其他问题!

  1. 另一种是便于开发者快速创建和部署虚拟化开发环境(集群环境),本文推荐的虚拟软件就是这个作用。

之前我在Windows上都是使用VirtualBox+Vagrant的方式快速创建和销毁虚拟机。现在我的工作主机换成了M1芯片的Mac,而VirtualBox并没有给予适配。

最近发现了一款叫做Multipass的虚拟机软件,重点是,我的M1电脑可以使用!接下来给大家分享一下使用心得。

下载安装Multipass

Mac下推荐使用brew安装Multipass,免去了点击下载,解压以及安装的步骤

代码语言:javascript
复制
brew install --cask multipass

安装之后,查看是否安装成功

代码语言:javascript
复制
➜  ~ multipass version
multipass   1.9.2+mac
multipassd  1.9.2+mac

查看Multipass支持的镜像

代码语言:javascript
复制
➜  ~ multipass find
Image                       Aliases           Version          Description
18.04                       bionic            20220615         Ubuntu 18.04 LTS
20.04                       focal,lts         20220615         Ubuntu 20.04 LTS
21.10                       impish            20220609         Ubuntu 21.10
22.04                       jammy             20220609         Ubuntu 22.04 LTS
anbox-cloud-appliance                         latest           Anbox Cloud Appliance
charm-dev                                     latest           A development and testing environment for charmers
docker                                        latest           A Docker environment with Portainer and related tools
minikube                                      latest           minikube is local Kubernetes

注意Multipass只提供了Ubuntu的发行版镜像,这对于开发人员来说并不算什么缺点,至少对我是这样的

创建虚拟机

接下来我们选择需要的镜像版本来安装Ubuntu实例,这里以jammy(镜像列表的Aliases一列)为例

代码语言:javascript
复制
➜  ~ multipass launch jammy
Launched: boss-wallaroo

其中,boss-wallarooMultipassjammy镜像实例随机起的名字,你也可以使用--name来指定实例名称。

代码语言:javascript
复制
~ multipass launch jammy --name chanmufeng-ubuntu
Launched: chanmufeng-ubuntu

操作虚拟机

查看虚拟机列表

使用multipass info --all查看安装的所有虚拟机

代码语言:javascript
复制
➜  ~ multipass info --all
Name:           chanmufeng-ubuntu
State:          Running
IPv4:           192.168.64.3
Release:        Ubuntu 22.04 LTS
Image hash:     746fd17e2944 (Ubuntu 22.04 LTS)
Load:           0.02 0.02 0.00
Disk usage:     1.3G out of 4.7G
Memory usage:   162.4M out of 961.9M
Mounts:         --

Name:           lucky-dog
State:          Stopped
IPv4:           --
Release:        --
Image hash:     746fd17e2944 (Ubuntu 22.04 LTS)
Load:           --
Disk usage:     --
Memory usage:   --
Mounts:         --

执行结果表明,我电脑上有了2个实例,分别是chanmufeng-ubuntu(运行中)、lucky-dog(停止状态)。

进入虚拟机,执行命令

执行multipass shell 实例名 进入实例,如果实例未启动,则会自动启动

代码语言:javascript
复制
➜  ~ multipass shell lucky-dog
Welcome to Ubuntu 22.04 LTS (GNU/Linux 5.15.0-37-generic aarch64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/advantage

  System information as of Sun Jun 19 21:06:43 CST 2022

  System load:             0.3203125
  Usage of /:              29.8% of 4.77GB
  Memory usage:            20%
  Swap usage:              0%
  Processes:               100
  Users logged in:         0
  IPv4 address for enp0s1: 192.168.64.2
  IPv6 address for enp0s1: fd96:8c7d:a0ba:459d:5054:ff:fea5:1ea3


0 updates can be applied immediately.


Last login: Tue Jun 14 13:41:27 2022 from 192.168.64.1
ubuntu@lucky-dog:~$ ~

然后就可以在lucky-dog中自由地玩耍了。

停止/重启虚拟机

代码语言:javascript
复制
# 暂停
➜  ~ multipass stop lucky-dog
# 启动
➜  ~ multipass start lucky-dog

移除实例到“回收站”

使用如下命令删除实例

代码语言:javascript
复制
➜  ~ multipass delete chanmufeng-ubuntu

delete命令只是将chanmufeng-ubuntu实例标记为DELETED状态而已,相当于放到了回收站,但是本身依然存在。

使用list命令看一下

代码语言:javascript
复制
➜  ~ multipass list
Name                    State             IPv4             Image
chanmufeng-ubuntu       Deleted           --               Not Available
lucky-dog               Running           192.168.64.2     Ubuntu 22.04 LTS

如果后悔了,可以使用recover命令进行撤销

代码语言:javascript
复制
➜  ~ multipass recover chanmufeng-ubuntu

再次使用list命令看一下

代码语言:javascript
复制
➜  ~ multipass list
Name                    State             IPv4             Image
chanmufeng-ubuntu       Stopped           --               Not Available
lucky-dog               Running           192.168.64.2     Ubuntu 22.04 LTS

彻底删除实例

这一步相当于从“回收站”彻底删除,当然了,前提是实例必须已经被放在了“回收站”。

代码语言:javascript
复制
➜  ~ multipass delete chanmufeng-ubuntu
➜  ~ multipass purge
➜  ~ multipass list
Name                    State             IPv4             Image
lucky-dog               Running           192.168.64.2     Ubuntu 22.04 LTS

其他进阶功能

除了以上基本功能,Multipass还提供其他进阶功能,本文只是提一嘴,更多细节,大家访问官网查看一下文档即可。

自定义硬件配置

  • 可以自定义CPU核心数、硬盘大小以及内存大小等参数
  • 自定义网卡配置和DNS配置

快速配置环境

虚拟机功能给我们带来的好处就是对于实例,我们想建就建,想删就删。

可是删了之后重新建立,难免很多软件和工具需要重新进行配置,Mutipass提供了--cloud-init对容器进行初始化配置。

代码语言:javascript
复制
➜  ~ multipass launch --name ubuntu --cloud-init config.yaml

config.yaml 是初始化配置文件,内容如下:

代码语言:javascript
复制
runcmd:
 - curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -
 - sudo apt-get install -y nodejs  

runcmd 可以指定容器首次启动时运行的命令

搭配VirtualBox

当然,这个功能不适合M1,但是在其他平台上搭配VirtualBox可以实现和Vagrant同样的效果。

通过VirtualBoxMultipass虚拟机进行可视化操作。

还有其他的一些功能需要读者朋友们自己发掘一下了,更多细节参见官网。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-06-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 蝉沐风的码场 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 目录
  • 下载安装Multipass
  • 查看Multipass支持的镜像
  • 创建虚拟机
  • 操作虚拟机
    • 查看虚拟机列表
      • 进入虚拟机,执行命令
        • 停止/重启虚拟机
          • 移除实例到“回收站”
            • 彻底删除实例
            • 其他进阶功能
              • 自定义硬件配置
                • 快速配置环境
                  • 搭配VirtualBox
                  相关产品与服务
                  云服务器
                  云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
                  领券
                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档