跳到主要内容

文件系统

选择文件系统类型

为您的 Unraid arraycache pool 选择正确的文件系统至关重要。它有助于实现性能、数据保护和高级功能之间的平衡。Unraid 支持多种现代 Linux 文件系统,每种都有其独特的优势和特定的使用场景:

文件系统数据保护空间效率高级功能最佳使用案例
XFS没有内置冗余100%对损坏的强大抗性默认的数组驱动器;高可靠性
ZFS没有内置冗余100%Checksums, Snapshots, RAID多设备池,虚拟机,Docker,高级用户
ZFSRAIDZ1/RAIDZ2/RAIDZ3,镜像等。根据RAID级别而有所不同%%Checksums|校验和%%,%%Snapshots|快照%%,%%RAID|raid%%多设备池,混合SSD/HDD,灵活的池
BTRFSRAID 0/RAID 1/10/5/6、镜像根据RAID级别而有所不同%%Checksums|校验和%%,%%Snapshots|快照%%,%%RAID|raid%%多设备池,混合SSD/HDD,灵活的池
NTFS没有内置冗余100%Windows兼容性添加现有的Windows驱动器,无需数据迁移
exFAT没有内置冗余100%跨平台兼容性添加现有的exFAT驱动器,无需数据迁移

XFS

XFS 是 Unraid 中 %%array|阵列%% 驱动的默认文件系统,以其稳健性和在意外关机或崩溃后能够恢复损坏而闻名。每个使用 %%XFS|xfs%% 格式化的驱动都像一个独立的文件系统,使得在任何 Linux 系统上进行数据恢复变得简单。

  • Mixing different file system types in your Unraid system is perfectly acceptable; the Unraid parity system works independently of the file system used.
  • 始终在 Unraid 内格式化和分区驱动器以确保兼容性。
  • Linux 系统可以原生读取这些文件系统;然而,Windows 和 macOS 将需要额外的软件来访问。

ZFS

EXT4 是一种成熟且稳定的文件系统,提供出色的兼容性和可靠性。它受到了全面支持,与 XFSBTRFSZFS 相提并论,是选择阵列驱动器或单驱动池的强有力选项。

  • 数据保护: 它不具有内置冗余,需要依赖 Unraid 的 parity 进行保护。
  • 性能: 提供一致且可靠的性能,通过日志功能确保数据完整性。
  • 最佳用途: 当您寻找 XFS 的替代方案时,可用于 阵列 驱动器或单驱动池。

ZFS

ZFS 是一种现代文件系统,具有检测 %%bit rot|数据腐坏%% 的 %%checksums|校验和%%、用于备份的 %%snapshots|快照%% 和本地 %%RAID|raid%% 支持选项,如 %%RAIDZ1|raidz1%%/%%RAIDZ2|raidz2%%/%%RAIDZ3|raidz3%% 和镜像。%%ZFS|zfs%% 可用于单设备和多设备池。

  • **数据保护:**支持各种RAID级别以实现冗余。
  • **性能:**尤其是对多设备池来说表现优异。
  • 最佳用途: 高性能环境、虚拟机、Docker 或需要高级功能(如 snapshots)时。

有关 ZFS 功能、配置和最佳实践的全面指南,请参见专用的ZFS 存储页面。

BTRFS

BTRFS 提供灵活的 RAID 支持,checksums 确保数据完整性,并在池中有效管理不同大小的驱动器。它是cache pools 的默认文件系统,并支持单设备和多设备配置。

  • 数据保护: 支持RAID 0/1/10/5/6 (注意RAID 5/6 仍然是实验性的)。
  • 性能: 良好,具有扩展和收缩的灵活性。
  • 最适合: Cache pools,尤其是在你计划混合使用SSD和HDD或需要简单扩展时。

NTFS 和 exFAT(支持有限)

支持 NTFS 和 exFAT 文件系统,但存在一些限制。这主要是为了帮助您将现有的驱动器和数据添加到 Unraid 系统中,而无需首先将数据转移到其他地方。

警告

