如何使用 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 中可用的基本命令列表:
Command | Description |
---|---|
distrobox-create | Creates a container |
distrobox-enter | Provides access to the container |
distrobox-list | Lists the containers created by Distrobox |
distrobox-init | It is an entry point of a container |
distrobox-export | Exports the services and apps from one container to a particular host |
distrobox-rm | Deletes a container |
distrobox-stop | Stops a running container |
如何安装和使用 Distrobox
我们来看看在Linux上安装和使用Distrobox的方法。我们使用 Ubuntu 向您逐步解释如何使用它,但其他 Linux 发行版的步骤也或多或少相同。
首先,打开Linux终端,执行以下命令,下载并执行Distrobox安装脚本:
curl https://raw.githubusercontent.com/89luca89/distrobox/main/install | sudo sh
如果出现“curl:找不到命令”错误,则应在 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 find”错误。然而,sudo yum update在终端中运行良好,因为AlmaLinux支持YUM而不是APT。
为 Distrobox 创建多个容器后,您可以使用以下命令快速查看系统上可用容器的完整列表:
distrobox-list
输出 :
请注意,您不应将 sudo 与上述命令一起使用,因为它会显示错误“/usr/local/bin/distrobox-list,因为不支持 sudo”。
要从列表中删除任何容器,请执行下面给出的命令。
distrobox-rm --name rocky
输出 :
运行命令后,系统将要求您确认,因此请输入“Y”以继续删除过程。您可以将上述命令中的名称 rocky 更改为要从系统中删除的任何其他容器。
有一个名为 Neofetch 的命令行工具,您可以使用它来检查当前操作系统及其相关信息和徽标。让我们使用以下命令将其安装在AlmaLinux系统中:
dnf install epel-relase
dnf 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 结合使用,因为它有助于验证终端内当前运行的操作系统。
在终端内运行不同的 Linux 发行版
这是对 Distrobox 的详细描述以及在任何 Linux 发行版上安装和设置它的完整方法。在本指南中,我们使用 Ubuntu 来展示分步过程。 Distrobox 是一款出色的工具,可以仅使用单个系统在多个操作系统上测试脚本和命令。
此外,我们还提供了一些在 Linux 上使用 Distrobox 时需要了解的基本技巧。确保首先设置 Docker 容器,然后安装 Distrobox,因为这样使用该工具会变得很简单。 Distrobox 变得越来越流行,因为 POSIX sh 简化了一切,并且可以轻松地从终端访问任何 Linux 操作系统。