Gentoo下安装nfs server非常的简单,先使用命令 eix nfs根据Description找到合适的安装包,然后emerge 该包即可 emerge net-fs/nfs-utils。
安装之后,需要设置/etc/exports来决定需要共享的文件夹,具体可以参考:http://gentoo-wiki.com/NFS,或者man exports。
我的安装过程很顺利,但是在另一个Linux客户端上死活mount不上,本机使用showmount以及rpcinfo都可以看到 nfs server在运行。
最后实在没有办法,查看了一下/var/log/messages,发现里面有一句:
nfssvc: writing fds to kernel failed: errno 0 (Success)
感觉很奇怪,error=0是Success为什么还要在这里出现错误日志哪?在baidu上找了一下,一条结果都没有,然后,用google,搜索全部网页,出来了一些结果。有其他人也碰到过这种问题,看他们的讨论结果是,我现在使用的linux内核2.6.20-gentoo-r8(公版的好像是2.6.20-r15)在nfs方面有问题,那个人升级到1.6.21就没有问题了。
使用eix看了一下,我的系统上的2.6.21-r8还需要~x86,呵呵,又得使用新的命令啦。
由于好久没有用emerge了,连最基本的ACCEPT_WORDS以及emerge指定的版本都不会操作了,到网上查了一下,使用如下命令,顺利升级内核到2.6.21-gentoo-r2。
当/etc/exports文件发生改变后,可以运行/etc/init.d/nfs reload 来更新,可以用time来看看执行reload用了多少时间。
如果没有把导出的目录设置为nfs映射用户为w权限,则客户端无法在该目录创建文件及文件夹。