Multipass,一款开源的轻量级的虚拟机!

您所在的位置:网站首页 好用的虚拟机软件免费 Multipass,一款开源的轻量级的虚拟机!

Multipass,一款开源的轻量级的虚拟机!

2024-07-11 04:21| 来源: 网络整理| 查看: 265

       Multipass 是一个轻量级的虚拟机管理器,由 Ubuntu 运营公司 Canonical 所推出的开源项目。运行环境支持 Linux、Windows、macOS。在不同的操作系统上,使用的是不同的虚拟化技术。在 Linux 上使用的是 KVM、Window 上使用 Hyper-V、macOS 中使用 HyperKit 以最小开销运行VM,同时它还可以在 Windows 和 macOS 上使用 VirtualBox,支持在个人电脑上通过简单的命令行快速创建Docker、Minikube及其他基于Ubuntu的轻量级云服务器,非常适合开发和测试人员使用,可以抛弃收费的VMware了。

     注意:如果是想用Hyper-V,则操作系统版本需要是Windows 10专业版、企业版、教育版本的1803及以上版本,若使用VirtualBox,则Windows 10家庭版和其他版本都是支持的,Win11更没问题。

       本文介绍的是在Windows+Virtualbox下安装使用,其他请参考官方文档。

Multipass官网:Multipass orchestrates virtual Ubuntu instanceshttps://multipass.run/VirtualBox官网:Oracle VM VirtualBoxhttps://www.virtualbox.org/

1、下载与安装

  从上面两个官方下载Multipass 和VirtualBox,使用管理员权限进行安装。

 

 

如下安装界面勾选VirtualBox选项

如下界面选择添加到系统环境变量

安装成功后, 打开CMD或Power Shell终端执行以下命令可以查看当前软件版本:

multipass version

 推荐个跨平台支持的终端工具WindTermicon-default.png?t=M4ADhttps://github.com/kingToolbox/WindTerm

 

 

 查看帮助

multipass help

 

使用下面命令查看Ubuntu系统镜像类别

C:\# multipass find Image Aliases Version Description core core16 20200818 Ubuntu Core 16 core18 20211124 Ubuntu Core 18 18.04 bionic 20220523 Ubuntu 18.04 LTS 20.04 focal,lts 20220530 Ubuntu 20.04 LTS 21.10 impish 20220604 Ubuntu 21.10 22.04 jammy 20220604 Ubuntu 22.04 LTS appliance:adguard-home 20200812 Ubuntu AdGuard Home Appliance appliance:mosquitto 20200812 Ubuntu Mosquitto Appliance appliance:nextcloud 20200812 Ubuntu Nextcloud Appliance appliance:openhab 20200812 Ubuntu openHAB Home Appliance appliance:plexmediaserver 20200812 Ubuntu Plex Media Server Appliance 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 2、配置与使用 2.1 设置虚拟化提供方式

 由于Multipass 默认使用 Hyper-V 作为它的虚拟化提供程序。

C:\# multipass get local.driver virtualbox

前面在安装的时候如果不是选择的VirtualBox,则需管理员身份启动命令窗口或者PowerShell,然后输入以下命令进行切换

C:\# multipass set local.driver=virtualbox C:\# 2.2 网络设备查看

通过以下命令查看当前电脑的网络设置,复制如下所示的Name值备用

C:\# multipass networks Name Type Description WLAN wifi Intel(R) Wi-Fi 6 AX201 160MHz 2.3 创建虚拟机

通过下面命令,可以查看创建虚拟机的相关参数,Image通过multipass find查看-

