我正在为Oracle Linux (OLE) 6.1 (RedHatRHEL6.1兼容克隆)在Linux上尝试ZFS。我成功地为Oracle不可碎内核编译并安装了spl和zfs。Zfs正在工作,我创建了镜像
zpool create -f -o ashift=12 tank mirror sdb sdc现在,我正在尝试共享我的zfs池,如zfsonlinux站点中提到的那样,这个池被命名为"tank/nfs“。
zfs set sharenfs=on tank/nfs因此,我创建了坦克/ nfs,并将nfs设置为on。
现在,我尝试在本地主机上挂载nfs共享,以便通过
mount -t nfs4 127.0.0.1:/tank/nfs /mnt但我得到了mount.nfs4: mount system call failed
所以问题是:
上的ZFS将其挂载到Linux客户端。
答案是mount 127.0.0.1:/tank/nfs /mnt
发布于 2011-12-06 21:01:36
您的nfs服务器配置一定有问题。
请尝试按照此何图设置RHEL 6作为nfs服务器。
发布于 2011-11-24 20:11:39
为了建立NFS挂载,您需要在尝试挂载之前运行portmap服务。
运行/sbin/service portmap start并重新尝试您的NFS挂载。
对于RHEL6和更新版本,这是在rpcbind - /sbin/service rpcbind start中。
发布于 2011-11-25 14:59:55
根据我在FreeBSD和Debian /kFreeBSD上使用ZFS的经验,我发现sharenfs特性没有很好地实现。您可以在/etc/exports中设置NFS导出。
要导出的每个ZFS文件系统都需要自己的导出行。我们发现这对于数百个文件系统来说太慢了。您还应该尝试使用单个文件系统,就像使用传统的文件系统一样。
中的导出
您必须编辑/etc/exports文件才能在Linux中启用NFS。在Linux中使用NFSv4,每个导出的文件系统都必须安装在一个名为NFSv4伪膜系统的目录下。在这种情况下,这将是/tank。伪膜系统下的挂载点可以通过不同的访问控制方法和导出选项导出。安装在psuedofilesystem系统下的任何文件系统都必须在/etc/exports中拥有自己的导出行。
/etc/出口:
/tank *(fsid=0)
/tank/nfs *(rw,sync)要使对/etc/exports的更改生效,您应该运行exportfs -r。
对于NFSv4,您需要在客户机和服务器上运行idmapd,以方便从用户名到用户id号的映射。
在Linux NFSv4中,导出与NFSv3和更低的导出不同。假设伪膜系统是/tank,那么挂载命令应该是:
mount -t nfs -o vers=4 server:/nfs /mnt对于NFSv3,它将是:
mount -t nfs -o vers=3 server:/tank/nfs /mnthttps://serverfault.com/questions/334576
复制相似问题