AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 737924
Accepted
mhucka
mhucka
Asked: 2015-11-21 14:17:37 +0800 CST2015-11-21 14:17:37 +0800 CST 2015-11-21 14:17:37 +0800 CST

sunit=0 和 swidth=0 对 XFS 文件系统意味着什么?

  • 772

我在创建系统时使用默认参数创建了 XFS 文件系统。现在查看 的输出xfs_info,它显示 0 和 的sunit值swidth。我似乎无法找到 0 在这种情况下意味着什么的解释。(我发现sunit的讨论集中在为这些参数设置正确的值,而不是将它们设置为 0。)swidth

# xfs_info .
meta-data=/dev/mapper/centos-root isize=256    agcount=8, agsize=268435455 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=0        finobt=0
data     =                       bsize=4096   blocks=1927677952, imaxpct=5
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=0
log      =internal               bsize=4096   blocks=521728, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

这一定是一个无知的问题,对此我深表歉意,因为我是 XFS 新手,但是sunitand的 0 值是什么意思swidth?如何找出 XFS 真正用于这些参数值的内容,以及这些值与适合我的 RAID 阵列的值之间的关系?(这是硬件 RAID 之上 LVM 之上的 XFS 系统。)

linux
  • 3 3 个回答
  • 3402 Views

3 个回答

  • Voted
  1. Best Answer
    shodanshok
    2022-06-19T13:18:39+08:002022-06-19T13:18:39+08:00

    这是一个老问题,但我认为更全面的答案会很有用。

    简而言之:当使用软件 RAID 时,让 XFS 自动检测底层阵列几何结构。如果在最近的内核上使用硬件 RAID,XFS应该能够自动检测正确的参数;如果没有,您可以使用su/sw/sunit/swidth来指定它们。

    了解底层几何有助于 XFS 分配器尽可能避免跨越两个磁盘,从而为其他工作节省 IOPS(即:占用的数据磁盘较少)。

    在上面的特定示例中,同时mkfs.xfs报告sunit=0和swidth=0,这意味着 XFS 没有在创建文件系统的块设备上检测到任何特定的 RAID 几何结构。

    长答案:让我们从su和开始sw。来自(有些过时的)XFS 常见问题解答:

    su = <RAID controllers stripe size in BYTES (or KiBytes when used with k)>
    sw = <# of data disks (don't count parity disks)>
    

    请注意,在此上下文中,“条带大小”是指单个条带单元大小,Linux MD RAID 也称为块大小。再次来自常见问题解答:

    RAID-10 的 256KB 大小的 RAID 条带大小超过 16 个磁盘应使用

    su = 256k sw = 8(16个磁盘的RAID-10有8个数据盘)

    sunit并且swidth是表示相同 RAID 几何结构的另一种方法,这次是在 512B 扇区中。从mkfs.xfs 手册页:

    sunit

    这用于指定 RAID 设备或逻辑卷的条带单元。该值必须以512 字节块为单位指定

    swidth

    这用于指定 RAID 设备或条带逻辑卷的条带宽度。该值必须以 512 字节块为单位指定。

    简而言之:

    su * sw = entire data stripe size
    swidth / sunit = number of data disk
    

    如您所见,它们是通知 XFS 底层 RAID 几何结构的两种不同方法。但是,常见问题解答告诉我们如何mkfs.xfs报告sunit和swidth:

    请注意,xfs_info 和 mkfs.xfs 将 sunit 和 swidth 解释为以 512B 扇区为单位指定;然而,不幸的是,这不是他们报告的单位。xfs_info 和 mkfs.xfs 以基本块大小 (bsize) 的倍数而不是 512B 扇区报告它们。

    假设例如:swidth 1024(在 mkfs.xfs 命令行中指定;因此 512B 扇区中的 1024 个)和 4096 块大小(mkfs.xfs 在输出中报告的 bsize)。您应该看到 swidth 128(由 mkfs.xfs 在输出中报告)。128 * 4096 == 1024 * 512。

    基本上,在创建文件系统时,您指定512B 扇区,sunit而swidth同样mkfs.xfs以 4K 块大小报告它们。这种差异是一个常见的混淆来源。

    • 1
  2. Vasil Jamalashvili
    2015-11-22T05:05:52+08:002015-11-22T05:05:52+08:00

    如果您不使用 RAID,sunit并且swidth选项已过时,则用于 RAID 优化

    有关sunit并swidth参考XFS 常见问题的更多信息

    • 0
  3. Christian
    2022-01-18T03:10:33+08:002022-01-18T03:10:33+08:00

    零意味着对底层 RAID 结构的扩展区分配进行零优化,这是正确的。

    因此,如果您关心性能并且您可以简单地重新创建 FS,在您的 RAID 集/控制器中分析驱动器的数量及其块大小,sunit并swidth相应地在mkfs.xfs.

    如果(且仅当)您需要在 RAID LUN 上创建分区,请确保第一个分区从 1 MB 边界开始(如果扇区 = 512 字节,则为 2048 秒),因为这是大多数 RAID 块大小可被除以.

    • 0

相关问题

  • Linux 主机到主机迁移

  • 如何在 Linux 机器上找到有关硬件的详细信息?

  • 如何在 Linux 下监控每个进程的网络 I/O 使用情况?

  • 在 RHEL4 上修改 CUPS 中的现有打印机设置

  • 为本地网络中的名称解析添加自定义 dns 条目

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve