网站搜索

如何通过 iSCSI 和 iPXE 配置 Synology NAS 以无盘启动 Fedora Workstation 36


无盘启动是从远程磁盘在您的计算机上启动操作系统的过程。远程磁盘可以是 iSCSI SAN、通过 FCoE(以太网上的光纤通道)连接的光纤通道 SAN,或 AoE SAN。无盘启动的好处包括:

  • 节省存储成本,因为并不是您公司/实验室中的所有计算机/服务器都需要安装操作系统的磁盘。
  • 中央服务器(在这种情况下是您的Synology NAS)的磁盘可以在许多计算机/服务器之间共享,从而实现高效的存储利用。
  • 便于管理,因为所有计算机/服务器的数据将存储在一个中央服务器上(在这种情况下,是您的Synology NAS)。
  • 轻松备份您计算机/服务器的数据,因为它将存储在中央服务器上(在这种情况下,是您的Synology NAS)。
  • 轻松拍摄远程磁盘的快照。因此,您可以在发生任何灾难时轻松恢复计算机/服务器。

在本文中,我将向您展示如何配置您的Synology NAS,以便从iSCSI SAN通过iPXE在您的计算机上无盘启动Fedora Workstation 36。

目录

  1. 技术术语
  2. 网络拓扑
  3. 在您的Synology NAS上设置静态IP地址
  4. 为PXE引导准备Synology NAS与iPXE
  5. 为无盘启动创建必要的 iPXE 配置文件
  6. 为安装 Fedora Workstation 36 创建 iSCSI LUN
  7. 在 iSCSI LUN 上安装 Fedora 工作站 36
  8. 配置 iPXE 从 iSCSI 目标启动
  9. 通过iPXE从iSCSI磁盘启动Fedora Workstation 36
  10. 无盘启动其他Linux发行版
  11. 结论
  12. 参考文献

技术术语

SAN: SAN的全称是存储区域网络。它是iSCSI服务器。在这种情况下,它是您的Synology NAS。

iSCSI磁盘/LUN:通过iSCSI在网络上共享的逻辑磁盘称为iSCSI LUN(逻辑单元号)。在本文中,我也将称其为iSCSI磁盘。

iSCSI 目标:一个或多个 iSCSI 磁盘/LUN 将被映射到一个 iSCSI 目标。您将需要登录到 iSCSI 目标以访问映射到它的 iSCSI 磁盘/LUN。

IQN: IQN 的完整形式是 iSCSI 资格名称。它是 iSCSI 目标和 iSCSI 客户端的唯一标识符。

有关 iSCSI 及其工作原理的更深入信息,请阅读文章《在 CentOS 8 上配置 iSCSI 存储服务器》。

网络拓扑

本文中使用的网络拓扑如下所示。在这里,我有一个Synology NAS和两台无盘计算机pc-01和pc-02连接到我的家庭网络。pc-01的MAC地址是00:0c:29:5a:e5:56,而pc-02的MAC地址是00:0c:29:af:38:6a。我将向您展示如何配置您的Synology NAS和iPXE引导服务器,以便计算机pc-01和pc-02能够根据它们的MAC地址自动从不同的iSCSI磁盘/LUN启动。

请注意,您的网络拓扑将有所不同。因此,不要忘记在本文后续部分进行必要的调整。

在您的Synology NAS上设置静态IP地址

如果您的Synology NAS的IP地址频繁更改,您将会在使用iPXE和无盘引导Fedora Workstation 36时遇到PXE引导问题。

在您使用 iPXE 从 iSCSI SAN 设置无盘启动之前,请在您的 Synology NAS 上设置静态 IP 地址。如果您需要有关如何在 Synology NAS 上设置静态 IP 地址的任何帮助,请阅读文章《如何为 Synology NAS 分配静态 IP 地址?》.

为PXE引导准备Synology NAS与iPXE

准备你的 Synology NAS 以支持 iPXE 的 PXE 启动。

要为您的 Synology NAS 准备 iPXE 的 PXE 启动,请阅读文章如何将 Synology NAS 配置为 PXE 启动服务器,用于通过 iPXE(BIOS 和 UEFI 版本)网络启动 Linux 安装镜像。

一旦您的 Synology NAS 配置为使用 iPXE 进行 PXE 启动,您应该在 Synology NAS 的 pxeboot 共享文件夹中看到以下文件和文件夹。

在 config/ 文件夹中,您还将看到一个 iPXE 启动配置文件 boot.ipxe。

