一、在TX2上搭建nfs服务器
1、安装nfs服务
sudo apt-get install nfs-kernel-server
2、修改配置文件
sudo vim /etc/exports
修改内容如下:
/app *(rw,sync,no_root_squash)
各段表达的意思如下,根据实际进行修改:
/app :共享的目录
* :指定哪些用户可以访问
* 所有可以ping同该主机的用户
192.168.1.* 指定网段,在该网段中的用户可以挂载
192.168.1.12 只有该用户能挂载
(ro,sync,no_root_squash): 权限
ro : 只读
rw : 读写
sync : 同步
no_root_squash: 不降低root用户的权限
其他选项man 5 exports 查看
3、重启nfs服务
sudo /etc/init.d/nfs-kernel-server restart
到此,nfs的服务就搭建好了。
二、windows 7启动nfs服务
1:在win7下开启nfs功能,如图:
此时就能看到挂载上来的磁盘分区了:如图:
Win7 NFS客户端使用mount命令挂载NFS服务之后,文件系统对Win7只读,无法写入文件,无法新建文件夹,此时使用mount命令可以查看到如下状态: |
可以看到UID=-2由于在存储设备上共享出来的NFS文件系统归属于root权限,并且无法修改该所属用户,而Windows通过UID=-2的用户去写,肯定写不进去。
解决办法就是让Win7在挂载NFS的时候将UID和GID改成0即可:打开注册表:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ClientForNFS\CurrentVersion\Default,增加两项:AnonymousUid,AnonymousGid,如图:
重新启动计算机,重新mount即可。此时就能在win7下对nfs文件系统进行读写操作了,跟本地磁盘一样。
查看mount属性,如下:
经测试,linux系统也可以连接上TX2,即linux系统也可以通过nfs共享目录。
要求是linux系统中必须要有/sbin/mount.nfs执行文件
挂载命令为:mount -t nfs -o nolock 192.168.12.248:/app /nfs
将TX2板卡192.168.12.248:/app目录挂载到/nfs目录下
参考文章: