Ubuntu22.04系统之下,用传统的方式【mkswap ,swapon】时报错:swapon: /swapfile: skipping - it appears to have holes.。
这是因为 ZFS 文件系统默认使用 稀疏(sparse)文件,而 Linux 内核的 swapon 命令不支持稀疏文件。
稀疏文件在磁盘上没有连续的分配,包含“空洞”(holes),而 ZFS 会根据需要动态分配存储。
由于交换文件要求物理磁盘空间必须是连续的,所以无法直接使用稀疏文件作为交换空间。
可以在ubuntu系统上的zpool创建swap,解决此问题。命令如下
1 | # zpool list |
补充
如何删除zfs create创建的数据集
1 | zfs destroy <pool>/<dataset> |