教程的必备条件

以下教程将通过学习如何在第一次引导时自动配置(或提供)实例来帮助您开始使用Fedora CoreOS。每个教程都有其前一个教程的根源,因此建议按顺序进行操作。

如果您不知道什么是Fedora CoreOS,您可以参考 FAQ 以获取更多信息。

如果您在阅读这些教程时需要任何帮助或需要提出任何问题,请加入 IRC通道 ,或加入我们的 讨论板 。如果您在教程中发现任何问题,请在 Fedora-CoreOS-DOCS问题跟踪器

您应该从本页中的设置说明开始,因为必须先完成这些说明才能按照教程进行操作。

启用自动登录和自定义主机名 :在本教程中,您将编写第一个Ignition配置并使用它启动一个Fedora CoreOS实例。

在第一次引导时启动服务 :在本教程中,您将学习如何在第一次引导Fedora CoreOS实例时通过一个系统单元启动一个定制脚本。

SSH访问和启动容器 :在本教程中,您将学习如何使用Podman在第一次启动时启动容器。

在引导时启动用户级系统单元 :有时无需登录即可启动用户级的系统单元。本教程演示如何创建在引导时启动的用户级系统单元。

测试Fedora CoreOS更新 :在本教程中,您将了解如何在Fedora CoreOS中处理自动更新,以及如何在出现故障时回滚。

通过以下方式实现虚拟化 libvirt

这些教程是针对Linux环境编写的, libvirt 通过以下方式提供设置和硬件虚拟化支持 KVM 。然而,没有任何特定于 libvirt 因此,您可以在具有控制台访问权限的任何平台上尝试相同的配置(或者您可以跳到SSH访问教程以获得远程访问权限)。

有关设置的说明 libvirtKVM 你可以参考 开始使用虚拟化 来自费多拉的导游。尽管本安装指南侧重于Fedora,但这些教程应该适用于任何具有 libvirt 已安装并正在运行。

CoreOS工具

对于教程,我们需要以下工具:

  • Butane:从Butane配置文件生成Ignition配置。

  • coreos-installer 下载最新的Fedora CoreOS QCOW2图像。

  • ignition-validate :验证Ignition配置文件。

为了将所有配置文件和Fedora CoreOS映像保存在同一位置,我们将创建一个新目录,以便从中开始工作:

mkdir ~/coreos
cd ~/coreos

设置为 podmandocker

上托管的容器中提供了使用Fedora CoreOS所需的所有工具 quay.io

podman pull quay.io/coreos/butane:release
podman pull quay.io/coreos/coreos-installer:release
podman pull quay.io/coreos/ignition-validate:release

为便于输入,您可以将以下别名添加到您的外壳配置中:

alias butane='podman run --rm --interactive       \
              --security-opt label=disable        \
              --volume ${PWD}:/pwd --workdir /pwd \
              quay.io/coreos/butane:release'

alias coreos-installer='podman run --pull=always            \
                    --rm --interactive                  \
                    --security-opt label=disable        \
                    --volume ${PWD}:/pwd --workdir /pwd \
                    quay.io/coreos/coreos-installer:release'

alias ignition-validate='podman run --rm --interactive       \
                    --security-opt label=disable        \
                    --volume ${PWD}:/pwd --workdir /pwd \
                    quay.io/coreos/ignition-validate:release'

然后,您可以使用 coreos-installer 要下载最新的稳定映像,请执行以下操作:

coreos-installer download -p qemu -f qcow2.xz --decompress

为了简化本教程,您应该将我们刚刚下载的图像重命名为一个较短的名称:

mv fedora-coreos-35.20220424.3.0-qemu.x86_64.qcow2 fedora-coreos.qcow2

您现在已经准备好继续 第一个教程

通过Fedora包安装

所有三种工具(Butane、 coreos-installer ,及 ignition-validate )以Fedora包的形式提供:

# Installing the tools
sudo dnf install -y butane coreos-installer ignition-validate

# Downloading the latest Fedora CoreOS stable QCOW2 image
coreos-installer download -p qemu -f qcow2.xz --decompress

为了简化本教程,您应该将我们刚刚下载的图像重命名为一个较短的名称:

mv fedora-coreos-35.20220424.3.0-qemu.x86_64.qcow2 fedora-coreos.qcow2

您现在已经准备好继续 第一个教程

手动下载

如果之前的解决方案都不适用于您,您仍然可以手动下载Fedora CoreOS getfedora.org 有:

RELEASE="35.20220424.3.0"
curl -O https://builds.coreos.fedoraproject.org/prod/streams/stable/builds/$RELEASE/x86_64/fedora-coreos-$RELEASE-qemu.x86_64.qcow2.xz
curl -O https://builds.coreos.fedoraproject.org/prod/streams/stable/builds/$RELEASE/x86_64/fedora-coreos-$RELEASE-qemu.x86_64.qcow2.xz.sig

下载存档后,请确保按照可用说明验证其完整性,方法是单击 Verify signature & SHA256 纽扣。您必须下载校验和文件、签名和Fedora GPG密钥以验证您的下载:

curl https://getfedora.org/static/fedora.gpg | gpg --import
gpg --verify fedora-coreos-$RELEASE-qemu.x86_64.qcow2.xz.sig

验证存档后,可以使用以下命令将其解压缩:

unxz fedora-coreos-$RELEASE-qemu.x86_64.qcow2.xz

为了简化本教程,您应该将我们刚刚下载的图像重命名为一个较短的名称:

mv fedora-coreos-35.20220424.3.0-qemu.x86_64.qcow2 fedora-coreos.qcow2

然后,您应该下载最新的 ButaneIgnition-验证 来自GitHub的版本:

# Butane
curl -OL https://github.com/coreos/butane/releases/download/v0.14.0/butane-x86_64-unknown-linux-gnu
curl -OL https://github.com/coreos/butane/releases/download/v0.14.0/butane-x86_64-unknown-linux-gnu.asc
gpg --verify butane-x86_64-unknown-linux-gnu.asc
mv butane-x86_64-unknown-linux-gnu butane
chmod a+x butane

# ignition-validate
curl -OL https://github.com/coreos/ignition/releases/download/v2.13.0/ignition-validate-x86_64-linux
curl -OL https://github.com/coreos/ignition/releases/download/v2.13.0/ignition-validate-x86_64-linux.asc
gpg --verify ignition-validate-x86_64-linux.asc
mv ignition-validate-x86_64-linux ignition-validate
chmod a+x ignition-validate

然后可以为以下项设置别名 butaneignition-validate

alias butane="${PWD}/butane"
alias ignition-validate="${PWD}/ignition-validate"

或将这些命令移动到您的 $PATH ,例如:

mv butane ignition-validate "${HOME}/.local/bin/"
# Or
mv butane ignition-validate "${HOME}/bin"

您现在已经准备好继续 第一个教程