在继续之前,请确保您在pxeboot共享文件夹中拥有所有必要的文件和文件夹。如果您在Synology NAS上设置iPXE时遇到任何困难,不要忘记阅读并遵循如何将Synology NAS配置为用于Netbooting Linux安装映像的PXE启动服务器(BIOS和UEFI版本)这篇文章。

为无盘启动创建必要的 iPXE 配置文件

我将以一种方式配置iPXE,使每台计算机根据其MAC地址使用不同的启动配置文件。这样,您可以单独为网络上的每台计算机配置PXE启动。您还可以分别为每台计算机配置多个启动选项。这为您提供了很大的灵活性。

使用文本编辑器打开[pxeboot]/config/boot.ipxe启动配置文件,并输入以下代码:

#!ipxe

set nas_ip 192.168.0.114

set boot_url tftp://${nas_ip}/config/boot-${net0/mac:hexhyp}.ipxe

echo Booting from URL ${boot_url}

chain ${boot_url}

在这里,192.168.0.114 是我的Synology NAS的IP地址。从现在开始,请确保将其替换为您自己的IP地址。如果您需要帮助寻找您的Synology NAS的IP地址,请阅读文章《如何找到我Synology NAS的IP地址?》。

完成后,保存boot.ipxe配置文件。

在这里,iPXE将在pxeboot共享文件夹的config/文件夹中查找启动配置文件boot-<hyphened-mac-addr>.ipxe。<hyphened-mac-addr>是通过iPXE启动的计算机的MAC地址。如果具有MAC地址00:0c:29:5a:e5:56的计算机pc-01通过iPXE启动,iPXE将运行启动配置文件boot-00-0c-29-5a-e5-56.ipxe。请注意,MAC地址中的冒号:被替换为连字符–。

现在,为计算机 pc-01 创建一个新的启动配置文件 boot-00-0c-29-5a-e5-56.ipxe,其 MAC 地址为 00:0c:29:5a:e5:56,并在该文件中输入以下几行.

完成后,保存 boot-00-0c-29-5a-e5-56.ipxe 文件。

为计算机 pc-02 创建另一个引导配置文件 boot-00-0c-29-af-38-6a.ipxe,其 MAC 地址为 00:0c:29:af:38:6a,并在该文件中输入以下几行.

完成后,保存 boot-00-0c-29-af-38-6a.ipxe 文件。

一旦您创建了所需的启动配置文件,您就可以通过 PXE 启动您网络上的计算机。

在这种情况下,如果我在计算机pc-01上进行PXE引导,它将显示消息正在启动 pc1,正如下面的截图所示。这意味着在pc-01上的PXE引导工作正常。当在pc-01上进行PXE引导时,iPXE读取配置文件boot-00-0c-29-5a-e5-56.ipxe。

同样,如果我对计算机pc-02进行PXE启动,它将显示消息正在pc2启动,如下面的屏幕截图所示。这意味着在pc-02上PXE启动工作正常,并且在pc-02上进行PXE启动时,iPXE读取配置文件boot-00-0c-29-af-38-6a.ipxe。

为安装 Fedora Workstation 36 创建 iSCSI LUN

在本节中,我将向您展示如何在 Synology NAS 上创建 iSCSI 目标和 LUN。还将介绍如何将 iSCSI LUN 映射到 iSCSI 目标,以便您可以在其上安装 Fedora Workstation 36 并使用 iPXE 在您的计算机/服务器上无盘启动 Fedora Workstation 36。如果您想了解更多关于在 Synology NAS 上创建 iSCSI 目标的信息,请阅读文章如何在 Synology 中创建 iSCSI 目标?。

首先,从您 Synology NAS 的 DSM 网络界面的应用菜单中打开 SAN Manager 应用。

应打开SAN Manager应用程序。

导航到iSCSI部分,然后点击添加按钮以创建新的iSCSI目标。

如果您已经创建了一些 iSCSI 目标,则需要单击创建按钮,以便创建一个新的 iSCSI 目标,如下图所示。

iSCSI 目标创建向导应显示在此处。您可以从这里创建一个新的 iSCSI 目标。有关 iSCSI 目标创建向导可用选项的更多信息,请阅读文章《如何在 Synology 中创建 iSCSI 目标?》。

我将向您展示如何为无盘启动计算机pc-01创建一个iSCSI目标。您可以以相同的方式为计算机pc-02创建iSCSI目标。

将 pc-01-target 输入为 iSCSI 目标名称1,将 iqn.2022-05.com.linux-console:pc-01-target 输入为 IQN2,然后点击 下一步3。

