嵌入式01配置NFS服务

合集下载

如何构建嵌入式LINUX的NFS

如何构建嵌入式LINUX的NFS

如何构建嵌入式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到开发板上,至此,开发板设置已经完成。

第5章 NFS服务器的配置与使用

第5章 NFS服务器的配置与使用

第五章NFS服务器的配置与使用NFS(Network Files system)是网络文件系统,它能够在不同的Linux/UNIX系统上使用,以达到文件的共享。

本章将介绍有关网络文件系统NFS的知识。

本章目标:学习完本章你将能够¾理解NFS的作用及工作原理¾配置NFS服务器¾使用NFS1.NFS简介什么是NFS呢?它是Network File system的缩写,即网络文件系统。

NFS是由SUN公司开发,并于1984年推出的一个RPC服务系统,它使我们能够达到文件的共享,在不同的系统间使用,所以它的通信协议设计与主机及操作系统无关。

当用户想使用远程文件时只要用“mount”命令就可把远程文件系统挂接在自己的文件系统之下,使远程的文件与使用本地计算机上的文件一样。

例如在计算机A上,要把计算机B上的/usr/man挂接到A的/usr/man只需执行如下命令即可:mount B:/usr/man /usr/man用户不但可以mount(挂接)目录,而且可以挂接一个文件。

在挂接之后用户只能对文件做读取(或者写入)的操作,而不能在远程计算机上把此文件或目录移动或删除,但是如果挂接 /usr/man后,则不能再挂接 /usr/man底下的目录,否则会发生错误。

NFS就是一种促使servers(服务器)上的文件能被其他的计算机挂接而达到资源共享的网络文件系统,使用这些文件的计算机就可称为Client(客户机),一个客户机可以从服务器上挂接一个文件或者一个层次的目录。

然而,事实上任何一台计算机都可以是NFS服务器或NFS客户机,甚至同时为NFS 服务器和NFS客户机。

NFS服务器所共享出来的文件或目录都记录在/etc/exports文件中,当启动NFS 服务器时,脚本/etc/rc.d/rc会自动启动exportfs程序,搜索/etc/exports这一个文件是否存在,并且赋予正确的权限给所有共享出去的文件或目录。

nfs 参数

nfs 参数

nfs 参数NFS(Network File System)是一种分布式文件系统,可以让多个计算机通过网络共享文件。

在使用NFS时,需要设置一些参数来控制其行为和性能。

本文将详细介绍NFS参数的含义和设置方法。

一、NFS参数概述在Linux系统中,NFS参数主要包括以下几个方面:1. NFS服务端参数:这些参数用于控制NFS服务器的行为,例如共享目录、权限等。

2. NFS客户端参数:这些参数用于控制NFS客户端的行为,例如挂载远程目录、缓存大小等。

3. RPC(Remote Procedure Call)参数:这些参数用于控制RPC通信的行为,例如超时时间、连接数等。

4. TCP(Transmission Control Protocol)参数:这些参数用于控制TCP通信的行为,例如缓存大小、拥塞控制等。

5. UDP(User Datagram Protocol)参数:这些参数用于控制UDP 通信的行为,例如超时时间、最大传输单元等。

二、NFS服务端参数1. exportsexports文件是NFS服务器配置文件中最重要的部分之一。

它包含了所有需要共享给客户端的目录及其相关信息。

每个条目都由以下几个字段组成:<export-path> <client-options>其中,<export-path>表示需要共享的目录路径;<client-options>表示客户端可以使用的选项,例如权限、读写方式等。

例如:/home/user1 192.168.0.0/24(rw,all_squash)这个条目表示将/home/user1目录共享给192.168.0.0/24网段的客户端,并且允许读写操作,同时将所有客户端的UID和GID映射到匿名用户。

2. no_subtree_checkno_subtree_check参数用于控制NFS服务器是否检查共享目录的子目录。

第三讲 NFS服务的配置与应用

第三讲 NFS服务的配置与应用

第三讲NFS服务的配置与应用3.1NFS服务的概述( 口头介绍,不为重点)NFS即网络文件系统(Network File System),是使不同的计算机之间能通过网络进行文件共享的一种网络协议,多用于Unix/Linux网络系统中。

一台NFS服务器如同一台文件服务器,NFS采用客户/服务器工作模式。

只要将其文件系统共享出来,NFS客户端就可以将其挂载到本地系统中,可以像使用本地文件系统中的文件一样使用那些远程文件系统中的文件。

服务器将目录设置为输出目录(即共享目录)后,其他客户端就可以将这个目录挂载到自己系统中的某个目录下,这个目录可以与服务器上的输出目录和其他客户机中的目录不相同。

