gpt4 book ai didi

ubuntu - 如何在 ZFS 数据集中创建卷并附加到 LXD 容器?

转载 作者:行者123 更新时间:2023-12-04 19:13:28 35 4
gpt4 key购买 nike

我想在 zfs 数据集中创建一个卷:

sudo zfs create mypool/maildir
sudo lxc storage volume create mypool/maldir custom1

并得到
error: not found

我的创建肯定是错误的,我打算做的是:
  • 创建 zfs 数据集
  • 将数据集用作磁盘并挂载到容器

  • 所以如果我重新安装系统,我可以创建一个容器并将相同的数据集附加到新容器,

    这可能吗?谢谢

    最佳答案

    您的帖子并未真正显示您的池或数据集的外观,但这是您可以做到的一种方法。

    通常,您希望:

  • 直接使用 ZFS 创建 ZFS 池,就像您(可能)对 zpool create ... 所做的那样命令;
  • 为 LXD 创建一个数据集以用作其分配的池,就像您对 zfs create ... 所做的那样, 使用 lxd init完成这项任务的步骤;
  • 使用 LXC 在 LXD 池中创建卷;
  • 使用 attach-profile将卷分配给容器配置文件的子命令

  • 我没有足够的信息来使用您的数据作为示例,所以我将向您展示我是如何使用 LXD/LXC 3.0 完成的:

    创建 ZFS 池和数据集
    $ sudo zpool create -m /mnt/tank tank raidz3 <vdev1> <vdev2> ...
    $ sudo zfs create tank/lxd
    $ sudo zfs list
    NAME USED AVAIL REFER MOUNTPOINT
    tank 954M 1.31T 41.7K /mnt/tank
    tank/lxd 953M 1.31T 41.7K /mnt/tank/lxd

    将 LXD 的数据集作为一个池
    $ lxd init
    ...
    Name of the new storage pool [default=default]: lxd-pool
    Name of the storage backend to use (btrfs, dir, lvm, zfs) [default=zfs]:
    Create a new ZFS pool? (yes/no) [default=yes]: no
    Name of the existing ZFS pool or dataset: tank/lxd
    ...

    使用 LXC 创建卷

    以下命令创建一个名为 dev-volume 的新卷。在名为 lxd-pool 的池中我们在上面分配的,并将大小设置为 512GB。 (您可以使用您需要的任何数字。)
    $ lxc storage volume create lxd-pool dev-volume size=512GB

    如果您收到 error: not found您需要确保正确使用命令,参数顺序正确,以便引用实际存在的内容,等等。使用 lxc help <subcommand>很有帮助。

    将卷附加到容器配置文件

    您需要将卷分配给容器将使用的配置文件。为此,只需依靠以下命令:
    $ lxc storage volume attach-profile lxd-pool dev-volume dev-profile tank /mnt/tank

    上面的命令附加卷 dev-volumelxd-pool 内到名为 dev-profile 的个人资料作为一个名为 tank 的设备安装在文件系统路径 /mnt/tank容器内。

    我希望这有帮助。

    关于ubuntu - 如何在 ZFS 数据集中创建卷并附加到 LXD 容器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46691226/

    35 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com