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 / 问题 / 845266
Accepted
Mikolan
Mikolan
Asked: 2017-04-20 03:31:46 +0800 CST2017-04-20 03:31:46 +0800 CST 2017-04-20 03:31:46 +0800 CST

更改现有 ZFS 数据集的记录大小

  • 772

我想更改recordsize现有 ZFS 数据集的属性。

手册页指出:

更改文件系统的记录大小仅影响之后创建的文件;现有文件不受影响。

因此,简单地更改recordsize属性只会对新创建的文件产生影响。我希望现有文件也能利用新的记录大小。

数据集的azfs send和zfs receive是否会将现有文件转换为新的记录大小,还是我必须手动将文件从数据集中复制然后再复制回来?

zfs
  • 3 3 个回答
  • 3367 Views

3 个回答

  • Voted
  1. Best Answer
    ewwhite
    2017-04-20T03:54:52+08:002017-04-20T03:54:52+08:00

    如果您想利用新的记录大小,您需要将数据复制回文件系统。

    不过,我不确定你的问题是什么。

    • 2
  2. sxc731
    2021-02-14T04:48:25+08:002021-02-14T04:48:25+08:00

    我知道回复晚了,但这里有几点建议:

    1. zfs receive有一个-o recordsize选项可让您覆盖接收端的值。

    2. 恕我直言,同步 ZFS 数据集最容易在 syncoid 的帮助下实现(这是Sanoid套件的一部分)。例如,以下相当简单的命令行会将给定的数据集从现有的 Zpool 复制apool到,同时在接收端bpool将期望的数据集强制为 64k:recordsize

      syncoid --recursive --recvoptions="o recordsize=64k" apool/DATASET bpool/DATASET
      

    syncoid是一个包装器zfs send/receive,它根据自己管理的快照进行操作;因此您可以在系统运行时使用它,也可以发送增量。 --recvoptions被传递到zfs receive。此选项仅记录在syncoid的联机帮助页中,而不是在 Github 页面上,但它完全按预期工作。

    • 1
  3. ALL
    2022-08-23T12:39:11+08:002022-08-23T12:39:11+08:00

    这是一个旧回复,但您不能使用zfs send+zfs recv来更改记录大小。

    我被某处读到它确实改变了记录大小而被愚弄了,然后我开始从事一个项目,在那里我需要阅读很多关于流格式的内容,发现它总是引用流中已经存在记录大小的对象 ID . 当然,您可能会认为这不是问题,它可以在接收端更改它,但是因为它支持增量更新,所以当它引用块 ID + 块偏移量时,如果不将原始信息存储在某处,就不可能存储 FREE 命令ZFS,它没有。

    • 0

相关问题

  • 从现有目录创建 zfs 的正确方法?

  • 如何将 ZFS ACL 从一个文件克隆到另一个文件?

  • ZFS 在演示期间在舞台上失败。这是正常行为吗?

  • Sneakernet 作为备份策略有意义吗?

  • ZFS 与 XFS

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