格式化为 NTFS 或 exFAT 的驱动必须在添加任何校验驱动之前先添加到 %%array|阵列%% 中。一旦校验驱动已添加到您的 %%array|阵列%% 中,之后添加的任何新数据驱动都将被清空,无论其文件系统格式。

如果您想使用现有的 NTFS 或 exFAT 驱动器:

  • 首先将它们添加到 %%array|阵列%% (或运行 工具 → 新配置 以重置您的阵列配置)。
  • 在添加 NTFS/exFAT 数据驱动器后,您便可以添加奇偶校验驱动器。
  • 这些驱动器上的现有数据将被保留并通过奇偶校验进行保护。
  • 数据保护: 这些驱动器不提供内置冗余;一旦增加了奇偶校验,它们依赖于 Unraid 的 parity 进行保护。
  • 性能: 适用于基本的存储需求。
  • 最佳用途: 添加现有的 Windows 格式驱动器 (NTFS) 或跨平台格式驱动器 (exFAT),无需数据迁移。它们也可以用于单驱动池。
  • 限制: 不建议常规使用这些文件系统;它们主要用于迁移现有驱动器。对于新驱动器,建议使用 XFS、EXT4、BTRFSZFS

要更改特定驱动器上的文件系统类型:

Additional 笔记
  • 在 Unraid 系统中混合使用不同的文件系统类型是完全可以接受的;Unraid 的 %%parity|校验%% 系统独立于所使用的文件系统。
  • 始终在 Unraid 内格式化和分区驱动器以确保兼容性。
  • Linux 系统可以原生读取这些文件系统;然而,Windows 和 macOS 将需要额外的软件来访问。
  • 您可以对驱动器进行加密以增强安全性,但要记住,如果发生损坏,加密的驱动器可能会带来恢复挑战。
  • 对于传输驱动器或外部设备,建议使用支持额外文件系统的 Unassigned Devices 插件。

:::

Still 需要帮助选择吗?
  • 对于阵列驱动器: XFS 通常是大多数用户的最佳选择。如果您更喜欢传统的 Linux 文件系统,EXT4 也是一个不错的选择。
  • 对于高性能或高级功能: 选择 ZFSBTRFS 用于 %%cache pools|缓存池%% 或多设备设置。参见 ZFS 存储 页面以获得 ZFS 详细指南。
  • 对于混合或扩展池: 如果您想使用不同的驱动器大小或轻松添加或删除设备,BTRFS 是理想的选择。详情请参见 BTRFS 池 关于向 BTRFS 池添加磁盘。
  • 对于现有驱动器: 仅当为现有驱动器添加数据时使用 NTFS 或 exFAT;在添加奇偶校验之前添加它们。

如果不确定,开始默认设置是一种好的方法:对于array驱动器使用 XFS ,对于 cache pools 使用 BTRFS


设定文件系统类型

在向 Unraid 添加新磁盘时,您可以选择最适合您需求的文件系统类型。文件系统决定了磁盘上数据的组织和保护方式。

要全局设置文件系统类型,请导航到 设置 → 磁盘设置 设置新 %%array|阵列%% 驱动的默认文件系统。Unraid 默认使用 %%XFS|xfs%% 作为 %%array|阵列%% 驱动的文件系统。

备注

目前还没有 %%cache pools|缓存池%% 的全局默认设置。如果选择 “自动”,它们将始终默认使用 %%BTRFS|btrfs%%。

important

如果您添加的驱动包含现有的 NTFS 或 exFAT 数据,则必须在添加任何校验驱动之前先将它们添加到 %%array|阵列%% 中。一旦校验存在,所有新添加的数据驱动都将被清空,无论其文件系统类型。

安全地 重新格式化你的驱动器:

  1. 在进行更改之前停止 %%array|阵列%%。
  2. 更改文件系统类型:
  3. (可选)更改回原始文件系统类型:
  4. (可选)如果选择 自动,Unraid 使用全局默认设置。
  5. 对于多设备 cache pools ,仅支持 BTRFSZFS
  6. 如将现有的 NTFS 或 exFAT 数据驱动添加到 %%array|阵列%%,请在添加任何校验驱动之前添加它们。

