我在运行 OS X El Capitan 的 Mac Mini Server(2012 年末 - Macmini6,2)上的 VirtualBox 中的 USB 记忆棒上运行 FreeNAS-9.3-STABLE-201512121950。四核 i7、16G RAM,其中 8G 和 2 个处理器专用于 FreeNAS VM。
我有多个通过 USB3.0 连接的外部硬盘驱动器(SATA 和 SSD),我将它们用于由这些单独的物理驱动器上的虚拟硬盘(.vmdk)组成的 2 个独立存储池。
- /mnt/ZFS (RAIDZ3 - 6x500G + 64G L2ARC SSD 缓存) - 专为冗余和重要内容而构建,使用 lz4 压缩
- /mnt/Media(各种尺寸的驱动器,全部条带化 + 64G L2ARC SSD 缓存 + 8G ZIL SSD 日志) - 专为流媒体构建,无压缩或冗余。
我已成功安装并设置了 Plex Media Server 插件,该插件使用 jail 根目录 /mnt/Media/Jails。它拥有全部的 /mnt/Media 数据集,无需我为此 jail 分配存储空间。
现在,我想要安装 Crashplan 插件,但我意识到只有一个 jail 根,它不在首选数据集 (/mnt/ZFS) 上。我想用这个插件备份重要的东西,它应该与我的媒体数据集分开。
如果出现任何问题,我很难理解整个目录/文件结构以及监狱/插件删除的后果。
目前我唯一能想到的就是以下两个选项之一:
- 专门为监狱/插件添加一个额外的数据集,并在这个新的数据集内设置监狱根。
- 将 jail 根设置为 /mnt/ZFS/Jails 以实现冗余
关于#1的问题:
- 如果我要安装 Crashplan 插件并为其分配 /mnt/ZFS 以便将其备份到云端,那么新的 Jails 数据集是否需要冗余?
- 在为这个 Jail 数据集分配存储后,如果我删除该数据集,它是否也会删除分配给它的 /mnt/ZFS 中的文件 - 为了防止这种情况,我可以将 /mnt/ZFS 取消分配给 Jails 数据集和/或 Crashplan 插件吗?
关于#2的问题:
- 如果我将 /mnt/Media 中的存储分配给存储 /mnt/ZFS/Jails 的 jail 根目录的 Plex Media Server 插件,如果我丢失了 /mnt/Media 中的驱动器,会发生什么情况?它也会损坏 /mnt/ZFS 数据集吗?
- /mnt/ZFS 的整个存储是否可以提供给 /mnt/ZFS/Jails/plex_media_server1?
我的目标是将这两个数据集分开,但能够在每个数据集上安装插件。我完全不知所措。此时,任何帮助或建议都将不胜感激。我已阅读文档,但据我所知,它对我的特定情况确实没有帮助。
答案1
由于这个问题没有引起太多关注,而且似乎不再是一个大问题,我将尝试根据自己通过反复试验发现的结果来回答这个问题。
我似乎已经想出了一个可行的解决方案,而不是为此提供赏金,但如果有人能提供比这更好的答案,我会很乐意选择他们的答案。
- 我添加了一个数据集,
/mnt/ZFS/jailroot
这样我的监狱就变得多余了。 - 我将存储从
/mnt/ZFS/Media
添加到了 下的 PLEX jail 中/media
。 - 我
/mnt/ZFS/NAS
为需要冗余的重要文件添加了一个数据集。 /mnt/ZFS/jailroot
我在数据集下创建了一个 Crashplan jail- 我从 /mnt/ZFS/NAS
to the Crashplan jail under
/media 添加了存储。
似乎没有什么变得更糟的变化,但从我从 FreeNAS 文档中收集到的信息来看,它应该是这样工作的:
- 向 jail 添加存储只是向关联数据集中的文件添加指针(有点像符号链接),因此实际上并不会增加存储使用量
- 分配了这些数据集的实际监狱不会将文件解释为符号链接,而是将其解释为实际文件,因此从监狱中删除它们实际上会将它们从文件系统中删除。
- 这意味着如果我删除 Plex jail,它也会删除该 jail 内的所有内容
/media
,包括/mnt/Media
分配给它的数据集,因此在删除 jail 之前,我首先需要从 jail 中取消分配该数据集 - 不过,我认为在最新版本的 FreeNAS 中,有故障安全装置可以防止这种行为发生。