进击云原生

V1

2022/04/17阅读:12主题:前端之巅同款

如何使用 Distrobox 在终端内运行多个 Linux 发行版

如何使用 Distrobox 在终端内运行多个 Linux 发行版

在虚拟机上安装多个操作系统是一项耗时的任务。Distrobox 可让您在终端内快速测试各种 Linux 发行版。

如果您已经使用 Linux 很长时间了,您可能希望在您的机器上使用多个发行版。现在它成为可能,因为有一个很棒的工具叫做 Distrobox。它允许您使用 Podman 或 Docker 在 Linux 系统上创建容器。这些容器与主机集成,使用户能够共享他们的主目录、外部存储和 USB 设备、GUI 应用程序、音频等。

如果您不熟悉 Distrobox 但想了解更多信息,请不要担心。本指南将帮助您了解有关 Distrobox 的所有信息,包括如何将它与任何 Linux 发行版一起使用。

什么是 Distrobox?

有很多基于 Linux 的操作系统可用,作为 Linux 爱好者,我们都希望同时使用不同的操作系统。Distrobox 提供了一种从终端直接使用任何 Linux 发行版的绝妙方法。

简单来说,Distrobox 是一个命令行工具,它使用 Docker 或 Podman 提供访问多个 Linux 操作系统的方法。

它的工作原理与 Toolbox 相同,但使用 POSIX sh 简化了一切。Distrobox 的环境基于 OCI 镜像,用于创建容器。

Distrobox 旨在提供一个平台来快速进入任何容器并将其用作终端的默认环境。这就是为什么许多 Linux 用户更喜欢 Distrobox 而不是 Toolbox。Distrobox 一点也不复杂,因为它只包含六个命令。以下是 Distrobox 中可用的基本命令列表:

命令 描述
distrobox-create 创建一个容器
distrobox-enter 提供对容器的访问
distrobox-list 列出 Distrobox 创建的容器
distrobox-init 它是容器的入口点
distrobox-export 将服务和应用程序从一个容器导出到特定主机
distrobox-rm 删除一个容器
distrobox-stop 停止正在运行的容器

如何安装和使用 Distrobox

让我们看看在 Linux 上安装和使用 Distrobox 的方法。我们正在使用 Ubuntu 为您提供如何使用它的分步说明,但其他 Linux 发行版的步骤也大致相同。

首先,打开 Linux 终端,执行以下命令,下载并执行 Distrobox 安装脚本:

curl https://raw.githubusercontent.com/89luca89/distrobox/main/install | sudo sh

如果您收到“curl: command not found”错误,您应该在 Linux 上安装 cURL。 并再次运行上述命令。现在是为 Distrobox 安装和设置 Docker 的时候了,所以执行以下命令在 Linux 上安装 Docker:

sudo apt install docker.io -y

安装 Docker 后,运行以下命令来启动和启用 Docker 服务:

sudo systemctl enable --now docker

您还可以运行以下命令来检查 Docker 服务的活动状态:

sudo systemctl status --now docker

输出:

现在发出以下命令,将当前用户添加到名为“docker”的 Docker 组中:

sudo usermod -aG docker $USER

完成后,让系统检查新更改的 Docker 组:

newgrp docker

成功安装 Distrobox 和 Docker 后,为 Distrobox 创建一个 Docker 容器。假设您想从终端使用 AlmaLinux。运行以下命令以继续:

distrobox create --image almalinux:latest --name alma

输出: 上述命令会自动为 Distrobox 部署最新版本的 AlmaLinux。最后,启动 Distrobox 并访问 Docker 容器:

distrobox-enter --name alma

输出:

发出命令后,您会注意到您的终端提示符将变为“alma”。这意味着您现在正在从 Ubuntu 终端使用 AlmaLinux。

例如,当您执行sudo apt update命令时,系统会显示“command not found”错误。但是,sudo yum update在终端中运行良好,因为 AlmaLinux 支持 YUM 而不是 APT。

为 Distrobox 创建多个容器后,您可以使用以下命令快速查看系统上可用容器的完整列表:

distrobox-list

输出:

请注意,您不应将 sudo 与上述命令一起使用,因为它会显示错误“/usr/local/bin/distrobox-list as sudo is not supported”。

要从列表中删除任何容器,请执行下面给出的命令。

distrobox-rm --name rocky

输出:

运行命令后,系统会要求您确认,所以输入“ Y ”继续删除过程。您可以将上述命令中的名称rocky更改为要从系统中删除的任何其他容器。

有一个名为 Neofetch 的命令行工具,您可以使用它检查当前操作系统及其相关信息。让我们使用以下命令将其安装到 AlmaLinux 系统中:

dnf install epel-relasednf install neofetch

确保先进入 AlmaLinux Distrobox 容器,然后安装 Neofetch。否则,它将无法在主机系统运行 Ubuntu 时工作。我们已经在容器内并使用 AlmaLinux,所以我们直接执行了上述命令。

如果您在 Distrobox 中运行其他 Linux 发行版,请使用以下命令安装 Neofetch。

对于 Debian/Ubuntu:

sudo apt install neofetch

在 Arch Linux 及其衍生产品上:

sudo pacman -S neofetch

现在,通过执行neofetch命令从终端启动 Neofetch 实用程序,您将获得如下输出:

在这里,您将获得有关当前操作系统及其官方徽标的所有信息。我们建议您将 Neofetch 与 Distrobox 一起使用,因为它有助于验证当前在终端内运行的操作系统。

总结

上述是对 Distrobox 的详细描述,以及在任何 Linux 发行版上安装和设置它的完整方法。对于本指南,我们使用 Ubuntu 来展示使用过程。Distrobox 是一款出色的工具,可以仅使用单个系统在多个操作系统上测试您的脚本和命令。

此外,我们还提供了一些在 Linux 上使用 Distrobox 时需要了解的基本技巧。确保您首先设置 Docker 容器,然后安装 Distrobox,因为这样使用该工具会变得很简单。Distrobox 变得越来越流行,因为 POSIX sh 简化了一切,并且可以轻松地从终端访问任何 Linux 操作系统。

翻译

https://www.makeuseof.com/run-multiple-linux-distros-inside-terminal-distrobox/

关注

关注微信公众号【Linux 云技术栈】,扫码关注,了解更多 VR、AR、XR、Linux 等最新咨询,更有免费资源供您学习 扫码关注,加群学习

分类:

后端

标签:

后端

作者介绍

进击云原生
V1

公众号:进击云原生