重新格式化缓存驱动器

在 Unraid 中使用新磁盘之前,必须用选定的文件系统格式化。

警告

格式化将擦除驱动器上所有现有内容。请确保在继续之前备份任何重要数据。

从缓存移动数据:

  1. 启动 array
  2. Run Mover: Run Mover from the Main tab. Wait for it to finish and ensure that the cache is empty.
  3. 验证所有不可挂载的驱动器是您要格式化的那些。
  4. 选中确认框,阅读警告对话框,然后点击 格式化
  5. 监视过程。对于新磁盘,Unraid 首先重写分区表。
  6. 等待完成。如果进程停滞,请刷新 标签。

重新格式化缓存驱动器:


更改文件系统类型

要更改特定驱动器上的文件系统类型:

警告

使用 Mover 移动数据和格式化驱动器所需时间可能从几分钟到几小时不等,具体取决于数据量和驱动器速度。

要更改特定驱动器上的文件系统类型:

  1. 停止array
  2. 标签中,点击要更改的驱动器。
  3. 从下拉列表中选择新的文件系统类型(如需要重复多个驱动器的操作)。
  4. 启动 array
  5. 标签中,查看不可挂载的驱动器列表,并确保只包括预期的驱动器。
  6. 勾选确认框并点击 格式化
  7. 等待完成。如果状态未更新,请刷新 标签。

在 Unraid 中维护您的 BTRFS 池对于保持其正常运行和确保您的数据安全至关重要。您需要定期使用的两个关键工具是 平衡清理。这些操作有助于解决空间分配问题,优化存储利用率,并保护数据免受隐藏损坏的影响。


转换到新的文件系统类型

important

有关高级 BTRFS 功能的更多详细信息,请查阅 官方 BTRFS 文档

  • 需要将 ReiserFS 格式化的任何驱动器尽快迁移到其他文件系统,因为它们在未来的 Unraid 版本中将无法使用。
  • 需要在 2030 年之前迁移使用旧版 XFS 版本格式化的任何驱动器。

要更改驱动器的文件系统类型但保留其数据,您必须在重新格式化之前迁移内容。该过程对于从不再支持的 ReiserFS(在旧版 Unraid 中使用)迁移到 XFSBTRFS 的用户尤为常见,但它适用于任何文件系统转换。

important

该过程需要暂时将您的数据移动到其他位置。在您开始之前,请确保在您的 %%array|阵列%% 中或外部设备上有足够的可用空间。

要安全地转换为新的文件系统类型:

  1. 将所有数据从驱动中移到其他位置(另一个 %%array|阵列%% 驱动、%%cache pool|缓存池%% 或外部备份)。使用以下方法之一:

    通过 WebGUI(Unraid 7.2+):

    • 导航到 主菜单 → 阵列操作 并停止阵列。
    • 导航到 设置 → 全局共享设置。在清空磁盘区域,选择要清空的磁盘并点击 应用。注意:当阵列停止时,该状态将自动移除。
      • 在 Unraid 7.2.0 中,此磁盘上的任何数据将在状态删除前对用户共享隐藏。
      • 从 Unraid 7.2.1 开始,数据仍然可供用户共享,但新的文件不会写入磁盘,直到状态删除。
    • 导航到 主菜单 → 阵列操作 并启动阵列。
    • 主菜单 → 阵列操作 上点击 移动 (或等待移动程序按其正常计划运行)。
    • 移动器将清空磁盘,根据共享设置将文件移动到其他阵列驱动器中。请注意,位于驱动器根目录的文件不属于任何共享,将不会被移动。
    • 检查 工具 → 系统日志 查看文件因正在使用或缺乏空闲空间而无法移动的信息。

    或通过命令行(仅适用于 Unraid 7.0 和 7.1):

    或手动:

    • 手动将文件移动到其他位置

    完成后,导航到 主 → 阵列设备 并浏览磁盘以确认为空。只有确定磁盘为空时才继续操作。

  2. 遵循更改文件系统类型的过程。此操作将格式化驱动器并擦除所有内容,将它置于空白的新格式中。

  3. (可选)根据您移动文件的位置,将数据移回新格式的驱动器。

  4. 如果需要转换多个驱动器,请为每个驱动器重复这些步骤。

