简短版本:已安装的数据集是 RO,即使我试图将它们设为 RW。
长版:我们目前在 Wheezy 上的 Linux 上实现了 ZFS 的工作实现(我在之前的 SE 离开时继承了它),我们想要升级到 Jessie...因为...只是因为。在升级生产之前,我试图在本地机器上运行的 VM 中复制该环境(尽可能多地)。
我创建了池,并通过以下方式创建了一个新数据集:
root@zfstest1:~# zfs set [email protected],insecure tank/vmware
root@zfstest1:~# zfs share -a
root@zfstest1:~# showmount -e
Export list for zfstest1:
/tank/vmware 10.1.2.3
我已经将权限和属性以及我能想到的所有内容与生产进行了比较,但无论我将数据集安装在我的 Mac 上还是 VMware 主机上,卷/数据存储最终都是 RO。/tank 和子对象的默认权限似乎是 755,而我发现在我的 Mac 或 VMware 主机 RW 上制作挂载卷的唯一方法是将它们设为 777。
我知道有些不同的是不同的 zfs-debian、spl-dkms 等软件包。我只是找不到获取旧版本的存储库(0.6.3-1~wheezy vs 0.6.5.2-2-wheezy)
非常感谢我可以寻找什么来获得这项工作的帮助。
所以我发现正在运行
在我的测试虚拟机上给我的结果与在我的生产服务器上不同。我缺少的是/etc/exports两者都是默认的,结果来自
是相同的,但生产中的/var/lib/nfs/etab文件显然有从某个地方填充的条目......我只是不知道从哪里或如何。
最终,不同之处在于 etab 文件中没有no_root_squash。
所以我想这个实际问题可以认为已经解决了,但现在我必须弄清楚/var/lib/nfs/etab从哪里获取信息的另一个问题,以及为什么我们的生产服务器以这种方式填充它。
更新:因此,该命令正在从or命令
exportfs -v
获取它的信息。进行擦除,或至少在运行或重新启动该服务后显示任何内容。运行 share 命令后,etab 将重新填充 sharenfs 条目。zfs share -a
zfs share [dataset]
service nfs-kernel-server restart
showmount -e
exportfs -v
...叹息...不断学习。
sharenfs
zfs
如果数据集没有mountpoint
集合,将出现失败