用户登录到客户机,并进入挂载的目录,就可看到服务器内的共享目录下的所有文件和子目录,只要具有相应权限,可以对服务器磁盘或文件进行相应的操作。

NFS协议本身并没有提供数据传输的功能。

它借助于远程过程调用(RPC)协议来实现数据的传输。

可以将NFS服务器看成是一个RPC服务器,而将NFS客户端看成是一个RPC客户端,这样NFS服务器和NFS客户端之间就可以通过RPC协议进行数据传输。

使用NFS服务,至少需要启动以下3个系统守护进程。

✧rpc.nfsd✧rpc.mountd✧portmap3.2NFS服务的查看与安装目前几乎所有Linux发行版本都默认安装了NFS服务,Red Hat 也不例外。

1.检查NFS服务的软件包启动NFS服务需要nfs-utils和portmap这两个软件包。

使用rpm –q nfs-utils portmap 查看系统是否安装nfs-utils和portmap这两个软件包。

如果未安装,则放入光盘安装。

使用rpcinfo –p命令检查NFS服务是否正常运行。

如果NFS服务运行正常,就可在该命令执行结果中看到关于portmapper、nfs和mountd等守护进程的条目。

3.3NFS服务的配置主要配置文件/etc/exports设置后启动NFS服务即可3.3.1exports文件的格式exports文件每一行提供了一个共享目录的设置,格式如下:<输出目录> [ 客户端1 (选项1,选项2,…) ] [客户端2 (选项1,选项2,…) ] 关于输出目录、客户端及选项通过配置实例予以说明3.3.2NFS服务配置实例下面首先给出NFS主配置文件/etc/exports的一个应用实例,然后对有关设置进行说明。

嵌入式uClinux相关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的文件系统。

nfs详细配置说明

nfs详细配置说明

网络文件系统(NFS)一、NFS简介1、NFS就是Network File System的缩写,它的最大功能就是可以通过网络让不同的机器,不同的操作系统彼此共享文件(share files)——可以通过NFS挂载远程主机的目录,访问该目录就像访问本地目录一样,所以也可以简单的将它看作一个文件服务器(File Server)。

注意:一般而言,使用NFS服务能够方便地使各unix-like系统之间实现共享,但如果需要在unix-like和windows系统之间共享,那就得使用samba了。

2、NFS是通过网络进行数据传输,那么NFS使用哪些端口呢,答案是……不知道,因为NFS传输数据时使用的端口是随机的,唯一的限制就是小于1024,客户端怎么知道服务器使用的是哪个端口,此时就要用到远程过程调用RPC。

其实,NFS运行在SUN的RPC(Remote Procedure Call,远程过程调用)基础上,RPC 定义了一种与系统无关的方法来实现进程间通信,由此,NFS Server也可以看作是RPC Server。

正因为NFS是一个RPC服务程序,所以在使用它之前,先要映射好端口——通过portmap设定。

比如:某个NFS Client发起NFS服务请求时,它需要先得到一个端口(port),所以它先通过portmap得到port number(不仅是NFS,所有的RPC服务程序启动之前,都需要先设定好portmap)。

注意:在启动RPC服务(比如NFS)之前,需要先启动portmap服务。

3、NFS允许系统将其目录和文件共享给网络上的其他系统。

通过NFS,用户和应用程序可以访问远程系统上的文件,就像它们是本地文件一样。

那么NFS最值得注意的优点有:(1)本地工作站可以使用更少的磁盘空间,因为常用数据可以被保存在一台机器上,并让网络上的其他机器可以访问它。

(2)不需要为用户在每台网络机器上放一个用户目录,因为用户目录可以在NFS服务器上设置并使其在整个网络上可用。

第12章NFS服务器配置

第12章NFS服务器配置

第12章NFS服务器配置本章主要内容:●NFS服务器工作原理●NFS服务器的配置●NFS客户端的配置12.1 NFS服务器工作原理12.1.1 什么是NFS网络文件系统(N etwork F ile S ystem,NFS)最初是由Sun Microsytem公司於1984 年所开发出来的,是在Unix系统间实现磁盘文件共享的一种方法,它支持应用程序在客户端通过网络访问位于服务器磁盘中数据的一种文件系统协议。

NFS 的基本原则是“容许不同的客户端及服务端通过一组RPCs分享相同的文件系统”,它独立于操作系统。

NFS对于同一网络上的多个使用类UNIX用户间共享目录非常方便。