:::note[Timing]

这些插件启用:

:::


重新格式化驱动器

在 Unraid 中重新格式化驱动器将擦除所有数据并创建一个新的空文件系统。此过程有助于解决持久的文件系统错误或开始使用新的格式。

警告

如果您在 Unraid 中看到驱动器为无法挂载,可能是由于两个主要原因之一:

重新格式化缓存驱动器:

  1. 停止阵列
  2. 设置缓存驱动器格式(在 XFSBTRFS 之间选择)。
    • 对于单驱动 cache,推荐选择 XFS
    • 选择不同的文件系统类型(例如,从XFS更改为BTRFS)。
    • 启动array,驱动器将显示为不可挂载的
    • 在提示时,格式化驱动器。
  3. 启动阵列
    • 再次停止array
    • 将文件系统改回你首选的类型。
    • 启动array并再次格式化驱动器。

还原数据和设置:

重新格式化缓存驱动器

有时,你需要重新格式化一个cache驱动器,原因如下:

  • 更改文件系统类型(例如,从BTRFS转换到XFS或反之亦然)
  • 修复持久的文件系统错误
  • 为新的工作负载重新开始

准备

在重新格式化之前,准备系统:

  1. 停止array
  2. 进入 设置,并禁用 Docker 和 VM 服务(这样可以防止在过程中显示它们的标签)。
  3. 重新启动 %%array|阵列%%。

从缓存中移走数据

从缓存移动数据:

  1. 设定共享存储与Mover操作 (缓存 → 阵列):
    • 转到Shares 选项卡。
    • For each share with files in the cache, set Primary storage to the source cache pool and Secondary storage to the array.
    • Mover操作 设置为 缓存 → 阵列
    • 记录您更改的共享及其最初的设置。
  2. 主界面 选项卡中,点击 立即移动 并等待完成。确保 %%cache|缓存%% 是空的。
    • 如果仍有文件,请停止并检查论坛以获取帮助。

重新格式化缓存驱动器

让我们来详细解释每项操作的作用以及何时使用这些操作:

  1. 停止array
  2. 设置缓存驱动器格式:
    • 标签中,点击缓存驱动器。
    • XFS、EXT4 或 BTRFS 之间选择。
    • 单驱动 %%cache|缓存%%,推荐使用 %%XFS|xfs%% 或 EXT4。
    • 请注意,只有在单个 %%cache|缓存%% 插槽中 %%XFS|xfs%% 和 EXT4 才可用。
  3. 启动 array
  4. 格式化缓存驱动器:
    • 确认只有 %%cache|缓存%% 驱动列为不可挂载。
    • 勾选确认框并点击 格式化

还原数据和设置

还原数据和设置:

  1. 对于您更改的每个共享,将 主存储次级存储 恢复为其最初的值。
  2. 将数据移回(阵列 → 缓存):
    • 对于您更改的每个共享,将 主存储 设置为目标 %%cache|缓存%% 池,并将 辅助存储 设置为 %%array|阵列%%。
    • Mover 动作 设置为 array → cache
    • 主界面 选项卡中,点击 立即移动,将数据移回到 %%cache|缓存%% 中。
  3. 停止array
  4. 进入 设置 并重新启用 Docker 和 VM 服务。
  5. 启动 %%array|阵列%% 以完成该过程。

:::note[Timing]

使用 Mover 移动数据和格式化驱动器所需时间可能从几分钟到几小时不等,具体取决于数据量和驱动器速度。

:::


BTRFS 操作

在 Unraid 中维护您的 BTRFS 池对于保持其正常运行和确保您的数据安全至关重要。您需要定期使用的两个关键工具是 平衡清理。这些操作有助于解决空间分配问题,优化存储利用率,并保护数据免受隐藏损坏的影响。

让我们分解每个操作的功能及其使用时间:

平衡