注意 IQN 是您 Synology NAS 的 iSCSI 目标的唯一标识符。IQN 遵循特定格式。要了解有关 IQN 及其格式的更多信息,请阅读文章 如何在 Synology 中创建 iSCSI 目标? 的创建 iSCSI 目标部分。

创建一个新的 LUN,然后点击下一步。

在pc-01-disk01中输入作为iSCSI LUN的名称1。从位置下拉菜单中选择一个要存储iSCSI LUN数据的卷2。输入要为LUN分配的磁盘空间量(以GB/千兆字节单位)3。然后,从空间分配下拉菜单中选择一种空间分配方法4,然后点击下一步5。

有关瘦供应和厚供应的更多信息,请阅读文章如何在Synology中创建iSCSI目标?中的创建LUN部分。

将显示用于创建新LUN和iSCSI目标的设置摘要。

点击完成以使用这些设置创建新的LUN和iSCSI目标。

应该创建一个新的 iSCSI 目标 pc-01-target。应创建一个新的 LUN pc-01-disk01 并将其映射到 iSCSI 目标 pc-01-target。

以相同的方式,为计算机pc-02创建一个新的iSCSI目标pc-02-target。创建一个新的LUNpc-02-disk01并将其映射到iSCSI目标pc-02-target。

您会在SAN Manager应用的LUN部分找到您创建的所有LUN的很多信息,如下方截图所示。

您需要为您为计算机pc-01和pc-02创建的iSCSI目标启用多个会话,以便Fedora Workstation 36的无盘启动能够完美地工作。

选择它并点击编辑以为iSCSI目标pc-01-target启用多个会话。

在高级选项卡中勾选允许多个会话来自一个或多个iSCSI发起程序复选框,然后点击保存。

多个会话 应该为 iSCSI 目标 pc-01-target 启用,如下方屏幕截图所示。

以同样的方式,为iSCSI目标pc-02-target启用多个会话。

在 iSCSI LUN 上安装 Fedora 工作站 36

您需要使用官方 ISO 镜像创建一个 Fedora Workstation 36 的可启动 USB 闪存驱动器。从 USB 可启动闪存驱动器以 Live 模式启动 Fedora Workstation 36,以便在您在本文章前一部分创建的 iSCSI LUN 上安装 Fedora Workstation 36。

如果您需要任何帮助来创建Fedora Workstation 36的可启动USB闪存驱动器,请参阅文章《如何从USB安装Fedora Workstation 35》。

一旦你从Fedora Workstation 36的可启动USB闪存驱动器启动,你将看到以下窗口。选择开始Fedora-Workstation-Live 36并按E键。

在下方截图标记的 linuxefi 行末尾输入 inst.nonibftiscsiboot 并按 F10 启动。

Fedora Workstation 36 应该以 Live 模式启动。点击 安装到硬盘 以将 Fedora Workstation 36 安装到 iSCSI 磁盘上。

应显示 Fedora Workstation 36 安装程序。

选择您的语言,然后点击继续。

点击 安装目的地.

点击 添加磁盘… 以添加 iSCSI 磁盘。

点击 添加 iSCSI 目标…

在目标IP地址部分输入您的Synology NAS的IP地址1。

在iSCSI 启动器名称部分输入一个唯一的 IQN 用于 iSCSI 客户端/启动器2。在本文中,我将使用IQN iqn.2022-05.com.linux-console:ipxe-pc-01 作为客户端/启动器的 IQN。如果您需要 IQN 格式的深入解释,请阅读文章《在 CentOS 8 上配置 iSCSI 存储服务器》的iSCSI 目标和启动器命名约定部分。

完成后,点击开始发现3。

您在 Synology NAS 上创建的所有 iSCSI 目标应列出。

选择iqn.2022-05.com.linux-console:pc-01-target并点击登录。

点击确定。

您应该看到一个新的 iSCSI 磁盘。

选择它,然后点击 完成。

应选择 iSCSI 磁盘作为安装目标。

注意在本文中,我将进行自动分区,以保持简单。如果你想进行手动分区,请务必查看文章《如何从USB安装Fedora Workstation 35》。

点击完成。

点击 开始安装。

正在将 Fedora Workstation 36 安装到 iSCSI 磁盘上。

正在将 Fedora Workstation 36 安装在 iSCSI 磁盘上。

此时,Fedora Workstation 36 应已安装在 iSCSI 磁盘上。

点击 完成安装。

现在,你可以关闭你的电脑。

