<fieldset id='goaq9'></fieldset>
<dl id='goaq9'></dl>
<acronym id='goaq9'><em id='goaq9'></em><td id='goaq9'><div id='goaq9'></div></td></acronym><address id='goaq9'><big id='goaq9'><big id='goaq9'></big><legend id='goaq9'></legend></big></address>
      1. <i id='goaq9'></i>

        <ins id='goaq9'></ins>

        <span id='goaq9'></span>
        1. <i id='goaq9'><div id='goaq9'><ins id='goaq9'></ins></div></i>

          <code id='goaq9'><strong id='goaq9'></strong></code>
          1. <tr id='goaq9'><strong id='goaq9'></strong><small id='goaq9'></small><button id='goaq9'></button><li id='goaq9'><noscript id='goaq9'><big id='goaq9'></big><dt id='goaq9'></dt></noscript></li></tr><ol id='goaq9'><table id='goaq9'><blockquote id='goaq9'><tbody id='goaq9'></tbody></blockquote></table></ol><u id='goaq9'></u><kbd id='goaq9'><kbd id='goaq9'></kbd></kbd>
          2. 新手学堂 Linux操作系统下设置NFS共享

            • 时间:
            • 浏览:1
            • 来源:124软件资讯网

              网络文件

              系统(NFS ,Network File System)是一种将远程主机上的分区(目录)经网络挂载到当地系统的一种机制 ,通过对网络文件系统的支持  ,用户可以在当地系统上像操作当地分区一样来对远程主机的共享分区(目录)举行操作  。

              在嵌入式Linux 的开发历程中  ,开发者需要在Linux 服务器上举行所有的软件开发 ,交织编译后  ,通用FTP 方式将可执行文件下载到嵌入式系统运行  ,但这种方式不光效率低下  ,且无法实现在线的调试 。因此 ,可以通过建设NFS ,把Linux 服务器上的特定分区共享到待调试的嵌入式目的系统上  ,就可以直接在嵌入式目的系统上操作Linux 服务器  ,同时可以在线对法式举行调试和修改  ,大大的利便了软件的开发  。因此  ,NFS 的是嵌入式Linux 开发的一个主要的组成部门  ,本部门内容将详细说明怎样设置嵌入式Linux 的NFS 开发情况  。


              嵌入式Linux 的NFS 开发情况的实现包罗两个方面:一是Linux 服务器端的NFS 服务器支持;二是嵌入式目的系统的NFS 客户端的支持 。因此  ,NFS 开发情况的建设需要设置linux 服务器端和嵌入式目的系统端  。


              Linux 服务器端NFS 服务器的设置


              以root 身份上岸Linux 服务器  ,编辑/etc 目录下的共享目录设置文件exports  ,指定共享目录及权限等  。


              执行如下下令编辑文件/etc/exports:


              # vi /etc/exports


              在该文件里添加如下内容:


              /home/work 192.168.0.*(rw,sync,no_root_squash)


              然后生存退出  。


              添加的内容表现:允许ip 地址规模在192.168.0.*的盘算机以读写的权限来会见/home/work 目录  。


              /home/work 也称为服务器输出共享目录  。


              括号内的参数意义形貌如下:


              rw:读/写权限 ,只读权限的参数为ro;


              sync:数据同步写入内存和硬盘 ,也可以使用async ,此时数据会先暂存于内存中  ,而不立刻写入硬盘  。


              no_root_squash:NFS 服务器共享目任命户的属性  ,若是用户是 root  ,那么对于这个共享目录来说就具有 root 的权限  。


              接着执行如下下令 ,启动端口映射:


              # /etc/rc.d/init.d/portmap start


              最后执行如下下令启动NFS 服务  ,此时NFS 会激活守护历程 ,然后就最先监听 Client 端的请求:


              # /etc/rc.d/init.d/nfs start


              用户也可以重新启动Linux 服务器  ,自动启动NFS 服务  。


              在NFS 服务器启动后  ,还需要检查Linux 服务器的防火墙等设置(一样平常需要关闭防火墙服务)  ,确保没有屏障掉NFS 使用的端口和允许通讯的主机  ,主要是检查Linux 服务器iptables  ,ipchains 等选项的设置 ,以及/etc/hosts.deny ,/etc/hosts.allow 文件  。


              我们首先在Linux 服务器上举行NFS 服务器的回环测试  ,验证共享目录是否能够被会见  。在Linux 服务器上运行如下下令:


              # mount –t nfs 192.168.0.20:/home/work /mnt


              # ls /mnt


              下令将Linux 服务器的NFS 输出共享目录挂载到/mnt 目录下  ,因此 ,若是NFS 正常事情 ,应该能够在/mnt 目录看到/home/work 共享目录中的内容 。


              二、嵌入式目的系统NFS 客户端的设置


              在Linux 服务器设置好后  ,还需要对客户端举行相关设置  。在设置内核时选择Load an Alternate Configuration File输入设置文件的路径和文件名添加内核对NFS的支持:


              选中networking options-》IP:kernel level auloconfiguralion项

              选中file systems-》network file systems-》下的root file system on nfs

              和nfs file system support重新编译内核下载bootloader和kernel到开发板上

              在嵌入式目的系统的Linux Shell 下 ,执行如下下令来举行NFS 共享目录挂载:


              # mkdir /mnt/nfs //建设Linux 服务器输出共享目录的挂载点;


              # mount –t nfs 192.168.0.20:/home/work /mnt/nfs –o nolock


              # cd /mnt/nfs


              # ls


              此时  ,嵌入式目的系统端所显示的内容即为Linux 服务器的输出目录的内容  ,即Linux 服务器的输出目 。


              录/home/work 通过NFS 映射到了嵌入式目的系统的/mnt/nfs 目录  。用户可以用增/删/修改文件的方式来验证现实效果  。mount 下令中的192.168.0.20 为Linux 服务器的IP 地址  ,/home/work 为Linux 服务器端所设置的共享输出目录 ,/mnt/nfs 为嵌入式装备上的当地目录 。


              在开发历程中  ,往返输入下令很是烦人  ,我写了两个简朴的剧本来完成nfs的启动 ,挂载  。

              host启动nfs:
              snfs
              #!/bin/bash
              ifconfig eth0 192.168.0.20
              /etc/rc.d/init.d/portmap start
              /etc/rc.d/init.d/nfs start
              嵌入式目的机挂载nfs:
              mnfs:

              #!/bin/sh
              mount -t nfs 192.168.0.20:/home/work/nfs /mnt/nfs -o nolock
              echo “nfs ok  !”