譬如,一组致力于同一工程项目的用户可以通过使用NFS文件系统在本地机中挂载一个共享目录,这些用户访问该共享目录就像访问本机上的目录一样方便。

NFS 提供了以下的服务:1.在目录(directory)中查找文件2.列出目录中的文件3.管理目录4.取得各文件的属性(file attribute)5.文件的读/写12.1.2什么是RPC远程过程调用(R emote P rocedure C all,RPC)是一个计算机通信协议,该协议允许运行于一台计算机的程序调用另一台计算机的子程序,而程序员无需额外地为这个交互作用编程。

RPC采用客户机/服务器模式。

请求程序是客户机,而服务提供程序就是一个服务器。

首先,客户端发送一个有进程参数的调用信息到服务进程,然后等待应答信息。

在服务器端,进程保持睡眠状态直到调用信息的到达为止。

当一个调用信息到达,服务器获得进程参数,计算结果,发送答复信息,然后等待下一个调用信息,最后,客户端调用过程接收答复信息,获得进程结果,然后调用执行继续进行。

RPC 最主要的功能就是在指定每个NFS 功能所对应的port number ,並且回报給客户端,让客户端可以连結到正确的端口上去。

那RPC 又是如何知道每个NFS 的端口呢?这是因为服务器在启动NFS服务前要先启动RPC服务,当服务器启动NFS服务后会随机取用几个端口,并主动向RPC注册,因此RPC就知道每个端口对应的NFS功能,然后RPC 使用固定的111杜阿克来监视客户端的请求,并告诉客户端服务器NFS的正确端口。

LinuxNFS服务器的安装与配置方法(图文详解)

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 两个软件包。

安装配置nfs服务器

安装配置nfs服务器

Debian和Ubuntu Linux的NFS配置介绍 (2)ubuntu9.04下nfs的设置使用 (6)嵌入式linux的NFS开发环境的建立 (8)Ubuntu9.10在ARM上建立NFS服务 (12)在Ubuntu 9.10下怎么设置ip (14)FreeBSD网络文件系统(NFS) (16)NFS服务器 (16)安装配置nfs服务器/s/blog_5b1423a10100awm2.html1 安装root@ubuntu:/# apt-get install nfs-common nfs-kernel-server nfs-client正在读取软件包列表... 完成正在分析软件包的依赖关系树Reading state information... 完成nfs-common 已经是最新的版本了。

nfs-kernel-server 已经是最新的版本了。

注意,我选了 nfs-common 而非 nfs-clientnfs-common 已经是最新的版本了。

共升级了 0 个软件包,新安装了 0 个软件包,要卸载 0 个软件包,有 0 个软件未被升级。

2 配置root@ubuntu:~# nano /etc/exports# /etc/exports: the access control list for filesystems which may be exported# to NFS clients. See exports(5).## Example for NFSv2 and NFSv3:# /srv/homes hostname1(rw,sync) hostname2(ro,sync)## Example for NFSv4:# /srv/nfs4 gss/krb5i(rw,sync,fsid=0,crossmnt)# /srv/nfs4/homes gss/krb5i(rw,sync)/home/cache/netboot 192.168.1.0/24(rw,no_root_squash,sync)(注*上面这一行是服务器端提供的磁盘空间的位置,可以是服务器的仸一目录,建议将一个单独的磁盘分区挂在这个目录下。

NFS服务配置

NFS服务配置

NFS服务配置【什么是NFS】NFS会经常用到,用于在网络上共享存储。

这样讲,你对NFS可能不太了解,笔者不妨举一个例子来说明一下NFS是用来做什么的。

假如有三台机器A、B、C,它们需要访问同一个目录,目录中都是图片,传统的做法是把这些图片分别放到A、B、C。

但是使用NFS只需要放到A上,然后A共享给B和C即可。

访问的时候,B和C是通过网络的方式去访问A上的那个目录的。

【更改mysql数据库root的密码】首次进入数据库是不用密码的/usr/local/mysql/bin/mysql -u rootWelcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 2Server version: 5.0.86 MySQL Community Server (GPL)Type 'help;' or '\h' for help. Type '\c' to clear the buffer.mysql>现在已经进入到了mysql 的操作界面了。

退出的话,直接输入exit即可。

mysql>exitBye先解释一下上面的命令的含义,-u 用来指定要登录的用户,root用户是mysql自带的管理员账户,默认没有密码的,那么如何给root用户设定密码?按如下操作:/usr/local/mysql/bin/mysqladmin -u root password ‘123456’这样就可以设定root用户的密码了。

其中mysqladmin就是用来设置密码的工具,-u 指定用户,passwod 后跟要定义的密码,密码需要用单引号或者双引号括起来。

