Ale*_*haw 37 xfs zfs network-attached-storage ext4 btrfs
我的用例:我在 M.2 SSD 上安装了 Ubuntu Server 18.04。我有一个 4TB 硬盘,我想添加为存储。由于它主要用于大型媒体文件和备份,因此不会经常写入。
您认为哪种文件系统最适合此用例?
我的主要候选者是 Ext3/4、XFS、Btrfs 和 ZFS(随意争论另一个)。
我不是在问“什么是最好的文件系统?”——没有“最好的”这样的东西。 我只是问人们哪个文件系统可能最适合这个用例。请尝试包括:
谢谢你的建议。
sho*_*hok 32
我通常使用以下两个文件系统之一:
XFS 适用于与 CoW 不兼容的任何东西(或用于数据存储已经在 CoW 文件系统上的虚拟机)或需要极快的直接 I/O 时;
ZFS 用于其他任何事情。
对于您的用例,我将使用 ZFS,特别是考虑到 Ubuntu 18.04 已经提供了它。由于您可以轻松地将另一个镜腿连接到现有设备,因此 ZFS 非常适合该要求。例如,让您的磁盘命名nvme0p1:
zpool create tank /dev/nvme0p1 创建名为“tank”的单个 vdev 池;zpool attach tank <newdev> /dev/nvme0p1 启用镜像。如果由于某些原因,您不/不能使用 ZFS,那么 MDRAID 和 XFS 是您的朋友:
mdadm --create /dev/md200 -l raid1 -n 2 /dev/nvme0p1 missing 将创建一个缺少支路的 RAID1 阵列(参见 #1);mdadm --manage /dev/md200 --add <newdev> 附加一个新的镜腿(形成一个完整的 RAID1,见 #2)创建阵列后,您可以通过 XFS 对其进行格式化 mkfs.xfs
我不建议使用 BTRFS,因为性能和弹性都低于标准。例如,来自Debian wiki:
当前 (2019-07-07, linux ? 5.1.16) 存在一个错误,该错误导致双磁盘 raid1 配置文件在第二次以降级状态挂载时永远变为只读——例如,由于缺少/损坏/SATA 链接重置盘
另请注意,使用 BTRFS(阅读:Synology)的商业 NAS 供应商不使用其自己的集成 RAID 功能;相反,他们使用经过验证的 Linux MDRAID 层。
编辑:虽然有些人认为 XFS 容易丢失数据,但这根本不正确。好吧,与 ext3 相比,XFS(和其他支持延迟分配的文件系统)在不受控制的断电情况下可能会丢失更多未同步的数据。但同步数据(即:重要写入)是 100% 安全的。此外,一个加剧 XFS 数据丢失的特定错误已在 10 多年前得到纠正。除了这个错误之外,任何延迟分配就绪的文件系统(包括 ext4 和 btrfs)都将在控制器断电的情况下丢失大量或未同步的数据。
与 ext4 相比,XFS 具有无限的 inode 分配、高级分配提示(如果您需要)以及在最新版本中的 reflink 支持(但它们需要在 Ubuntu 18.04 中明确启用,有关其他信息,请参阅mkfs.xfs 手册页)
1:/proc/mdstat缺少设备的示例文件:
Personalities : [raid1]
md200 : active raid1 loop0[0]
65408 blocks super 1.2 [2/1] [U_]
unused devices: <none>
Run Code Online (Sandbox Code Playgroud)
2:/proc/mdstat添加第二个设备后的文件
Personalities : [raid1]
md200 : active raid1 loop1[2] loop0[0]
65408 blocks super 1.2 [2/2] [UU]
unused devices: <none>
Run Code Online (Sandbox Code Playgroud)
这看起来更像是针对超级用户而不是针对 serverfault 的问题,但其中一些想法也适用于该站点,因此我将尝试回答一些问题:
就像在公司环境中一样,我肯定会花时间以我的预期负载运行基准测试,以获得性能与功能的第一手经验。
我会使用有问题的操作系统建议的任何日志文件系统作为默认值,除非我有很好的理由不这样做。上次我检查 Ubuntu 是 ext4。
原因很简单:默认是最有可能被使用最多的,所以任何错误被发现和修复的机会是最大的。您提到的文件系统之间的差异在日常轻度使用中不太可能有太大意义。如果性能非常重要,那么请考虑获得更多内存,以便您的操作系统有更多的缓存空间。
也就是说,如果您要“跨”操作系统使用驱动器,我建议您获得两个,或者至少将您拥有的一个拆分为两个物理分区,然后在有媒体的那个上使用 NTFS 或 exFAT。
| 归档时间: |
|
| 查看次数: |
49783 次 |
| 最近记录: |