平衡 操作将数据和元数据块重新分配到您的 BTRFS 池中。此过程有助于释放空间,解决分配问题,并能在空间似乎可用时解决“设备上没有剩余空间”错误。

何时运行平衡

  • 当您遇到“设备上没有剩余空间”错误但仍有空闲空间时。
  • 在池中添加或移除驱动器后。
  • 优化空间使用并提升性能。

修复文件系统

  1. WebGUI 中,点击 标签中的池,并选择 平衡
  2. (可选)为高级使用添加参数(有关详细信息,请参阅 Unraid 帮助)。
  3. 点击 开始 以启动。

:::note[Timing]

修复可能需要从几分钟到几个小时,尤其是对于更大或严重受损的文件系统。进度可能看起来很慢,但您可以通过查看主页上的读/写统计来查看活动。

:::

校验

检查 操作读取所有数据和元数据,检查校验和的完整性,并使用可用的冗余副本修复任何损坏的块。检查有助于在静默数据损坏(称为镜像腐烂)成为严重问题之前识别和修复问题。

通过 WebGUI

  • Start the array: Start the array in the correct mode (refer to the section above).
  • 选择磁盘: 进入 标签页并点击要修复的磁盘。
  • 访问修复选项: 向下滚动至 检查文件系统状态

推荐计划

  • 高使用率池: 每周一次
  • 所有其他池: 每月一次

如何运行清洗

  1. WebGUI 中,点击 标签中的池,并选择 检查
  2. 点击 开始 以启动。

:::note[Timing]

如果您不理解修复输出或过程失败,请在 Unraid 论坛 上分享您的诊断和修复日志以获得进一步的帮助。

:::

提示

平衡清理 都可以在系统在线时进行,但请记住,在这些操作期间性能可能会受到影响。您可以在 WebGUI 中监控进度。

有关高级 BTRFS 功能的更多详细信息,请查阅 官方 BTRFS 文档


故障排除

未分配的驱动是连接到您的 Unraid 服务器的存储设备,但不属于主 %%array|阵列%% 或任何 %%cache pool|缓存池%%。您可以使用这些驱动传输文件、创建备份或为 %%虚拟机|vm%% 提供快速存储。

备注

当 %%array|阵列%% 启动时连接到您的服务器的所有驱动即使没有分配到 %%array|阵列%% 或池中,也会计入您的 Unraid 附属设备许可证限制。

未分配驱动器的常见用途

  • 识别情况:确定这是新驱动器还是先前工作的驱动器。
  • 对于新驱动器:格式化驱动器以创建一个新的文件系统(查看 格式化步骤)。

使用未分配设备插件

修复文件系统通常比重建驱动器所需时间更短,让您可以不丢失任何数据地访问它。请记住,重建驱动器无法修复文件系统问题;它仅确保物理驱动器与模拟驱动器相匹配,且将现有问题一同保留。

  • **未分配设备:**此插件允许您挂载、共享和管理具有 Unraid 支持的文件系统(如 XFSBTRFS 或 NTFS)的驱动器。

  • **未分配设备Plus:**此扩展支持额外的文件系统,包括 ExFAT 和 HFS+。

如果您不确定:

  • 使用 Unraid 网页界面轻松挂载和卸载驱动器。
  • 如需专家帮助,请将您的问题连同诊断信息一起发布于 Unraid 论坛。 :::
  • 在服务器启动时自动挂载。
  • 格式化或擦除驱动器以备将来使用。
  • 安全地断开 USB 或外部驱动器而不产生麻烦。

有关插件安装和管理的详细信息,请查阅 插件


故障排除

检查文件系统

如果您在 Unraid 中看到驱动器为无法挂载,可能是由于两个主要原因之一:

  1. 如果您刚刚将新驱动器添加到设置中,格式化前它将显示为不可挂载。格式化创建允许驱动器存储文件的文件系统。您可以在这里找到格式化驱动器的步骤。

  2. 如果以前正常工作的驱动器突然显示为不可挂载,很可能是文件系统问题。这可能是由于意外关机、写入数据时出现问题,或者驱动器被标记为禁用(在 WebGUI 上显示为红色‘x’)。