另外你也许发现了,敲命令时总在前面加/usr/local/mysql/bin/ 这样很累。

但是直接打mysql 又不能用,这是因为在系统变量$PATH中没有/usr/local/mysql/bin/这个目录,所以需要这样操作(如果你的linux可以直接打出mysql这个命令,则不要做这个操作):vim /etc/profile在最后加入一行:export PATH=$PATH:/usr/local/mysql/bin/保存后运行source /etc/profile设定完密码后,再来运行最开始进入mysql数据库操作界面的命令:mysql -u rootERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)就报错了,这是因为root用户有密码。

ARM嵌入式Linux开发——网络设置及开发

ARM嵌入式Linux开发——网络设置及开发

ARM嵌入式Linux开发——网络设置及开发1.网络及NFS设置嵌入式Linux系统软件开发过程中,使用NFS是一个方便有效的手段。

可以在宿主机上安装并开启NFS Server,创建一个位于网络上的远程共享目录。

目标机作为NFS客户端通过网络远程访问此目录,就像访问本地目录一样,可以在宿主机和目标机之间方便地传递数据。

嵌入式Linux系统目标机通常使用FLASH作为类似PC机硬盘的永久性非易失性存储器,但受系统资源等因素影响,FLASH存储器容量有限,且FLASH存储器有擦写寿命问题,不适合软件开发过程中的频繁修改操作。

使用NFS可以将数据存储目录设置在网络上的远程宿主机中,使目标板获得更大容量的存储空间,且可以随意进行擦写操作,不用担心FLASH存储器寿命问题,访问方式与操作本地目录相同。

通常,都是将正在开发调试的软件存放在NFS目录中,目标板访问NFS并运行其中存储的软件。

更进一步的使用方法是用NFS作为目标板的操作系统存储器,直接从NFS启动操作系统,这一方式通常用于目标板上操作系统内核级别的开发调试。

1.1.NFS简介在安装设置并使用NFS前,先对NFS进行简要介绍:1)NFS就是Network File System的缩写,即网络文件系统,它的最大功能就是可以通过网络让不同的机器,不同的操作系统彼此共享文件(Sharefiles)——可以通过NFS挂载远程主机的目录,访问该目录就像访问本地目录一样,所以也可以简单的将它看作一个文件服务器(File Server)。

一般而言,使用NFS服务能够方便地使各UNIX-like系统之间实现共享,但如果需要在UNIX-like和Windows系统之间共享,就要使用samba了。

2)NFS是通过网络进行数据传输,那么NFS使用哪些端口呢,答案是……不知道,因为NFS传输数据时使用的端口是随机的,唯一的限制就是小于1024,客户端怎么知道服务器使用的是哪个端口,此时就要用到远程过程调用RPC。

嵌入式linux ftp、tftp、nfs环境配置

嵌入式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 ",可显示电脑以及操作系统的相关信息。

嵌入式Linux NFS方式下应用程序的实现

嵌入式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页。

NFS服务器搭建与配置

NFS服务器搭建与配置

NFS服务器搭建与配置NFS服务简介什么是NFS?NFS就是Network File System的缩写,它最⼤的功能就是可以通过⽹络,让不同的机器、不同的操作系统可以共享彼此的⽂件。

NFS服务器可以让PC将⽹络中的NFS服务器共享的⽬录挂载到本地端的⽂件系统中,⽽在本地端的系统中来看,那个远程主机的⽬录就好像是⾃⼰的⼀个磁盘分区⼀样,在使⽤上相当便利;NFS⼀般⽤来存储共享视频,图⽚等静态数据。

NFS挂载原理:图;服务器挂载结构图如上图⽰:当我们在NFS服务器设置好⼀个共享⽬录/home/public后,其他的有权访问NFS服务器的NFS客户端就可以将这个⽬录挂载到⾃⼰⽂件系统的某个挂载点,这个挂载点可以⾃⼰定义,如上图客户端A与客户端B挂载的⽬录就不相同。

并且挂载好后我们在本地能够看到服务端/home/public的所有数据。

如果服务器端配置的客户端只读,那么客户端就只能够只读。

如果配置读写,客户端就能够进⾏读写。

挂载后,NFS客户端查看磁盘信息命令:#df –h。

既然NFS是通过⽹络来进⾏服务器端和客户端之间的数据传输,那么两者之间要传输数据就要有想对应的⽹络端⼝,NFS服务器到底使⽤哪个端⼝来进⾏数据传输呢?基本上NFS这个服务器的端⼝开在2049,但由于⽂件系统⾮常复杂。

