将 /var 从 atn Ext4 分区移动到 Debian 中的 ZFS 分区

将 /var 从 atn Ext4 分区移动到 Debian 中的 ZFS 分区

我想将 /var 从简单的 ext4 分区移动到我在 RAID 阵列上构建的 zfs 池。我知道我必须在单用户模式下重新启动到 cp -avr /var 分区,但是如何确保所有内核模块都在启动时加载并在单用户环境中,我是否必须将它们放入在 initrd 中?

答案1

解决了这个问题(Debian 10);

  • 设置 ZFS 结构但不设置挂载点
  • 以单用户模式重新启动
  • 使用 zpool import -d /dev/disk/by-id 导入 ZFS 结构
  • 将 /var 复制到新池,我使用了 rsync -avxHAX /var/
  • 将 /var 移动到 /var2 作为备份
  • 编辑 /etc/fstab 以防止安装旧变量
  • 将 ZFS 分区的安装点更改为 zfs set mountpoint=/var
  • 重启

选修的;您可能需要“zfs set overlay=on ”。我不需要在单个磁盘上带有 zfs 的测试虚拟机上执行此操作,而是在一台破旧的旧服务器上执行此操作。这是因为内核在 ZFS 安装之前开始填充 /var。查看 systemd 日志,这与我的旧 ext4 分区安装在 /var 上并且系统可以工作的启动点大致相同,但是 ymmv。

理由;我想要为我的 docker 容器和虚拟机提供更多空间,并将它们放置在文件系统上的标准位置,并且我想尝试 ZFS 来实现快照、压缩和稳定性。如果出现严重错误,我会更新它。

相关内容