important

除非您愿意丢失驱动上的所有数据,否则不要格式化不可挂载的驱动。格式化将擦除所有内容并更新 %%parity|校验%% 信息,使恢复成为不可能。在此之前,请始终尝试修复文件系统。

如果您的驱动器无法挂载:

  1. 确定这是新驱动器还是以前正常工作的驱动器。
  2. 对于新驱动器:格式化驱动器以创建新的文件系统(参见格式化步骤)。
  3. 对于以前正常工作的驱动器:执行文件系统检查或修复(参见文件系统检查)。如果想保留数据,请避免格式化。
备注

如果驱动器既不可挂载又被禁用(红色“x”),首先对模拟驱动器运行文件系统检查/修复。如果模拟驱动器也不可挂载并尝试重建,新驱动器也将不可挂载。

修复文件系统通常比重建驱动器所需时间更短,让您可以不丢失任何数据地访问它。请记住,重建驱动器无法修复文件系统问题;它仅确保物理驱动器与模拟驱动器相匹配,且将现有问题一同保留。

Why 奇偶校验不足够吗?

虽然 %%parity|校验%% 有助于恢复损坏的驱动,但它不能修复文件系统问题。如果文件系统损坏,%%parity|校验%% 只会将该损坏复制到新驱动上。

如果您不确定:

  • 通过导航到 工具 → 诊断 来下载系统日志。
  • 如需专家帮助,请将您的问题连同诊断信息一起发布于 Unraid 论坛
Just 重申一下
  • 仅当他们是全新的或想要擦除所有数据时,才格式化无法挂载的驱动器。
  • 使用文件系统检查/修复来解决损坏文件问题;不要依靠 parity 来解决这些问题。
  • 对于有多个驱动器的 cache pools,可以考虑使用 BTRFSZFS
  • 在格式化或修复驱动器之前,请再次检查以避免意外的数据丢失。

检查文件系统

如果之前正常挂载的磁盘现在显示为不可挂载,这通常表示文件系统损坏。这可能由未清洁的关机、失败的写操作或磁盘在 WebGUI 中被标记为禁用所导致。检查和修复文件系统通常比执行重建更快更安全,因此建议在格式化或重建磁盘之前尝试此操作。

important

如果 WebGUI 提议格式化不可挂载的驱动,除非您打算擦除所有数据,否则 不要格式化。格式化将销毁驱动的内容并更新 %%parity|校验%%,使恢复成为不可能。

准备检查或修复

  1. 识别文件系统类型:

    • 标签中,选择您的磁盘(例如磁盘3,缓存)。
    • 找到 文件系统类型(应为 XFS、EXT4、BTRFSZFS)。
  2. 以正确模式启动阵列:

  3. If the disk is disabled and being emulated, run the check/repair on the emulated disk before attempting a rebuild. If the emulated disk is unmountable, the rebuilt disk will also be unmountable.

常见错误消息

消息意义/行动
超级块有错误的幻数严重腐败;尝试文件系统修复。
文件系统脏未清关闭;执行文件系统检查。
元数据损坏检测文件系统结构损坏;开始修复。
未找到有效的 BTRFS磁盘可能不属于有效池;检查池分配。
挂载:错误的文件系统类型、错误的选项等文件系统选择错误或磁盘未格式化。
无法挂载 /dev/mdX:结构需要清理文件系统已损坏;执行修复。

通过 WebGUI 检查

  1. 以正确模式启动 %%array|阵列%%(参见以上步骤)。
  2. 标签中,选择希望检查的磁盘。
  3. 滚动到 检查文件系统状态
  4. 对于 XFS:您将看到显示 检查 按钮,没有任何选项输入。系统会自动根据检查结果确定必要的操作。
  5. 对于其他文件系统:输入任何必要的选项(有关详细信息,请参阅右上角的 帮助)。
  6. 点击 检查 以启动流程。
  7. 在输出框中监视进度。如需刷新,使用 刷新
  8. 查看结果。如不确定,请复制输出并将其发布在论坛中征求建议。