因此NFS还有其他的程序去启动额外的端⼝,这些额外的⽤来传输数据的端⼝是随机选择的,是⼩于1024的端⼝;既然是随机的那么客户端⼜是如何知道NFS服务器端到底使⽤的是哪个端⼝呢?这时就需要通过远程过程调⽤(Remote Procedure Call,RPC)协议来实现了!RPC与NFS通讯原理:因为NFS⽀持的功能相当多,⽽不同的功能都会使⽤不同的程序来启动,每启动⼀个功能就会启⽤⼀些端⼝来传输数据,因此NFS的功能对应的端⼝并不固定,客户端要知道NFS服务器端的相关端⼝才能建⽴连接进⾏数据传输,⽽RPC就是⽤来统⼀管理NFS端⼝的服务,并且统⼀对外的端⼝是111,RPC会记录NFS端⼝的信息,如此我们就能够通过RPC实现服务端和客户端沟通端⼝信息。

基于FPGA的嵌入式NFS服务器的设计与实现

基于FPGA的嵌入式NFS服务器的设计与实现

基于FPGA的嵌入式NFS服务器的设计与实现袁晓江【期刊名称】《山西科技》【年(卷),期】2015(000)006【摘要】NFS, which is a kind of relatively mature distributed network file system, provides a good solution for data storage and management, and usually runs in an all-purpose computer. As the resources of embedded system are continuously enriched, a small, convenient, and easy to expand NFS server becomes more and more important for embedded platforms. This paper adopts the co-design of hardware and software, designs and implements an embedded NFS server based on FPGA, which includes the NFS server component modules, file system modules, and hard disk control module. The first two modules run on the MicroBlaze processor embedded in FPGA, and the last module is designed and implemented with hardware description language. The whole design is debugged and verified on the platform of XUPV5_LX110T of Xilinx.%NFS是一种比较成熟的分布式网络文件系统,为数据存储、管理提供了良好的解决方案,一般运行在通用计算机中。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
启动NFS服务器后,可以使用ps命令查看进程
# ps -aux | grep -i "nfs"
Step Three
配置NFS服务 在NFS的主配置文件/etc/exports中进行设置,然后启动NFS服务 在exports文件中可以定义NFS系统的输出目录(即共享目录)、 访问权限和允许访问的主机等参数,格式如下
任务要求
Step One Step Two Step Three Step Four
使用apt-get安装NFS服务 启动与停止NFS服务 设置NFS的主配置文件/etc/exports 使用p One
3 安装NFS服务
检测是否安装NFS,启动NFS服务时需要nfs-utils和portmap这两个软件包
Step Four
3
使用mount命令挂载nfs文件系统
mount –t nfs localhost: /opt/root_fs /mnt
网络文件系统
NFS(Network File System,网络文件系统)是一种基于 网络的文件系统, NFS 的第一个版本是 SUN Microsystems 在20世纪80年代开发出来的。
NFS 需要将本地操作转换为网络操作,并在远端服务器上实 现,最后返回操作的结果,因此NFS 更像是远端服务器文件 系统在本地的一个文件系统代理,用户或者应用程序通过访 问文件系统代理来访问真实的文件系统。
NFS工作方式
为了实现平台无关性,NFS基于 OSI底 层实现。基于会话层的远程过程调用 (Remote Procedure Call,RPC )和基 于表示层的外部数据表示 (External Data Representation,XDR )为NFS 提供所需的网络连接及解释基于这些连 接发送的数据格式,它们使NFS可正常 工作于不同平台。
# dpkg -l |grep -i "nfs"
安装NFS服务器
# sudo apt-get install nfs-kernel-server # sudo apt-get install nfs-common
Step Two
启动与停止NFS服务 启动与停止NFS服务
# /etc/init.d/nfs-kernel-server start
配置NFS服务
exports文件中“客户端主机地址”字段可以使用多种形式表示主机地址
192.168.152.13 指定IP地址的主机 指定域名的主机 192.168.1.0/24 指定网段中的所有主机 * 指定域下的所有主机 * 所有主机
3
[共享的目录] [主机名1或IP1(参数1,参数2)] [主机名2或IP2(参数3,参数4)]
/nfs/public 192.168.0.0/24(rw,async) *(ro)
配置NFS服务
/nfs/public:共享目录名 192.168.0.0/24:表示所有主机 sync:设置NFS服务器同步写磁盘,这样不会轻易丢失数据 ro:设置输出的共享目录只读,与rw不能共同使用 rw:设置输出的共享目录可读写,与ro不能共同使用
相关文档
最新文档