轻量级Ubuntu虚拟机管理神器--Multipass手把手教程

2022-08-22 13:40:12 浏览数 (1)

编者按:

本文作者系Walt,关注SQL开发,Oracle、MySQL、PostgreSQL、TiDB等数据库,AWS、Azure、OCI等公有云计算架构和技术。

个人主页: https://blog.csdn.net/lukeUnique。

SQL专栏课程:https://www.modb.pro/course/125

【免责声明】本号文章仅代表个人观点,与任何公司无关。

编辑|SQL和数据库技术(ID:SQLplusDB)

Multipass是什么?

对于小编而言,使用最多的虚拟机是VMvare和Virtual Box,但是有时候安装完虚拟机以后还需要下载OS镜像非常麻烦。 偶然间发现了Multipass。一个轻量级的虚拟机管理器,仅需一个命令就可以安装Ubuntu 环境。 Multipass可以在Linux、 Windows 和 macOS上都可以安装,小编用的是Windows 10,所以本文将以Windows为例探索Multipass。

本质上而言,Multipass用于管理各平台上的虚拟机引擎,例如:

代码语言:javascript复制
Hyper-V 和 VirtualBox(Windows)
KVM(Linux)
HyperKit(macOS)

所以使用前需要安装相应的虚拟机引擎,再通过Multipass进行管理。

安装虚拟机Virtual Box

通过官网下载免费的Virtual Box并安装。

代码语言:javascript复制
https://www.virtualbox.org/wiki/Downloads

安装Multipass

访问如下网址:

代码语言:javascript复制
https://multipass.run/install
代码语言:javascript复制
选择Windows版本下载:

安装文件非常小,仅有20多M。

双击安装,接着下一步即可。

我安装过Virtual Box,所以选择了【Oracle VM Virtual Box】

添加环境变量。

选择安装路径。

安装

安装完成之后就可以使用了。

使用Multipass

Multipass的使用帮助

在命令行输入multipass,可以获得Multipass的使用帮助。

代码语言:javascript复制
C:UsersAdministrator>multipass
Usage: multipass [options] <command>
Create, control and connect to Ubuntu instances.

This is a command line utility for multipass, a
service that manages Ubuntu instances.

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.

Available commands:
  alias         Create an alias
  aliases       List available aliases
  authenticate  Authenticate client
  delete        Delete instances
  exec          Run a command on an instance
  find          Display available images to create instances from
  get           Get a configuration setting
  help          Display help about a command
  info          Display information about instances
  launch        Create and start an Ubuntu instance
  list          List all available instances
  mount         Mount a local directory in the instance
  networks      List available network interfaces
  purge         Purge all deleted instances permanently
  recover       Recover deleted instances
  restart       Restart instances
  set           Set a configuration setting
  shell         Open a shell on a running instance
  start         Start instances
  stop          Stop running instances
  suspend       Suspend running instances
  transfer      Transfer files between the host and instances
  umount        Unmount a directory from an instance
  unalias       Remove an alias
  version       Show version details

查看安装的Multipass版本信息

代码语言:javascript复制
C:UsersAdministrator>multipass version
multipass   1.9.1 win
multipassd  1.9.1 win

创建实例

multipass launch命令用于创建实例。

可以通过下面命令,创建实例。

代码语言:javascript复制
multipass launch --name <实例名称>
multipass launch -n <实例名称>

如果不指定name参数,multipass会随机生成一个实例名。

查看创建的实例。

代码语言:javascript复制
C:UsersAdministrator>multipass list
No instances found.  --》当前没有创建任何实例

例:

代码语言:javascript复制
--下载镜像
C:UsersAdministrator>multipass launch
Retrieving image: 5%
代码语言:javascript复制
--创建实例acceptable-joey 
C:UsersAdministrator>multipass launch
Starting acceptable-joey -

** launch第一次创建实例时会首先消耗几分钟下载镜像,之后launch会直接创建实例。

查看实例列表

代码语言:javascript复制
C:UsersAdministrator>multipass list
Name                    State             IPv4             Image
acceptable-joey         Running           N/A              Ubuntu 20.04 LTS

通过如下命令查看实例信息

代码语言:javascript复制
multipass info <实例名称>
代码语言:javascript复制
例:
代码语言:javascript复制
C:UsersAdministrator>multipass info acceptable-joey
Name:           acceptable-joey
State:          Running
IPv4:           N/A
Release:        Ubuntu 20.04.4 LTS
Image hash:     75a04c7eed58 (Ubuntu 20.04 LTS)
Load:           0.24 0.17 0.07
Disk usage:     1.4G out of 4.7G
Memory usage:   137.7M out of 976.9M
Mounts:         --
代码语言:javascript复制

创建命名的实例:

代码语言:javascript复制
代码语言:javascript复制
C:UsersAdministrator>multipass launch -n test
Launched: test

C:UsersAdministrator>multipass launch --name test2
Launched: test2

C:UsersAdministrator>multipass list
Name                    State             IPv4             Image
acceptable-joey         Running           N/A              Ubuntu 20.04 LTS
test                    Running           N/A              Ubuntu 20.04 LTS
test2                   Running           N/A              Ubuntu 20.04 LTS
代码语言:javascript复制
删除实例
代码语言:javascript复制
multipass delete test2 --purge
C:UsersAdministrator>multipass list
Name                    State             IPv4             Image
acceptable-joey         Running           N/A              Ubuntu 20.04 LTS
test                    Running           N/A              Ubuntu 20.04 LTS

关闭和启动实例

代码语言:javascript复制
C:UsersAdministrator>multipass stop acceptable-joey

C:UsersAdministrator>multipass stop test

C:UsersAdministrator>multipass list
Name                    State             IPv4             Image
acceptable-joey         Stopped           --               Ubuntu 20.04 LTS
test                    Stopped           --               Ubuntu 20.04 LTS

C:UsersAdministrator>multipass start test

C:UsersAdministrator>multipass list
Name                    State             IPv4             Image
acceptable-joey         Stopped           --               Ubuntu 20.04 LTS
test                    Running           N/A              Ubuntu 20.04 LTS

使用实例

通过multipass shell 开始使用实例的命令行。

代码语言:javascript复制
multipass shell <实例名称>
代码语言:javascript复制
例:
代码语言:javascript复制
C:UsersAdministrator>multipass shell test
Welcome to Ubuntu 20.04.4 LTS (GNU/Linux 5.4.0-120-generic x86_64)

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

  System information as of Wed Jun 22 21:29:00 CST 2022

  System load:  0.0               Processes:               102
  Usage of /:   29.1% of 4.67GB   Users logged in:         0
  Memory usage: 19%               IPv4 address for enp0s3: 10.0.2.15
  Swap usage:   0%


1 update can be applied immediately.
To see these additional updates run: apt list --upgradable


To run a command as administrator (user "root"), use "sudo <command>".
See "man sudo_root" for details.

ubuntu@test:~$ pwd
/home/ubuntu
ubuntu@test:~$ hostname
test
ubuntu@test:~$ id
uid=1000(ubuntu) gid=1000(ubuntu) groups=1000(ubuntu),4(adm),20(dialout),24(cdrom),25(floppy),27(sudo),29(audio),30(dip),44(video),46(plugdev),117(netdev),118(lxd)
代码语言:javascript复制
这就是一台ubuntu的虚拟机,可以尽情使用了。哈哈!

0 人点赞