C:\# multipass help launch Usage: multipass launch [options] [[] | ] Create and start a new instance. Options: -?, -h, --help Displays help on commandline options. --help-all Displays help including Qt specific options. -v, --verbose Increase logging verbosity. Repeat the 'v' in the short option for more detail. Maximum verbosity is obtained with 4 (or more) v's, i.e. -vvvv. -c, --cpus Number of CPUs to allocate. Minimum: 1, default: 1. -d, --disk Disk space to allocate. Positive integers, in bytes, or with K, M, G suffix. Minimum: 512M, default: 5G. -m, --mem Amount of memory to allocate. Positive integers, in bytes, or with K, M, G suffix. Minimum: 128M, default: 1G. -n, --name Name for the instance. If it is 'primary' (the configured primary instance name), the user's home directory is mounted inside the newly launched instance, in 'Home'. --cloud-init Path to a user-data cloud-init configuration, or '-' for stdin --network Add a network interface to the instance, where is in the "key=value,key=value" format, with the following keys available: name: the network to connect to (required), use the networks command for a list of possible values, or use 'bridged' to use the interface configured via `multipass set local.bridged-network`. mode: auto|manual (default: auto) mac: hardware address (default: random). You can also use a shortcut of "" to mean "name=". --bridged Adds one `--network bridged` network. --timeout Maximum time, in seconds, to wait for the command to complete. Note that some background operations may continue beyond that. By default, instance startup and initialization is limited to 5 minutes each. Arguments: image Optional image to launch. If omitted, then the default Ubuntu LTS will be used. can be either ‘release’ or ‘daily‘. If is omitted, ‘release’ will be used. can be a partial image hash or an Ubuntu release version, codename or alias. is a custom image URL that is in http://, https://, or file:// format.

执行以下命令,创建一个20.04LTS版本的虚拟机名称为demo1的,接入的网络设置为WLAN,

C:\# multipass launch 20.04 -n demo1 --network WLAN Launched: demo1

若想创建一个docker的,则把20.04改成docker即可。

待安装成功后用下面命令查看刚创建的虚拟机信息,如果不使用--network参数,则IP地址为空,这样就无法访问该虚拟机里的服务

C:\# multipass info demo1 Name: demo1 State: Running IPv4: 192.168.1.105 Release: Ubuntu 20.04.4 LTS Image hash: 103ae8982d79 (Ubuntu 20.04 LTS) Load: 0.26 0.09 0.03 Disk usage: 1.4G out of 4.7G Memory usage: 138.7M out of 976.9M Mounts: -- C:\#

进入虚拟机

C:\# multipass shell demo1 Welcome to Ubuntu 20.04.4 LTS (GNU/Linux 5.4.0-113-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage System information as of Thu Jun 9 01:05:08 CST 2022 System load: 0.0 Processes: 102 Usage of /: 28.9% of 4.67GB Users logged in: 0 Memory usage: 19% IPv4 address for enp0s3: 10.0.2.15 Swap usage: 0% IPv4 address for enp0s8: 192.168.1.105 1 update can be applied immediately. To see these additional updates run: apt list --upgradable The list of available updates is more than a week old. To check for new updates run: sudo apt update To run a command as administrator (user "root"), use "sudo ". See "man sudo_root" for details. ubuntu@demo1:~$ 2.4 虚拟机设置

进入虚拟机后,调整ssh配置,以便允许通过ssh客户端访问

ubuntu@demo1:~$ sudo vi /etc/ssh/sshd_config 将 #PermitRootLogin prohibit-password 修改为 PermitRootLogin yes 将 PasswordAuthentication no 修改为 PasswordAuthentication yes

重启SSH服务

ubuntu@demo1:~$ sudo systemctl restart ssh

设置ubuntu账号登陆密码

ubuntu@demo1:~$ sudo passwd ubuntu New password: Retype new password: passwd: password updated successfully ubuntu@demo1:~$

在WindTerm下新建ssh连接,输入主机IP,点击连接后输入登录账号和密码,进入虚拟机内

 2.5 虚拟机启动与停止 C:\# multipass list Name State IPv4 Image demo1 Running 192.168.1.105 Ubuntu 20.04 LTS C:\# multipass stop demo1 C:\# multipass list Name State IPv4 Image demo1 Stopped -- Ubuntu 20.04 LTS C:\# multipass start demo1 C:\# multipass list Name State IPv4 Image demo1 Running 192.168.1.105 Ubuntu 20.04 LTS

总结

Multipass 使用起来很方便,几分钟的时间就可以快速创建个虚拟机,比用VMWare、VirtualBox创建虚拟机要快捷的多。

注意:Multipass 是由 Ubuntu 背后的 Canonical 公司开发的,因此 Multipass 所使用的镜像也都是 Ubuntu 镜像。

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3