XFS 自动修复工作流

通过 WebGUI 完全自动进行 XFS 文件系统修复:

  1. 点击检查按钮(无需输入任何选项)
  2. 检查结果:
    • 未检测到损坏:显示“未检测到文件系统损坏”,CHECK 按钮保持不变
    • 检测到损坏:显示“检测到文件系统损坏”,出现 FIX 按钮
  3. 点击 修复 以自动修复文件系统
  4. 如有需要,可能会出现清零日志按钮
  5. 当进程完成时显示“文件系统已修复”

此自动系统消除了用户手动输入修复选项的需求,并确保了正确的修复顺序。

通过命令行检查

通过命令行检查 XFS 文件系统:

  • 维护模式下启动 array
  • 运行以下命令:xfs_repair -v /dev/mdXp1
  • X 替换为磁盘编号(例如 /dev/md1p1)。
  • 对于加密的 XFS,使用 /dev/mapper/mdXp1
  • 对于不在 array 的驱动器: xfs_repair -v /dev/sdX1
  • 确保您使用了正确的设备标识符。
警告

Running this command on an array disk outside of Maintenance Mode will invalidate parity.

提示
  • 文件系统修复通常比完整重建更快,并能在不丢失数据的情况下恢复访问。
  • 重建磁盘并 不会 解决文件系统损坏;请始终先运行检查或修复。
  • 如果您有疑问,请在 Unraid 论坛 上发布您的诊断和错误信息以获取专家协助。

修复文件系统

如果文件系统检查发现错误,您可能需要进行修复才能再次访问数据。修复通常比完全重建所需的时间少,但重要的是仔细阅读输出,并在不确定任何问题时在 论坛 上寻求帮助。

:::note[Timing]

修复可能需要从几分钟到几个小时,尤其是对于更大或严重受损的文件系统。进度可能看起来很慢,但您可以通过查看主页上的读/写统计来查看活动。

:::

准备进行修复

  1. 标签中,点击磁盘并识别文件系统类型(XFS、EXT4、BTRFSZFS)。

  2. 以正确模式启动阵列:

  3. If the disk is disabled and being emulated, run the repair on the emulated disk before trying to do a rebuild.

通过 WebGUI 修复

  1. 以正确模式启动 %%array|阵列%%(请参考上面的部分)。
  2. 标签中,点击要修复的磁盘。
  3. 滚动到 检查文件系统状态
  4. 对于XFS:修复过程是全自动的。点击 检查,如果检测到损坏,请选择 修复,并在提示时选择 ZERO LOG
  5. 对于其他文件系统:删除任何会以只检查模式运行该过程的选项(例如:BTRFS--readonly)。
  6. 如果提示,请根据检查输出中指示添加建议选项。
  7. 点击 检查 以开始修复。
  8. 在输出框中监控进度。如有需要,请使用 刷新
  9. 如果在修复后发现 lost+found 文件夹,可能包含无法完全恢复的文件或文件夹。如有必要,使用备份或 Linux file 命令识别内容。
信息

如果对输出不确定,将其复制并分享至 Unraid 论坛 寻求专家帮助。使用代码格式选项以保持可读性。

通过命令行修复

  • 维护模式下启动 array
  • 运行以下命令:xfs_repair /dev/mdXp1。将X替换为磁盘编号(例如,/dev/md1p1)。
  • 对于加密的 XFS,使用:/dev/mapper/mdXp1
  • 如果系统提示使用-L,请重新运行命令如下:xfs_repair -L /dev/mdXp1。通常,这是完成修复所需且安全的操作。
  • 对于不属于array的驱动器:xfs_repair /dev/sdX1
注意

Running this command on an array disk outside of Maintenance Mode will invalidate parity.

After 修复
  • 正常模式 下停止并重新启动 %%array|阵列%%。
  • 驱动器现在应挂载并可访问。
  • 如果您看到一个 lost+found 文件夹,请检查其内容是否有重要文件。

如果您不理解修复输出或过程失败,请在 Unraid 论坛 上分享您的诊断和修复日志以获得进一步的帮助。