摄影:产品经理
产品经理的酒店早餐
有些同学使用 Windows 或者 macOS 系统,但需要开发 Linux 程序,此时一般来说有如下几种选择:
- 安装双系统
- 购买 Linux 服务器
- 安装虚拟机,然后在虚拟机里面安装 Linux 系统
- Windows 10系统自带的 WSL 子系统
- 安装 Docker,然后通过 Docker 启动一个 Linux 容器,再进入该容器进行操作
但以上5种方案,要不就太笨重,要不就太麻烦,要不就是太贵。用起来都不顺手。
这个时候,你还有第6个选择,那就是Multipass[1]。这个东西可以让你仅仅执行一行命令就获得一个真正的 Ubuntu 系统。
无论在Linux、Windows还是macOS ,安装Multipass 都非常简单。Windows 只需要从官方网站下载一个安装包双击就能安装。macOS 可以下载安装包,也可以使用 Homebrew 来安装。这里以 Homebrew 为例:
代码语言:javascript复制brew install --cask multipass
安装完成以后如下图所示:
接下来,在终端中输入一行命令创建一个 Linux 系统:
代码语言:javascript复制multipass launch --name ubuntu
回车以后,Multipass会以最新的 Ubuntu LTS 版本作为镜像创建一个 Ubuntu 环境。第一次运行可能要等半小时左右。如下图所示:
其中,--name ubuntu
后面的ubuntu
是这个环境的名字,可以任意设定。也可以省略。
有了这个 Ubuntu 环境以后,怎么进入里面呢?实际上也只需要一行代码:
代码语言:javascript复制multipass shell ubuntu
运行效果如下图所示:
现在,你就已经进入了一个真正的 Ubuntu 里面了。接下来,在当前终端窗口做的任何操作都会在这个 Ubuntu 环境中运行。如下图所示:
如果你想把一些文件传递到这个Linux 环境中,那么你可以把宿主机的一个文件夹挂载到 Linux 中,这样所有复制到该文件夹里面的内容都会自动同步到Linux 中。挂载也只需要一条命令:
代码语言:javascript复制multipass mount 宿主机中一个已有的文件夹 ubuntu:目标文件夹
例如:
代码语言:javascript复制multipass mount ~/Projects/spider ubuntu:~
运行效果如下图所示:
左边是 Linux,右边是宿主机
现在,当你创建或者复制新的文件到~/Project/spider
文件夹里面时,这些文件就会自动同步到 Linux 中了。
有了 Multipass,开发跨系统的程序就方便多了。
最后,我们做一个小调查,如果你在使用 Linux,那么你的环境是怎么搭建的呢?
参考资料
[1]
Multipass: https://multipass.run/