来吧兄弟,一起玩一起讨论!
您需要 登录 才可以下载或查看,没有账号?注册
×
本帖最后由 leon_kong 于 2013-8-13 09:18 编辑
前言
在升级到DSM黑群晖之前,一直在用DNS-313配WDTV、iPad1来看电影。受到DNS-313及播放器硬件性能的影响,SMB协议网络播放720P文件根本是不可能的事情,只有采用NFS协议,才能让WDTV和iPad1流畅播放DNS-313上的720P影片(而1080P仍然没戏。但LD的iPad4可以通过SMB流畅播放DNS-313上的1080P电影,差距啊),所以一直比较迷信NFS。
在升级NAS的时候,看到DSM支持NFS,所以就利用D400的机箱和Acer D510的主板装了O大的DSM4.2 3211版(感谢odie82544前辈的辛勤工作,感谢vanloon前辈的指点帮助),并且在T430i笔记本上用VBox搭建了4.2的虚拟环境。
昨天在设置NFS时遇到了问题——在DSM里明明设置好了,XBMC里也能看到共享目录,但就是点不进去!查询了坛子里的文章,看到有很多朋友也遇到了这方面的问题,发帖求助后也没了下文,专门讲DSM下NFS设置的文章就更没有了。
最后通过google,参考群晖DS110的设置教程以及自己摸索,最后解决了这个问题,现在整理出来,分享给各位纳斯人,也为有同样NFS设置问题的朋友们提供一个参考。
DSM4.2下NFS的相关设置
1、开启NFS服务并设置共享文件夹的NFS权限
联机并登录DSM后,打开控制面板,在“文件共享及权限管理”栏下找到“win/Mac/NFS”图标,点击进入。
点击“NFS服务”标签页,勾选“启动NFS服务”,点击应用开启NFS服务。
返回控制面板,仍然是在“文件共享及权限管理”栏下,找到“共享文件夹”图标,点击进入。
选择要设置NFS共享的共享文件夹,如video文件夹,点击“权限”菜单,选择“NFS权限”,点击进入
点击“新增”按钮
根据需要设置“服务器名称或IP地址*:”(其实是客户访问端的服务器名称或地址/地址段。本例中地址为*,表示接受所有IP地址的访问)及其他参数(默认设置即可),确定保存。
至此,黑群晖的NFS服务已经启动,DSM管理界面下相关设置工作已完成,但是通过XBMC等客户端访问NFS共享时会出现本文初出现的问题——能看到服务器上的NFS共享文件夹,但是点击没有反应。如何解决,请接着看下文。
2、修改exports文件
熟悉NFS的朋友应该了解,在Linux下NFS服务的配置信息保存在/etc/exports文件中,DSM下NFS的相关设置也是保存在这里。但是DSM下NFS设置只对应linux下相关设置的3个参数,其余的参数没有设置(或设置不正确),而正是这些参数中的一个可以更正上面出现的问题。
接下来,就是要修改exports文件中的相关参数,首先要进行预备工作——开启服务器上的Telnet或SSH服务。
在控制面板中的“网络服务”栏下,找到“终端机”图标,点击进入。
根据使用Telnet还是SSH终端,勾选“启动Telnet功能”或“启动SSH功能”(本文以Telnet为例),保存。
在客户机(以Win7为例)上打开命令提示符,telnet登入服务器,用户名为root,密码为admin的密码
用vi工具编辑/etc/exports——输入“vi /etc/exports”,
exports文件内容如下图所示。
其中:
/volume1/video —— 服务器端NFS共享路径
* —— 可接受的客户端地址,这里表示接受所有客户端
rw —— 客户端具有读写权限
async —— 客户端写入采用异步方式,即先写入内存,再写入磁盘
no_wdelay —— 若有写操作则立即执行
no_root_squash —— 客户机用root访问该共享文件夹时,不映射root用户
insecure_locks —— 禁止客户端的非授权访问(需要修改的参数)
anonuid=0 —— 指定NFS服务器/etc/passwd文件中匿名用户的UID
anongid=0 —— 指定NFS服务器/etc/passwd文件中匿名用户的GID
这里,insecure_locks参数禁止了客户端的非授权访问,要改为insecure允许客户端的非授权访问,这样才能使客户端看到共享文件的内容。
在VI工具中输入“i”,进入编辑模式,修改insecure_locks为insecure
修改后按“ESC”键,输入“:wq”保存退出。
此时,exports文件已修改完毕,需要重启NFS,有两种方法:
一种是回到控制面板“NFS服务”标签页,去除“启动NFS服务”前面的勾选,点击应用停止NFS服务,然后再勾选“启动NFS服务”,点击应用重新开启NFS服务;
另外一种是在刚才的终端界面直接输入“exportfs -r”命令,回车重新加载/etc/exports中的共享目录。
附:NFS参数详解
Ro 该主机对该共享目录有只读权限 Rw 该主机对该共享目录有读写权限 Root_squash 客户机用root用户访问该共享文件夹时,将root用户映射成匿名用户 No_root_squash 客户机用root访问该共享文件夹时,不映射root用户 All_squash 客户机上的任何用户访问该共享目录时都映射成匿名用户 Anonuid 将客户机上的用户映射成指定的本地用户ID的用户 Anongid 将客户机上的用户映射成属于指定的本地用户组ID Sync 资料同步写入到内存与硬盘中 Async 资料会先暂存于内存中,而非直接写入硬盘 Insecure 允许从这台机器过来的非授权访问 wdelay 如果多个用户要写入NFS目录,则归组写入(默认) no_wdelay 如果多个用户要写入NFS目录,则立即写入,当使用async时,无需此设置 hide 在NFS共享目录中不共享其子目录 no_hide 共享NFS目录的子目录 subtree_check 如果共享/usr/bin之类的子目录时,强制NFS检查父目录的权限(默认) no_subtree_check 和上面相对,不检查父目录权限 anonuid=xxx 指定NFS服务器/etc/passwd文件中匿名用户的UID anongid=xxx 指定NFS服务器/etc/passwd文件中匿名用户的GID
大功告成!
|