如何构建嵌入式LINUX的NFS
linux配置nfs步骤及心得
linux配置nfs步骤及心得2014-05-28 22:50 25794人阅读评论(1) 收藏举报分类:嵌入式linux(28)版权声明:本文为博主原创文章,未经博主允许不得转载。
这节我们介绍NFS的相关概念,以及如何配置NFS和在客户端中查看NFS。
NFS的配置过程很简单。
在服务器端中编辑/etc/exports文件,添加如下内容:/home/nfs-share 192.168.1.122 *(rw,sync)第一项是要共享的目录,后者为共享的配置参数一般为:*(rw,sync,no_root_squash,no_all_squash,no_subtree_check)然后开启NFS和portmap服务:/etc/init.d/nfs start //用service nfs start也可以/etc/init.d/portmap start //用service portmap stasrt也可以在centos6.5中portmap已经改为rpcbind在客户端,用mount –t nfs 192.168.123:/home/nfs-share /home/remote_file挂载服务器端的共享目录到本地的/home/remote-file挂载点,然后我们就可以在客户端上应用到远程主机上的/home/nfs-share目录了。
想要系统在开机时自动挂载,修改/etc/fstab文件,把NFS服务器的共享目录添加进去就可以了,这个不用多说。
如何知道远程主机上的共享目录情况呢?使用showmount命令,这个命令需要root权限。
它有三个选项(记住这三个选项代表的含义:showmount –a IP 显示指定NFS服务器的客户端以及服务器端在客户端的挂载点showmount –d IP 显示指定NFS服务器在客户端的挂载点showmount –e IP 显示指定NFS服务器上的共享目录列表(或者叫输出列表)我们输入命令showmount –a 192.168.1.123:图片客户端中出现的mount clntudp_create: RPC: Program not registered错误是怎么回事?噢,我刚才重启了一下服务器端,重启后NFS服务没有开启。
嵌入式Unux根文件系统NFS启动方式构建
’
0 引言
根 据英 国 电气 工 程 师 协 会 f . Istt no UK. tui f ni o
到文 件 系统 中 的相应 目录下 。下 面 将对 上 述 构建
ቤተ መጻሕፍቲ ባይዱ
过 程进 行详 尽 分析 。 E etcl n ier l r a E gne)的定 义 ,嵌 入式 系统 为 控 制 、 ci 监视 或辅 助 设 备 、机器 或 用 于 工 厂 运 作 的设 备 。
现 在 比较 流行 的 嵌 人 式 系 统 种 类 非 常 多 , 比如
S n i 、 V w rs y ba n x ok 。W ic 、 Ln x 。 其 中 Ln x n e iu 等 iu
1 基 于A M的嵌 入 式 Ln x 统 平 台 R iu 系
Ln x 一款 遵 循G L iu 是 P 协议 的成 熟稳 定 的操 作 系 统 。 它 具 有 许 多 优 点 , 比 如 开 源 、成 熟 、完 善 、低 成本 、可支 持 多种 硬件 平 台 、可 裁剪 、性 能 稳定 、极 好 的网络 支持 等 ,这 些优 点 使它 已成
第4 期
电子元 器 件 主 片 1
Elcr n cCo o e t De i eAp l a in et i o mp n n & vc pi t s c o
V0. 2 No4 1 . 1 Ap .2 0 r 01
开 发 的应用 程 序等 几个 方 面 。如果 文 件 系统 或者 开 发 的应 用 程序 有 问题 ,则 需要 重 新在 宿 主 机上
进行 调试 和 编译 ,然 后 重新 下载 .这样 就 给 开发
linux搭建NFS文件共享服务器的步骤详解
linux搭建NFS⽂件共享服务器的步骤详解linux搭建NFS服务器为了实现不同操作系统中的数据共享,我们⼀般会搭建⼀些⽤于⽂件共享的服务器,nfs服务器就是其中⼀种,它实现的是linux与linux之间的共享。
今天我将把如何在linux系统搭建nfs服务器的步骤分享出来,供⼤家参考。
搭建步骤1、安装nfs所需软件包yum install rpcbind nfs-utils2、创建测试⽂件并赋权限mkdir /home/testchmod -R 777 /home/test/cd /home/test/vim aaa/bbb.txt3、修改配置⽂件vim /etc/exports写⼊ /home/test 192.168.121.0/24(rw)共享⽂件路径允许共享⽹段(共享⽂件可执⾏权限)共享⽂件可执⾏权限有:ro 只读访问rw 读写访问sync 所有数据在请求时写⼊共享hide 在NFS共享⽬录中不共享其⼦⽬录no_hide 共享NFS⽬录的⼦⽬录all_squash 共享⽂件的UID和GID映射匿名⽤户anonymous,适合公⽤⽬录。
no_all_squash 保留共享⽂件的UID和GID(默认)root_squash root⽤户的所有请求映射成如anonymous⽤户⼀样的权限(默认)no_root_squas root⽤户具有根⽬录的完全管理访问权限4、开启服务systemctl start rpcbind nfs设置开机⾃启echo "192.168.121.38:/home/test /nfs nfs4 defaults 0 0" >> /etc/fstabmount -av5、查看共享信息showmount -e 192.168.121.38 (此处ip地址为搭建服务器主机地址)6、访问nfs服务器linux端访问:mount 192.168.121.38:/home/test/ /mnt/df总结到此这篇关于linux搭建NFS⽂件共享服务器的⽅法的⽂章就介绍到这了,更多相关linux搭建NFS服务器内容请搜索以前的⽂章或继续浏览下⾯的相关⽂章希望⼤家以后多多⽀持!。
嵌入式uClinux相关NFS开发
嵌入式uClinux相关NFS开发嵌入式linux中文站部分站友近日询问关于在uClinux上搭建NFS的方法,先摘抄相关文档如下,希望大家能一起帮忙看看,是不是有用。
在目标机上可以运行uClinux了,接着就需要开发完成特定任务的应用程序了。
由于嵌入式uClinux的特殊开发环境(主机——目标机),其应用程序的开发模式也有多种。
一种是在主机上编写程序,然后编译、连接、调试,成功后将程序和内核一同编译并下载到目标板。
这种模式中不利于开发的问题有:主机和目标机的运行环境(如指令集,函数库等)不同。
另一种是通过网线或串口线将目标机和主机连起来,直接在目标机上开发调试。
这种模式使用NFS将主机的特定目录mount到目标机上,对主机的操作就是对目标机的操作。
采用 NFS 模式可以方便应用程序的开发,减少映像文件的下载次数和对flash的烧写次数。
这对于缩短开发周期,提高开发效率,加快产品的上市时间相当重要。
1 NFS的简要介绍NFS是Network File System(网络文件系统)的缩写,最初是由Sun公司开发出来的分布式文件系统。
提供NFS服务的一方是NFS Server (远程主机),使用NFS服务的一方是NFS Client(客户机)。
利用它,客户机可以将远程主机提供的共享目录挂载到自己的目录上,在本地的操作如同对远程主机的操作。
NFS有自己的协议与端口号(2049),它本身并没有提供传输资料的协议,但是NFS却能通过网络进行资料的共享。
这是因为在资料传送或者其它相关数据交互的时候,NFS用远程过程调用(Remote Procedure Call, RPC)的传输协议。
RPC服务portmap负责管理服务与相关端口映射的工作。
因此,使用NFS服务必须先激活RPC服务portmap,在主机和目标机上都要实现RPC服务,才可以使用NFS。
使用NFS Server还需要激活至少两个系统守护进程:rpc.nfsd用于管理Client使用主机共享目录的权限,包含对Client的IP的判别; rpc.mountd用于管理NFS的文件系统。
Linux下NFS(网络文件系统)的建立与配置方法
F i l e S y s t e m) 是 一 种 将 远 程 主 机 上 的 s y n c , n o _ r o o t _ s q u a s h) 然后保存退出 。 分区 ( 目录 ) 经 网 络 挂 载 到 本 地 系 统
UX
的 NF S开 发 环境 。 嵌 入式 L i n u x 的 NF S 开 发 环 境
# mk d i r/ mn t / NF S/ /建 立 L i n —
的 实 现 包 括 两 个 方 面 :一 是 L i n u x
服 务 器 输 出 共 享 目录 的 挂 载 点 ;
≠ ≠ mo unt t N FS 1 9 2. 1 6 8. 0. 2 0:
/ h o me / wo r k也 称 为 服 务 器 输 出
共 享 目录 。
参数 意 义描 述 如 下 :
开 发者需要 在 L i n u x服 务 器 上 进 行 所有的软件开发 , 交叉编译后 , 通 用
F T P 方式 将 可 执 行 文 件 下 载 到 嵌 入
n Ⅳ: 读 /写 权 限 , 只 读权 限 的 参 端 的 配 置 数为 r o ;
最 后 执 行 如 下 命 令 启 动 NF S服 S h e l l下 , 执 行 如 下 命 令 来 进 行 NF S 务 ,此 时 NF S会 激 活 守 护 进 程 , 然 共 享 目录 挂 载 : 后就 开 始 监 听 C l i e n t端 的 请 求 :
# / e t c / r c. d/ / n i t. d / N FS s t a r t
添加 的 内容 表 示 :允 许 i p地 址
Linux下的NFS配置篇
Linux下的NFS配置篇2010-11-25 22:50:32标签:Linux配置休闲NFS职场版权声明:原创作品,如需转载,请与作者联系。
否则将追究法律责任。
1. 简介1) 介绍NFS是Network File System的简写,即网络文件系统,也被称为NFS。
NFS允许一个系统在网络上与它人共享目录和文件。
通过使用NFS,用户和程序可以像访问本地文件一样访问远程系统上的文件2) NFS好处Ø本地工作站使用更少的磁盘空间,因为通常的数据可以存放在一台机器上而且可以通过网络访问到Ø用户不必在每个网络机器中都有一个home目录,home目录可以被放在NFS服务器上并且在网络上处处可用Ø U盘与CDROM等存储设备可以在网络上面被别的机器使用,这可以减少整个网络上的可移动介质设备的数量3) 三个守护进程Ø rpc.nfsd基本的NFS守护进程,主要管理客户端是否能登入服务端Ø rpc.mountdRPC的安装守护进程,主要管理NFS的文件系统。
当客户端通过rpc.nfsd登陆NFS服务端后,在使用NFS服务端所提供的文件前,还必须通过文件使用权限的验证,rpc.mountd会读取NFS的配置文件/etc/exports来对比客户端权限Ø portmapportmap进行端口映射,当客户端尝试连接并使用RPC服务端提供的服务(如NFS服务)时,portmap会将所管理与服务对应的端口号提供给客户端,使客户端可以通过该端口向服务端请求服务。
portmap如果没有运行,NFS客户端就无法查找从NFS服务端中共享的目录4) 重要的文件Ø /etc/exportsl 介绍NFS中目录共享配置文件,用于编写需要共享的目录以及所共享的网络和用户权限l 格式共享的目录 [主机名称1|网段1|域1](参数1,参数2) [主机名称2|网段2|域2] (参数3,参数4)l 参数:n rw:可读可写的权限n ro:只读的权限n no_root_squash:登入到NFS主机的用户如果是root用户,他就拥有root的权限,此参数很不安全,建议不要使用。
嵌入式Linux NFS方式下应用程序的实现
嵌入式Linux NFS方式下应用程序的实现下的应用程序的开发,与Windows下应用程序的开发大不相同。
在Windows环境中,可以挺直在PC上用法各种集成编译开发工具,完成程序编辑、编译和运行,而在嵌入式Linux环境下,缺少容易、高效的开发工具,程序的开发需要在PC+嵌入式Linux平台完成。
因此,在程序的调试运行过程中,需要在Linux服务器和嵌入式开发板间交换信息,这种信息交换目前最常用的方式是FTP方式,即:先在Linux服务器上编辑源文件,然后交错编译生成可执行文件,再通过FTP下载到嵌入式主机系统中运行,如浮现错误则回到Linux服务器上重新编译,再下载运行,直到程序正确运行为止。
但FTP方式缺点是效率比较低,而且无法在线调试。
这里笔者研究另一种更高效率的信息交换方式,即:NFS (网络文件系统)方式下嵌入式Linux下的应用程序的实现办法。
本文以三星公司9内核芯片开发板接口为基础,软件采纳Linux 2.4.21,编译器为arm-linux-gcc的交错编译器。
2 嵌入式Linux开发平台的建立在嵌入式Linux下开发应用程序,必需建立一个完美的嵌入式Linux 开发环境。
2.1 嵌入式Linux开发平台构架嵌入式Linux 开发平台构架主要包括:嵌入式Linux 服务器、工作站、嵌入式开发板系统,其结构1所示。
嵌入式Linux 服务器由一台PC充当,主要作为嵌入式Linux内核编译、应用程序编译的公共平台,这里安装标准的Redhat Linux操作系统 ,工作站为一般局域网计算机,可以是一台或多台,安装Windows 操作系统,普通用来完成各种日常工作,可视需要与Linux 服务器、嵌入式开发板系统衔接,嵌入式开发板系统是用来开发嵌入式应用程序,它必需与Linux 服务器举行网络衔接,目的是建立网络文件系统,把Linux服务器上的特定名目分享到待调试的嵌入式开发板系统上,第1页共6页。
LinuxNFS服务器的安装与配置方法(图文详解)
LinuxNFS服务器的安装与配置⽅法(图⽂详解)⼀、NFS服务简介 NFS 是Network File System的缩写,即⽹络⽂件系统。
⼀种使⽤于分散式⽂件系统的协定,由Sun公司开发,于1984年向外公布。
功能是通过⽹络让不同的机器、不同的操作系统能够彼此分享个别的数据,让应⽤程序在客户端通过⽹络访问位于服务器磁盘中的数据,是在类Unix系统间实现磁盘⽂件共享的⼀种⽅法。
NFS 的基本原则是“容许不同的客户端及服务端通过⼀组RPC分享相同的⽂件系统”,它是独⽴于操作系统,容许不同硬件及操作系统的系统共同进⾏⽂件的分享。
NFS在⽂件传送或信息传送过程中依赖于RPC协议。
RPC,远程过程调⽤ (Remote Procedure Call) 是能使客户端执⾏其他系统中程序的⼀种机制。
NFS本⾝是没有提供信息传输的协议和功能的,但NFS却能让我们通过⽹络进⾏资料的分享,这是因为NFS使⽤了⼀些其它的传输协议。
⽽这些传输协议⽤到这个RPC功能的。
可以说NFS本⾝就是使⽤RPC的⼀个程序。
或者说NFS也是⼀个RPC SERVER。
所以只要⽤到NFS的地⽅都要启动RPC服务,不论是NFS SERVER或者NFS CLIENT。
这样SERVER和CLIENT才能通过RPC来实现PROGRAM PORT的对应。
可以这么理解RPC和NFS的关系:NFS是⼀个⽂件系统,⽽RPC是负责负责信息的传输。
⼆、系统环境系统平台:CentOS release 5.6 (Final)NFS Server IP:192.168.1.108防⽕墙已关闭/iptables: Firewall is not running.SELINUX=disabled三、安装NFS服务NFS的安装是⾮常简单的,只需要两个软件包即可,⽽且在通常情况下,是作为系统的默认包安装的。
•nfs-utils-* :包括基本的NFS命令与监控程序•portmap-* :⽀持安全NFS RPC服务的连接1、查看系统是否已安装NFS系统默认已安装了nfs-utils portmap 两个软件包。
RedHat9的LINUX环境下NFS的功能设置以及与开发板的通信说明
RedHat9的LINUX环境下NFS的功能设置以及与开发板的通信说明(转载) (2008-07-17 08:59)分类:ARM9学习摘要在应用程序开发环节,NFS方式比ftp方式的执行效率要高,因为它不需要将linux server端的程序下载到嵌入式目标系统就可以调试。
下面先将NFS建立的详细过程写一下,然后举一个简单的应用程序开发实例来比较ftp方式和nfs 方式的不同。
1 建立NFS开发环境嵌入式linux的NFS开发环境包含着两个方面:一是linux server端的NFS Server支持;二是target board的NFS Client支持。
1.1 linux server端1.1.1 以root的身份登录,编译共享目录的配置文件exports,指定共享目录及其权限。
#vi /etc/exports在该文件中添加:/home/lqm(共享目录)192.168.1.*(rw,sync,no_root_squash)添加的内容表示允许IP范围在192.168.1.*的计算机以读写的权限来访问共享目录/home/lqm。
【注:参数说明如下:rw---读/写权限。
如果设定只读权限,则设为ro。
但是一般情况下,为了方便交互,要设置为rw。
sync--数据同步写入内存和硬盘。
no_root_squash--此参数用来要求服务器允许远程系统以它自己的root 特权存取该目录。
就是说,如果用户是root,那么他就对这个共享目录有root 的权限。
很明显,该参数授予了target board很大的权利。
安全性是首先要考虑的,可以采取一定的保护机制,在下面会讲一下保护机制。
如果使用默认的root_squash,target board自己的根文件系统可能有很多无法写入,所以运行会受到极大的限制。
在安全性有所保障的前提下,推荐使用no_root_squash 参数。
】【服务器端的设定(以LINUX为例)服务器端的设定都是在/etc/exports这个文件中进行设定的,设定格式如下:欲分享出去的目录主机名称1或者IP1(参数1,参数2)主机名称2或者IP2(参数3,参数4)上面这个格式表示,同一个目录分享给两个不同的主机,但提供给这两台主机的权限和参数是不同的,所以分别设定两个主机得到的权限。
嵌入式Linux NFS根文件系统的构建及研究
嵌入式Linux NFS根文件系统的构建及研究作者:康天下支剑锋来源:《现代电子技术》2012年第04期摘要:在嵌入式Linux系统开发过程中,根文件系统是构建嵌入式Linux系统的重要组成部分。
为了方便和简化嵌入式Linux开发过程中的调试过程,主要研究了如何使用Busybox构建出基本的嵌入式Linux根文件系统,包括Busybox的配置、编译和安装。
在此基础上,进一步构建出基于NFS的嵌入式Linux根文件系统,并给出了启动脚本和配置文件。
这种根文件系统可以方便地在线更改、调试程序,降低了嵌入式系统的开发门槛。
关键词:NFS; Busybox;根文件系统; S3C2440; Linux中图分类号:; TP311文献标识码:A文章编号:Construction and research of embedded Linux NFS root file system(Xi’an University of Science and Technology, Xi’an 710054, China)Abstract: In the process of the embedded Linux system development, the root file system is an important part of building the embedded Linux system. In order to facilitate and simplify the debugging phase of embedded Linux development process, this paper mainly researches how to build a basic embedded Linux root file system with Busybox, including the configuration, installation andembedded Linux root file system was built. The startup script and configuration file are given in this paper. This root file system can be easily changed and debugged online, and reduces the threshold of embedded systems development.Keywords: NFS; Busybox; root file system; S3C2440; Linux收稿日期:随着信息技术的发展,嵌入式系统技术已经广泛应用于国防、通信、工业控制、消费电子等诸多领域。
Linux NFS服务器的搭建与磁盘配额管理方案的实施
Linux NFS服务器的搭建与磁盘配额管理方案的实施一、NFS服务器的搭建:描述:NFS是linux的网络文件系统,是主机间通过网络进行文件共享的网络协议,相当于Window的UNC路径进行网络互访,NFS只使用于linux系统之间进行文件互访,不适合于Windows。
不过两者也用共同点,它们如果要用计算机名称进行访问,那都得使用NETBIOS协议进行解析。
NFS是通过挂载进行实现的,(linux里不仅可以挂载共享目录,也可以挂载移动硬盘,软盘,优盘以及光盘等等)挂载成功之后,主机里的其他用户访问共享软件就像访问本地硬盘一样方便。
类似于windows里将其他计算机的共享文件夹在本地映射一个网络驱动器。
**************NFS服务器的具体配置********************在配置NFS之前,必须得安装nfs-utils 和portmap这两个软件包(默认是安装上的,不过在配置NFS服务器之前还是检查一下,)。
解释:nfs-utils包是nfs的安装包,是安装在应用层的,其功能主要是由Linux内核完成的,而portmap包是安装在传输层的,是为NFS等服务器程序提供RPC(远程过程调用)服务的支持。
#rpm –q nfs-utils portmap如果没有安装,在RHEL-4的第二张光盘里/RedHat/RPMS/里有,具体安装如下:从提示中可以看出,我的已经安装上了。
呵呵!#mount –t iso9660 /dev/cdrom /media/cdrom/ 挂载光盘2#cd /media/cdrom/RedHat/RPMS/ 进入目录#rpm –ivh nfs-utils-1.0.6-46.i386.rpm portmap-4.0-63.i386.rpm 安装rpm包1、 NFS服务器的具体配置:1.1、NFS服务器的具体配置是在“/etc/exports”下进行编辑的,默认里面是没有内容的,也就是说是即使你开启NFS服务,也不共享任何内容,而windows server 2003在默认状态下是,各个盘是隐藏共享的,可以通过compmgmt.msc或者filesvr.msc (windows server 2003支持)可以看到共享的隐藏目录)如下:换句话说:只要你知道对方机子的账号和密码,就可以登陆到对方机子上去,具体命令如下:“//ip/盘符$”1.2、“exports”文件的格式:“nfs共享目录名称客户端主机地址(设置选项)”2、试验步骤:在做试验之前,必须得搭建试验环境:虚拟机上装有两台linux服务器。
建立nfs的工作步骤及相关命令
建立nfs的工作步骤及相关命令建立NFS的工作步骤及相关命令NFS(Network File System)是一种分布式文件系统,它允许不同的计算机通过网络共享文件和目录。
在Linux系统中,可以使用一些命令来建立NFS,下面将介绍建立NFS的具体步骤及相关命令。
步骤一:安装NFS服务器需要在服务器上安装NFS服务器软件。
在Ubuntu系统中,可以使用以下命令来安装NFS服务器软件:```sudo apt-get install nfs-kernel-server```步骤二:创建共享目录在服务器上创建一个共享目录,用于存储需要共享的文件。
可以使用以下命令来创建共享目录:```sudo mkdir /shared_directory```可以将/shared_directory替换为你想要的共享目录路径。
步骤三:配置NFS服务器在配置文件中添加共享目录的信息。
可以使用以下命令来编辑配置文件:```sudo nano /etc/exports```在打开的文件中,添加以下内容:```/shared_directory client_ip(rw,sync,no_subtree_check)```其中,shared_directory是之前创建的共享目录的路径,client_ip 是允许访问该共享目录的客户端IP地址。
可以根据实际情况进行修改。
步骤四:保存并退出配置文件在编辑完配置文件后,按下Ctrl + X,然后按Y键保存修改,最后按下Enter键退出编辑器。
步骤五:重启NFS服务器在完成配置文件的修改后,需要重启NFS服务器以使修改生效。
可以使用以下命令来重启NFS服务器:```sudo systemctl restart nfs-kernel-server```步骤六:配置NFS客户端在NFS服务器上配置完成后,需要在客户端上进行相应的配置。
首先,需要安装NFS客户端软件。
在Ubuntu系统中,可以使用以下命令来安装NFS客户端软件:```sudo apt-get install nfs-common```步骤七:挂载共享目录在客户端上挂载NFS服务器上的共享目录。
浅谈嵌入式Linux开发中NFS的安装配置
.
还 不 能 提 供 实 际 的 服 务 , 要 配置 共 享 目 需 录 的路 径 和 访 问权 限 。 S 配 置文 件 是/ NF 的 e c e p rs 这 个 文件 的内 容非 常 简单 , t/ x o t。 每 行 由抛 出 路 径 、 户 名 列 表 以 及 每 个 客 客 户 名 后 紧 跟 的 访 问选 项 构 成 , 如下 所 示 : [ 共享的 目录J ( 机名或 I ( 主 P 参数 , 数) 参 J 2NS ̄ F B, 务器的安装 其 中参 数 是 可 选 的 。当不 指 定 参 数 时 , 在 Ub n u u t 系统 下 , 使用 NFS 需要 首先 安 NFS将使 用 默 认 选 项 。 认的 共 享 选项 是 : 默 s ync, o, oo s r r t qua h, s no d l y ea 装 以 下 NF S的 软 件 包 。 服 务 器 端 : f -c m mo n s ns o n、 f—ke n l r e— 当主机名 或I P地 址 为 空 时 , 代 表 共 则 s r r、 r m a e ve po t p; 享 给 任 意 客 户机 提 供 服 务 。 当将 同 一 目录 客 户 端 :f-c mmo p rma ns o n、 o t p。 共 享 给 多 个 客 户 机 , 对 每 个 客 户 机 提 供 但 目标 板上 的 L n i ux系统 由L n x内核和 的 权 限 不 同 时 , 以 这 样 : iu 可 bu y x共 同提 供 对 NFS的支 持 , 必 安 装 s bo 不 【 的 目录】 [ 机名 1 Pl 数 l 参 共享 主 或I ( 参 , 其 他 的 NFS客 户 端 。 数 2】主机 名 2 P ( 数3, )【 或I 2 参 参数 4 】 ) 安 装 服 务 器 端 软 件 包 的 命令 是 : s d ¥u o 如表 1 示 , 出 了 一 些NFS共 享 的 常 所 d T ec hno Ogy I o V i n I nn at o H e i ra d
Linux下NFS(网络文件系统)的建立与配置方法
Linux下NFS(网络文件系统)的建立与配置方法引:听董远老师的课介绍过NFS,只是提到小公司一般用,大公司不太用,不知道IBM用不用。
学了总之没有坏处哈网络文件系统(NFS,Network File System)是一种将远程主机上的分区(目录)经网络挂载到本地系统的一种机制,通过对网络文件系统的支持,用户可以在本地系统上像操作本地分区一样来对远程主机的共享分区(目录)进行操作。
因为NFS支援的功能相当的多,而不同的功能都会使用不同的程式来启动,每启动一个功能就会启用一些port来传输资料,因此, NFS的功能所对应的port 才没有固定住,而是采用随机取用一些未被使用的小于1024的埠口来作为传输之用。
此时我们就得需要远端程序呼叫(RPC)的服务啦。
RPC最主要的功能就是在指定每个NFS功能所对应的port number ,并且回报给用户端,让用户端可以连结到正确的埠口上去。
那RPC又是如何知道每个NFS的埠口呢?这是因为当伺服器在启动NFS时会随机取用数个埠口,并主动的向RPC注册,因此RPC可以知道每个埠口对应的NFS功能,然后RPC又是固定使用port 111来监听用户端的需求并回报用户端正确的埠口,所以当然可以让NFS的启动更为轻松愉快了!步骤:用户端会向伺服器端的RPC (port 111)发出NFS档案存取功能的询问要求;伺服器端找到对应的已注册的NFS daemon埠口后,会回报给用户端;用户端了解正确的埠口后,就可以直接与NFS daemon来连线。
由于NFS的各项功能都必须要向RPC来注册,如此一来RPC才能了解NFS这个服务的各项功能之port number, PID, NFS在主机所监听的IP等等,而用户端才能够透过RPC的询问找到正确对应的埠口。
也就是说,NFS必须要有RPC存在时才能成功的提供服务,因此我们称NFS为RPC server的一种。
在嵌入式Linux 的开发过程中,开发者需要在Linux 服务器上进行所有的软件开发,交叉编译后,通用FTP 方式将可执行文件下载到嵌入式系统运行,但这种方式不但效率低下,且无法实现在线的调试。
7.3.2 在Linux下配置NFS服务器[共3页]
第7章 根文件系统移植
◆ 103 ◆ 表7-6 showmount 命令的参数解析 选 项
参 数 含 义 -a
在屏幕上显示目前主机与客户端所连上来的使用目录状态 -e 显示hostname 中/etc/exports 里设定的共享目录
7.3.2 在Linux 下配置NFS 服务器
上一小节中对NFS 做了简单的介绍,相信读者对NFS 的特点、原理以及文件结构等有了基本的了解。
本小节在此基础之上,将详细介绍Linux
下配置NFS 服务器的具体实现步骤。
步骤如下:
(1)作为NFS 服务器端,需安装的相关工具
nfs-kernel-server (NFS 服务器程序);
nfs-common (NFS 客户端需要安装);
portmap (用来挂RPC 的端口号映射)。
(2)安装NFS 服务器程序
sudo apt-get install nfs-kernel-server
运行上面的命令,运行结果如图7-4所示。
图7-4 安装nfs-kernel-server
从上面的提示可以看到,安装nfs-kernel-server 时,apt 会自动安装nfs-common 和portmap 。
所以就不用多费功夫专门安装这两个工具了。
(3)配置NFS
安装完后需要配置先前提到的几个文件才能正确运行NFS 。
配置portmap
方法1:$ sudo dpkg-reconfigure portmap ,在图7-5所示界面中选NO 。
运行完后打开portmap 文件会发现最后一行变了,现在的内容代码如下。
# Portmap configuration file
#。
构建Linux上的NFS服务器
构建Linux上的NFS服务器NFS是网络文件系统(Network File System)的简称,是分布式计算系统的一个组成部分,可实现在异种网络上共享和装配远程文件系统。
NFS由Sun公司开发,目前已经成为文件服务的一种标准(RFC1904,RFC1813)。
其最大的功能就是可以通过网络,让不同操作系统的计算机可以共享数据,所以也可以将它看做是一个文件服务器(见图1所示)。
NFS提供了除Samba之外,Windows与Linux及Unix与Linux 之间通信的方法。
图1 NFS Server和Client PC示意图Client端PC可以挂载NFS Server所提供的目录,并且挂载之后这个目录看起来就像本地的磁盘分区一样,可以使用cp、cd、mv、rm、df等磁盘相关的指令。
NFS有属于自己的协议与使用的端口号码,但是在资料传送或者其它相关讯息传递的时候,NFS Server使用的则是一个称为远程过程调用(Remote Procedure Call, RPC)的协议来协助NFS Server本身的运作。
Client端PC可以挂载NFS Server所提供的目录,并且挂载之后这个目录看起来就像本地的磁盘分区一样,可以使用cp、cd、mv、rm、df等磁盘相关的指令。
NFS有属于自己的协议与使用的端口号码,但是在资料传送或者其它相关讯息传递的时候,NFS Server使用的则是一个称为远程过程调用(Remote Procedure Call, RPC)的协议来协助NFS Server本身的运作。
NFS本身的服务并没有提供资料传递的协议,但是它却能进行文件的共享。
原因就是NFS使用到一些其它相关的传输协议,而这些传输的协议就是远程过程调用(Remote Procedure Call, RPC)。
NFS也可以视为一个RPC Server。
需要说明的是,要挂载NFS Server的Client PC主机,也需要同步启动远程过程调用。
linux 搭建NFS服务
NFS(network file system)应用:1、资源共享。
2、集群架构工作中的应用(存储共享视频、图片,文件等静态文件(一般把网站用户上的文件都放知NFS共享里,例如:BBS产品的(图片,附件,头像)。
服务的安装1、查看系统的版本[root@localhost /]# cat /etc/redhat-releaseCentOS release 6.5 (Final)[root@localhost /]# uname -r2.6.32-431.el6.x86_64[root@localhost /]#[root@localhost /]# uname -mx86_642、安装NFS软件[root@localhost /]# rpm -qa nfs-utils portmap rpcbind[root@localhost /]# yum install nfs-utils portmap rpcbind3、启动RPC/NFS服务并检查[root@localhost /]# /etc/init.d/rpcbind statusrpcbind (pid 2821) is running...[root@localhost /]# /etc/init.d/rpcbind start[root@localhost /]#[root@localhost /]# /etc/init.d/rpcbind reload[root@localhost /]#[root@localhost /]# /etc/init.d/rpcbind stopNFS服务检查[root@localhost /]# /etc/init.d/nfs statusrpc.svcgssd is stoppedrpc.mountd is stoppednfsd is stoppedrpc.rquotad is stopped[root@localhost /]# /etc/init.d/nfs startStarting NFS services: [ OK ] Starting NFS quotas: [ OK ] Starting NFS mountd: [ OK ] Starting NFS daemon: [ OK ] Starting RPC idmapd: [ OK ] [root@localhost /]# /etc/init.d/nfs stop4、设置成开机自启动[root@localhost /]# chkconfig nfs on[root@localhost /]# chkconfig rpcbind on[root@localhost /]# chkconfig --list nfsnfs 0:off 1:off 2:on 3:on 4:on 5:on 6:off[root@localhost /]# chkconfig --list rpcbindrpcbind 0:off 1:off 2:on 3:on 4:on 5:on 6:off6设置安全[root@localhost /]# cat /etc/passwd |grep nfsrpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologinnfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin [root@localhost /]#[root@localhost /]#[root@localhost /]#[root@localhost /]# chown -R nfsnobody:nfsnobody /web[root@localhost /]#关防火墙和SELINUX192.168.19.127作为NFS服务器端1、NSF的配置文件及默认为空[root@localhost ~]# ls /etc/exports/etc/exports[root@localhost ~]# cat /etc/exports2、创建一个目录并把这个目录共享出去。
linuxnfs配置方法
NFS服务器的配置一、NFS服务器的安装检查linux系统中是否安装了nfs-utils和portmap两个软件包(RHEL4系统默认已经安装了这两个软件包)命令#rpm –q nfs-utils portmap二、查看NFS服务器是否启动命令#service nfs starus#service portmap status三、如果服务器没有启动,则开启服务(默认服务下nfs没有完全开启)命令#service nfs start#service portmap start四、指定NFS服务器的配置文件NFS服务器的配置文件保存“/etc/”目录中,文件名称是“exports”,该文件用于被指NFS服务器提供的目录共享命令#vi /etc/exports配置“exports”文件格式如下/home *(sync,ro)Home:共享目录名*:表示所有主机(sync,ro):设置选项exports文件中的“配置选项”字段放置在括号对(“()”)中,多个选项间用逗号分隔sync:设置NFS服务器同步写磁盘,这样不会轻易丢失数据,建议所有的NFS共享目录都使用该选项ro:设置输出的共享目录只读,与rw不能共同使用rw:设置输出的共享目录可读写,与ro不能共同使用exports文件中“客户端主机地址”字段可以使用多种形式表示主机地址指定IP地址的主机指定域名的主机/24 指定网段中的所有主机*. 指定域下的所有主机* 所有主机五、重新输出共享目录Exportfs管理工具可以对“exports”文件进行管理命令#exportfs –rv 可以让新设置的“exports”文件内容生效六、显示NFS服务器的输出目录列表显示当前主机中NFS服务器的输出列表# showmount -e七、显示NFS服务器中被挂载的共享目录显示当前主机NFS服务器中已经被NFS客户机挂载使用的共享目录# showmount -d八、在另外一个linux系统中挂在共享目录挂载NFS服务器中的共享目录# mount -t nfs :/opt/henai/ /mnt/daoda九、查看mnt目录中的内容Cd /mnt |ll十、卸载系统中已挂载的NFS共享目录命令# umount /mnt/总结:1、在配置NFS服务器之前用ping命令确保两个linux系统正常连接,如果无法连接关闭图形界面中的防火墙#service iptables stop2、在配置中确保输入的命令是正确的3、更改完“exports”文件后要输入exportfs –rv ,使得“exports”文件生效。
嵌入式linux ftp、tftp、nfs环境配置
wlan密码配置及DHCP服务开启可以将WIFI启动命令写进/etc/init.d/rcS,启动时自动连接WIFI如果vi /etc/init.d/rcS 修改,出现readOnly 现象,则使用mount -o remount, rw / 命令。
ifconfig eth0 downsleep 2 #这个延时经验证是需要的,要等到wifi的驱动模块加载完成才能进行下面的配置指令ifconfig wlan0 up #打开wlan0sleep 1wlan.sh JSJEMLab jsjemlab #输入wifi的账号密码sleep 1udhcpc -i wlan0 #使用自动分配IP简单的脚本编写1.创建一个脚本文件vi ./wifi_conf2.添加权限chmod +x <文件位置>3.运行脚本文件./xxxftp服务器搭建一>编译vsftpd程序1. 获得源码包:vsftpd-2.1.2.tar.gz(位置:光盘资料/源码包/其他软件源码)2. 解压,进入源码目录:tar xzvf vsftpd-2.1.2.tar.gzcd vsftpd-2.1.23. 修改Makefile,指定交叉编译器:CC = arm-linux-gcc4. #make编译时会出现错误,跟libcap.so有关修改vsf_findlibs.sh:45-53行注释掉:Look for libcap (capabilities)#if locate_library /lib/libcap.so.1; then#echo "/lib/libcap.so.1";#elif locate_library /lib/libcap.so.2; then#echo "/lib/libcap.so.2";#else#locate_library /usr/lib/libcap.so && echo "-lcap";#locate_library /lib/libcap.so && echo "-lcap";#fi#make生成vsftpd可执行程序,放到根文件系统/usr/sbin目录下二>修改配置文件vsftpd.conf需要用到哪一项,就把这一项前面的注释‘#’去掉,这里给出我的配置:anonymous_enable=NOno_anon_password=YESlocal_enable=YESwrite_enable=YESlocal_umask=022anon_upload_enable=YESanon_mkdir_write_enable=YESanon_other_write_enable=YESdirmessage_enable=YESxferlog_enable=YESconnect_from_port_20=YESchown_uploads=YESxferlog_file=/var/log/vsftpd.logxferlog_std_format=YESasync_abor_enable=YESascii_upload_enable=YESascii_download_enable=YESftpd_banner=Welcome to blah FTP service.ls_recurse_enable=YESlisten=YESlisten_port=21把修改后的vsftpd.conf文件放到根文件系统的/etc/vsftpd目录下,否则运行里会出错:500 OOPS vsftpd: cannot open config三>创建ftp目录1. 建立FTP目录:mkdir -p /var/ftp/pub3因为ftp目录不能开启所有权限,所以建一个pub目录加上所有权限,用来传输文件mkdir -p /usr/share/empty程序运行所用到的目录2. 改变目录权限chown root:root /var/ftpchmod 755 /var/ftpcd /var/ftpchmod 777 pub四>在开发板上运行vsftpd把制作好的文件系统下载到开发板上,在后台运行程序:# vsftpd /etc/vsftpd/vsftpd.conf&可用的文档:# Example config file /etc/vsftpd.conf## The default compiled in settings are fairly paranoid. This sample file# loosens things up a bit, to make the ftp daemon more usable.# Please see vsftpd.conf.5 for all compiled in defaults.## READ THIS: This example file is NOT an exhaustive list of vsftpd options.# Please read the vsftpd.conf.5 manual page to get a full idea of vsftpd's# capabilities.## Allow anonymous FTP? (Beware - allowed by default if you comment this out). anonymous_enable=NOno_anon_password=YES## Uncomment this to allow local users to log in.local_enable=YES## Uncomment this to enable any form of FTP write command.write_enable=YES## Default umask for local users is 077. You may wish to change this to 022, # if your users expect that (022 is used by most other ftpd's)local_umask=022## Uncomment this to allow the anonymous FTP user to upload files. This only # has an effect if the above global write enable is activated. Also, you will# obviously need to create a directory writable by the FTP user.anon_upload_enable=YES## Uncomment this if you want the anonymous FTP user to be able to create # new directories.anon_mkdir_write_enable=YESanon_other_write_enable=YES## Activate directory messages - messages given to remote users when they # go into a certain directory.dirmessage_enable=YES## Activate logging of uploads/downloads.xferlog_enable=YES## Make sure PORT transfer connections originate from port 20 (ftp-data). connect_from_port_20=YES## If you want, you can arrange for uploaded anonymous files to be owned by# a different user. Note! Using "root" for uploaded files is not# recommended!chown_uploads=YES#chown_username=whoever## You may override where the log file goes if you like. The default is shown# below.xferlog_file=/var/log/vsftpd.log## If you want, you can have your log file in standard ftpd xferlog format.# Note that the default log file location is /var/log/xferlog in this case. xferlog_std_format=YES## You may change the default value for timing out an idle session.#idle_session_timeout=600## You may change the default value for timing out a data connection.#data_connection_timeout=120## It is recommended that you define on your system a unique user which the # ftp server can use as a totally isolated and unprivileged user.#nopriv_user=ftpsecure## Enable this and the server will recognise asynchronous ABOR requests. Not # recommended for security (the code is non-trivial). Not enabling it,# however, may confuse older FTP clients.async_abor_enable=YES## By default the server will pretend to allow ASCII mode but in fact ignore# the request. Turn on the below options to have the server actually do ASCII # mangling on files when in ASCII mode.# Beware that on some FTP servers, ASCII support allows a denial of service # attack (DoS) via the command "SIZE /big/file" in ASCII mode. vsftpd# predicted this attack and has always been safe, reporting the size of the# raw file.# ASCII mangling is a horrible feature of the protocol.ascii_upload_enable=YESascii_download_enable=YES## You may fully customise the login banner string:ftpd_banner=Welcome to blah FTP service.## You may specify a file of disallowed anonymous e-mail addresses. Apparently # useful for combatting certain DoS attacks.#deny_email_enable=YES# (default follows)#banned_email_file=/etc/vsftpd.banned_emails## You may specify an explicit list of local users to chroot() to their home# directory. If chroot_local_user is YES, then this list becomes a list of# users to NOT chroot().#chroot_list_enable=YES# (default follows)#chroot_list_file=/etc/vsftpd.chroot_list## You may activate the "-R" option to the builtin ls. This is disabled by# default to avoid remote users being able to cause excessive I/O on large# sites. However, some broken FTP clients such as "ncftp" and "mirror" assume # the presence of the "-R" option, so there is a strong case for enabling it.ls_recurse_enable=YES## When "listen" directive is enabled, vsftpd runs in standalone mode and# listens on IPv4 sockets. This directive cannot be used in conjunction# with the listen_ipv6 directive.listen=YESlisten_port=21## This directive enables listening on IPv6 sockets. To listen on IPv4 and IPv6 # sockets, you must run two copies of vsftpd whith two configuration files.# Make sure, that one of the listen options is commented !!#listen_ipv6=YES系统信息查询输入"uname -a ",可显示电脑以及操作系统的相关信息。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
如何构建嵌入式LINUX的NFS
准备工作:一台装有REDHAT9.0的PC机,一套LJD2410-I开发板,PC机上装有LJD2410的软件包,假如我们通过NFS要加载的文件系统为/LJD2410/root_dir/root_china,Ifconfig eth0 192.168.1.100 //设置PC机linux的IP:192.168.1.100,Ifconfig eth0 192.168.1.10 //开发板IP:192.168.1.10
我们需要重新配置编译内核,开启开发板NFS文件系统功能,具体步骤如下:1、修改kernel/arch/arm/def-configs/smdk2410配置文件把CONFIG_CMDLINE="root=/dev/mtdblock2 noinitrd init=/linuxrc console=ttyS0"这一行改为CONFIG_CMDLINE="root=/dev/nfs rw nfsroot=192.168.1.100:/LJD2410/root_dir/root_china noinitrd init=linuxrc console=ttys0 ip=192.168.1.10"运行make menuconfig进入配置菜单,装载配置文件SMDK2410 选择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到开发板上,至此,开发板设置已经完成。
PC 机设置:我们必须开启PC机的NFS服务,具体设置如下:1、在LINUX命令符下运行setup,在system services里面选中nfs服务,然后保存退出。
2、设置PC机上的共享目录执行vi /etc/exports,在里面添加一行:/LJD2410/root_dir/root_china (rw),然后保存退出,/和rw要有空格(/LJD2410/root_dir/root_china为共享目录,rw为读写权限)。
3、执行/etc/rc.d/init.d/nfs restart重启nfs服务。
4、为了不必每次开机都要启动nfs服务,我们把/etc/rc.d/init.d/nfs restart 添加到/etc/rc.d/rc.local中,以后PC启动的时候就会执行此文件开启nfs服务。
5、测试NFS服务:设置完成后可以在本机上进行测试,如果本机IP为192.168.1.100,则可以用mount 192.168.1.100:/LJD2410/root_dir/root_china /mnt,如果mount成功,则在/mnt的目录就可以看到root_china下面的东西了。
6、修改root_china/usr/etc/rc.local文件,设置开发板IP地址为192.168.1.10 至此,开发板和PC。