Linux NFS 服务器测试

1 NFS 能做什么?
在嵌入式 Linux 开发中,需要在 Linux 主机为目标机编写程序代码,然后编译程序,生
成的程序是要传输到目标机上才能调试、运行。那么如何更快、更便捷地传输文件,将影响
到开发工作的效率。NFS 无疑是最好的选择。通过 NFS 服务,主机将用户指定的目录通过
网络共享给目标机(和 windows 的文件网络共享类似)。目标机可以直接运行存放于 Linux
主机共享目录下的程序。这样调试程序时十分方便。
NFS 即网络文件系统(Network File-System),可以通过网络让不同机器、不同系统之
间可以实现文件共享。通过 NFS,可以访问远程共享目录,就像访问本地磁盘一样。NFS
只是一种文件系统,本身并没有传输功能,是基于 RPC(远程过程调用)协议实现的,采
用 C/S 架构。
2 安装 NFS 软件包
在终端输入下面命令安装 NFS 服务器:
vmuser@Linux-host ~$ sudo apt-get install nfs-kernel-server #安装 NFS 服务器端
vmuser@Linux-host ~$sudo apt-get install nfs-common #安装 NFS 客户端
3 添加 NFS 共享目录
安装完 NFS 服务器等相关软件后,需要指定用于共享的 NFS 目录,其方法是在
“/etc/exports”文件里面设置对应的目录及相应的访问权限,每一行对应一个设置。下面介
绍如何添加 NFS 共享目录。
在终端输入“sudo vi /etc/exports”指令,如下所示:
vmuser@Linux-host:~$ sudo vi /etc/exports
[sudo] password for vmuser:
“/etc/exports”文件打开后,文件内容如所示。
#
to NFS clients.
/etc/exports 文件内容
See exports(5).
#
# Example for NFSv2 and NFSv3:
# /srv/homes
hostname1(rw,sync,no_subtree_check) hostname2(ro,sync,no_subtree_check)
#
# Example for NFSv4:
# /srv/nfs4 gss/krb5i(rw,sync,fsid=0,crossmnt,no_subtree_check)
# /srv/nfs4/homes gss/krb5i(rw,sync,no_subtree_check)
若需要把“/nfsroot”目录设置为 NFS 共享目录,请在该文件末尾添加下面的一行:
/nfsroot  *(rw,sync,no_root_squash)
其中“*”表示允许任何网段 IP 的系统访问该 NFS 目录。添加完成后,文件内容如程
程序清单 添加了 NFS 目录
#
# Example for NFSv2 and NFSv3:
# /srv/homes
hostname1(rw,sync,no_subtree_check) hostname2(ro,sync,no_subtree_check)
#
# Example for NFSv4:
# /srv/nfs4 gss/krb5i(rw,sync,fsid=0,crossmnt,no_subtree_check)
# /srv/nfs4/homes gss/krb5i(rw,sync,no_subtree_check)
#
/nfsroot   *(rw,sync,no_root_squash)

修改完成后,保存并退出“/etc/exports”文件。然后新建“/nfsroot”目录,并为该目录
设置最宽松的权限:
vmuser@Linux-host:~$ sudo mkdir /nfsroot
vmuser@Linux-host:~$sudo chmod -R 777 /nfsroot
vmuser@Linux-host ~$ sudo chown –R nobody /nfsroot
为了方便测试 NFS 是否挂载成功,可以在“/nfsroot”目录下创建 NFS_Test 目录用于测
试。
4 启动 NFS 服务
在终端中执行如下命令,可以启动 NFS 服务:
vmuser@Linux-host ~$ sudo /etc/init.d/nfs-kernel-server start
执行如下命令则可以重新启动 NFS 服务:
vmuser@Linux-host ~$ sudo /etc/init.d/nfs-kernel-server restart
执行启动命令后,其操作结果如图 所示,表示 NFS 服务已正常启动。
 启动 NFS 服务
在 NFS 服务已经启动的情况下,如果修改了“/etc/exports”文件,需要重启 NFS 服务,
以刷新 NFS 的共享目录。
当然在下一次启动系统时,NFS 服务是自动启动的。
5 测试 NFS 服务器
NFS 服务启动后,可以在 Linux 主机上进行自测。测试的基本方法为:将已经设定好的
NFS 共享目录 mount(挂载)到另外一个目录下,看能否成功。
假定 Linux 主机 IP 为 192.168.12.137,NFS 共享目录为/nfsroot 可使用如下命令进行测
试:
vmuser@Linux-host~$ sudo mount -t nfs 192.168.12.137:/nfsroot
/mnt -o nolock
如果指令运行没有出错,则 NFS 挂载成功,在/mnt 目录下应该可以看到/nfsroot 目录下
的内容。

要搭建NFS服务器,您需要按照以下步骤进行操作: 1. 安装NFS服务器软件: 在终端中输入以下命令: ``` sudo apt-get update sudo apt-get install nfs-kernel-server ``` 2. 创建共享目录: 创建共享目录(例如“/mnt/nfs_share”)并将其权限设置为777: ``` sudo mkdir -p /mnt/nfs_share sudo chmod 777 /mnt/nfs_share ``` 3. 配置NFS共享: 打开NFS服务器配置文件/etc/exports: ``` sudo nano /etc/exports ``` 在文件中添加以下内容: ``` /mnt/nfs_share *(rw,sync,no_root_squash,no_subtree_check) ``` 其中: - /mnt/nfs_share 是您要共享的目录路径。 - * 表示允许来自任何主机的客户端访问该共享。 - rw 表示客户端可以读写该共享。 - sync 表示服务器将等待客户端确认文件写入后再响应请求。 - no_root_squash 表示客户端使用root用户身份访问共享时,仍然以root用户身份访问。 - no_subtree_check 表示不检查共享子目录的权限。 保存并关闭文件。 4. 重新加载NFS配置: 在终端中输入以下命令: ``` sudo exportfs -a sudo systemctl restart nfs-kernel-server ``` 5. 测试NFS共享: 在另一台Linux机器上,使用以下命令挂载共享目录: ``` sudo mount <NFS服务器的IP地址>:/mnt/nfs_share <本地挂载目录> ``` 例如: ``` sudo mount 192.168.1.100:/mnt/nfs_share /mnt/nfs_client ``` 如果挂载成功,则可以在本地挂载目录中看到NFS服务器上的文件。 这就是在Linux上搭建NFS服务器的基本步骤。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

#君#

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值