点击 系统托盘 > 关机/注销 > 关机……,如下面的截图所示,以关闭您的计算机。

点击关机。您的计算机将关闭。之后,您可以从计算机上取下USB闪存驱动器。

同样,您可以在您创建的其他 iSCSI LUN/磁盘上安装 Fedora Workstation 36。

配置 iPXE 从 iSCSI 目标启动

现在,配置 iPXE 计算机特定的启动配置文件,以便您可以通过 iPXE 从 iSCSI 磁盘启动 Fedora Workstation 36。

配置 pc-01(其MAC地址为00:0c:29:5a:e5:56)以从iSCSI磁盘pc-01-disk01启动Fedora Workstation 36(该磁盘映射到iSCSI目标pc-01-target,其IQN为iqn.2022-05.com.linux-console:pc-01-target)。使用文本编辑器打开iPXE启动配置文件boot-00-0c-29-5a-e5-56.ipxe,并输入以下行:

#!ipxe

set initiator-iqn iqn.2022-05.com.linux-console:ipxe.pc-01

sanboot --filename \EFI\fedora\shimx64.efi iscsi:192.168.0.114:::1:iqn.2022-05.com.linux-console:pc-01-target

完成后,iPXE 启动配置文件 boot-00-0c-29-5a-e5-56.ipxe 应如下所示:

在这里,iqn.2022-05.com.linux-console:ipxe.pc-01 是 iSCSI 发起者名称的 IQN1。它应该与您在本文章的《在 iSCSI LUN 上安装 Fedora Workstation 36》部分中设置的值相同。

iqn.2022-05.com.linux-console:pc-01-target 是您希望登录并从映射的 iSCSI 硬盘 pc-01-disk012 启动 Fedora Workstation 36 的 Synology NAS 的 iSCSI 目标 IQN。

192.168.0.114 是您 Synology NAS 的 IP 地址3。

同样,您可以配置pc-02(其MAC地址为00:0c:29:af:38:6a)从iSCSI磁盘pc-02-disk01启动Fedora Workstation 36(该磁盘映射到iSCSI目标pc-02-target,其IQN为iqn.2022-05.com.linux-console:pc-02-target)。只需使用文本编辑器打开iPXE启动配置文件boot-00-0c-29-af-38-6a.ipxe,输入与启动配置文件boot-00-0c-29-5a-e5-56.ipxe中相同的行,并进行必要的调整。

通过iPXE从iSCSI磁盘启动Fedora Workstation 36

现在一切都准备好了,您可以通过 iPXE 启动计算机 pc-01。您的计算机应该从 iSCSI 磁盘 pc-01-disk01 启动 Fedora Workstation 36,如下图所示。

很快,您将看到 Fedora Workstation 36 的 GRUB 菜单。

选择 Fedora Linux (*) 36 (工作站版) 并按下 <Enter>。

Fedora Workstation 36 应该从 iSCSI 磁盘启动。您将看到 Fedora Workstation 36 的初始设置窗口。您可以从这里为 Fedora Workstation 36 设置一个用户帐户。

一旦完成初始设置,您可以像往常一样在计算机/服务器上使用 Fedora Workstation 36。您不需要在计算机上安装任何物理磁盘。

同样,你可以通过 iPXE 从 iSCSI 磁盘pc-02-disk01 在计算机pc-02上启动 Fedora Workstation 36。

无盘启动其他Linux发行版

如果您需要在通过 iPXE 从 iSCSI 磁盘配置无盘启动其他 Linux 发行版的 Synology NAS 的帮助,请阅读以下文章:

  1. 如何配置 Synology NAS 以通过 iSCSI 和 iPXE 进行无盘启动 Ubuntu 22.04 LTS
  2. 如何通过iSCSI和iPXE配置Synology NAS以支持无盘启动RHEL 9

结论

在本文中,我向您展示了如何通过 iPXE 在网络上的计算机/服务器上为 Fedora Workstation 36 配置无盘启动(从 iSCSI 磁盘)Synology NAS。我展示了如何配置 iPXE,以便根据网络上计算机/服务器的 MAC 地址使用不同的 iPXE 启动配置。这样,您就能够单独为网络上的每台计算机/服务器配置/控制启动,并且还可以配置多个启动。这将使无盘启动像从本地磁盘启动一样无缝。

参考文献:

https://access.redhat.com/documentation/zh-cn/red_hat_enterprise_linux/8/html/performing_a_standard_rhel_installation/iscsi-disks-in-installation-program_installing-rhel