服务器大本营

 找回密码
 我要入营

QQ登录

只需一步,快速开始

查看: 7|回复: 0

NFS服务器是什么?NFS提供的服务是什么?

[复制链接]

8万

敬重

923

主题

207

精华

管理员

积分
9713

启航之章进阶之印里程之碑突破之证飞跃之星蜕变之勋卓越之路龙年行大运

QQ
发表于 4 小时前 | 显示全部楼层 |阅读模式

我要入营,结交更多好友,开启更多功能,轻松玩转服务器大本营!

您需要 登录 才可以下载或查看,没有账号?我要入营

x
1、NFS 提供的服务是什么?
在嵌入式 Linux 开发中,需要在 Linux 主机为目标机编写程序代码,然后编译程序,生成的程序是要传输到目标机上才能调试、运行。那么如何更快、更便捷地传输文件,将影响到开发工作的效率。 NFS 无疑是最好的选择。通过 NFS 服务,主机可以将自己系统中某个指定目录通过网络共享给目标机(和 Windows 的文件网络共享类似)。目标机可以直接运行存放于 Linux 主机共享目录下的程序。这样调试程序时十分方便。

NFS 即网络文件系统(Network File-System),可以通过网络让不同机器、不同系统之间可以实现文件共享。通过 NFS,可以访问远程共享目录,就像访问本地磁盘一样。 NFS 只是一种文件系统,本身并没有传输功能,是基于 RPC(远程过程调用) 协议实现的,采用 C/S 架构。接下来将介绍如何在 ubuntu 系统中开启 NFS 服务器功能,使得开发套件能共享 ubuntu 系统的指定目录。

2、安装 NFS 软件包
在 ubuntu 终端输入下面命令安装 NFS 服务器:
  1. sudo apt-get install nfs-kernel-server #安装 NFS 服务器端
  2. sudo apt-get install nfs-common #安装 NFS 客户端
复制代码

NFS服务器是什么?NFS提供的服务是什么?

NFS服务器是什么?NFS提供的服务是什么?


3、添加 NFS 共享目录
安装完 NFS 服务器等相关软件后,需要指定用于共享的 NFS 目录,其方法是在 “/etc/exports” 文件里面设置对应的目录及相应的访问权限,每一行对应一个设置。下面介绍如何添加 NFS 共享目录。

在终端输入“sudo vi /etc/exports”指令,如下所示:
  1. sudo vi /etc/exports
复制代码

“/etc/exports” 文件打开后, 文件内容如下所示。

  1. # /etc/exports: the access control list for filesystems which may be exported
  2. #       to NFS clients.  See exports(5).
  3. #
  4. # Example for NFSv2 and NFSv3:
  5. # /srv/homes       hostname1(rw,sync,no_subtree_check) hostname2(ro,sync,no_subtree_check)
  6. #
  7. # Example for NFSv4:
  8. # /srv/nfs4        gss/krb5i(rw,sync,fsid=0,crossmnt,no_subtree_check)
  9. # /srv/nfs4/homes  gss/krb5i(rw,sync,no_subtree_check)
  10. #
复制代码

若需要把“/nfsroot”目录设置为 NFS 共享目录,请在该文件末尾添加下面的一行:
  1. /nfsroot *(rw,sync,no_root_squash)
复制代码

其中“*”表示允许任何网段 IP 的系统访问该 NFS 目录。添加完成后,文件内容如下所示。

  1. # /etc/exports: the access control list for filesystems which may be exported
  2. #       to NFS clients.  See exports(5).
  3. #
  4. # Example for NFSv2 and NFSv3:
  5. # /srv/homes       hostname1(rw,sync,no_subtree_check) hostname2(ro,sync,no_subtree_check)
  6. #
  7. # Example for NFSv4:
  8. # /srv/nfs4        gss/krb5i(rw,sync,fsid=0,crossmnt,no_subtree_check)
  9. # /srv/nfs4/homes  gss/krb5i(rw,sync,no_subtree_check)
  10. #

  11. /nfsroot *(rw,sync,no_root_squash)
复制代码

修改完成后, 保存并退出“/etc/exports” 文件。然后新建“/nfsroot”目录,并为该目录设置最宽松的权限:
  1. sudo mkdir /nfsroot
  2. sudo chmod -R 777 /nfsroot
  3. sudo chown –R nobody /nfsroot
复制代码

为了方便测试 NFS 是否挂载成功,可以在“/nfsroot”目录下创建 NFS_Test 目录用于测试。

NFS服务器是什么?NFS提供的服务是什么?

NFS服务器是什么?NFS提供的服务是什么?


4、启动 NFS 服务
在终端中执行如下命令,可以启动 NFS 服务:
  1. sudo /etc/init.d/nfs-kernel-server start
复制代码

NFS服务器是什么?NFS提供的服务是什么?

NFS服务器是什么?NFS提供的服务是什么?


执行如下命令则可以重新启动 NFS 服务,也可以通过重启 ubuntu 来实现:
  1. sudo /etc/init.d/nfs-kernel-server restart
复制代码

NFS服务器是什么?NFS提供的服务是什么?

NFS服务器是什么?NFS提供的服务是什么?


在 NFS 服务已经启动的情况下,如果修改了“/etc/exports” 文件,需要重启 NFS 服务,以刷新 NFS 的共享目录。
当然在下一次启动系统时, NFS 服务是自动启动的。

5、测试 NFS 服务器
NFS 服务启动后,可以在 Linux 主机上进行自测。自测的基本方法为:将已经设定好的 NFS 共享目录 mount(挂载) 到另外一个目录下,看能否成功。Linux 主机 IP 为 192.168.25.25,其 NFS 共享目录为/nfsroot, 可使用如下命令进行测试:
  1. sudo mount -t nfs 192.168.25.25:/nfsroot /mnt -o nolock
复制代码

NFS服务器是什么?NFS提供的服务是什么?

NFS服务器是什么?NFS提供的服务是什么?


如果指令运行没有出错,则 NFS 挂载成功,在主机的 /mnt 目录下应该可以看到 /nfsroot 目录下的内容(即之前创建的 NFS_Test 目录)。
此外,也可以使用开发板进行挂载测试,此时需要在开发套件上输入如下指令:
  1. mount -t nfs 192.168.25.25:/nfsroot /mnt -o nolock
  2. cd /mnt
  3. ls
复制代码

NFS服务器是什么?NFS提供的服务是什么?

NFS服务器是什么?NFS提供的服务是什么?


若挂载成功,在开发套件的/mnt 目录下也可以看见 NFS_Test 目录。之后,开发套件就可以像操作本地目录一样去操作主机的/nfsroot 目录。注意,要想成功地挂载 NFS 目录,开发套件必须要先确保与主机之间的网路是畅通的,可以使用 ping 命令进行测试:
  1. ping 192.168.25.25
复制代码

NFS服务器是什么?NFS提供的服务是什么?

NFS服务器是什么?NFS提供的服务是什么?


如果无法 ping 通主机,则需要先仔细检查网络连接与设定。 此外,在 mount 与 umount(解除挂载)操作时,用户的当前路径不能是操作的目标路径。 例如下面两条指令就是错误的,用户当前所处的路径与要 mount(或 umount)的目标路径相同:
  1. pwd
  2. mount -t nfs 192.168.25.25:/nfsroot /mnt -o nolock                # 错误
  3. umount /mnt                      # 错误
复制代码

NFS服务器是什么?NFS提供的服务是什么?

NFS服务器是什么?NFS提供的服务是什么?


感谢您的阅读,服务器大本营-技术文章内容集合站,助您成为更专业的服务器管理员!
一入IDC深似海,从此你我是良人!
您需要登录后才可以回帖 登录 | 我要入营

本版积分规则

点击直接加入[服务器大本营QQ频道]
滴!摸鱼时间到~
Loading...

QQ|Archiver|手机版|网站地图|服务器大本营 ( 赣ICP备2021009089号 )

GMT+8, 2025-10-15 15:54 , Processed in 0.062513 second(s), 27 queries , Gzip On.

Powered by 服务器大本营

© 2021-2023 联系飞飞

快速回复 返回顶部 返回列表