当前位置:文档之家› 网络文件系统(NFS)

网络文件系统(NFS)

网络文件系统(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服务器上设置并使其在整个网络上可用。

(3)存储设备如软盘、光驱及USB设备可以被网络上其它机器使用,这可能可以减少网络上移动设备的数量。

二、与NFS相关的几个文件和命令

1、/etc/exports

对NFS服务的访问是由exports来批准,它枚举了若干有权访问NFS 服务器上文件系统的主机名。

2、/sbin/exportfs

维护NFS的资源共享,可以通过它重新设定/etc/exports的共享目录,卸载NFS Server共享的目录或者重新共享等。

3、/usr/sbin/showmount

上面的文件主要用在NFS Server端,而showmount则主要用在Client端,showmount可以用來查看NFS共享的目录资源。

4、/var/lib/nfs/xtab

NFS的记录文档:通过它可以查看有哪些Client连接到NFS主机的记录。

下面这几个并不直接负责NFS,实际上它们是负责所有的RPC。

5、/etc/default/portmap

实际上,portmap负责映射所有的RPC服务端口,它的内容非常非常之简单。

6、/etc/hosts.deny

设定拒绝portmap服务的主机,即禁止访问的客户端IP列表。

7、/etc/hosts.allow

设定允许portmap服务的主机,即允许访问的客户端IP列表。

三、NFS安装

在主机上安装NFS服务软件,因为Debian/Ubuntu上默认是没有安装的。

1、安装端口映射器portmap(可选)

$ sudo apt-get install portmap

2、在终端提示符后键入以下命令安装NFS服务器

$ sudo apt-get install nfs-kernel-server

3、安装NFS客户端(可选)

$ sudo apt-get install nfs-common

注意:nfs- kernel-server和nfs-common都依赖于portmap。另外,在一些文档中提出还需要使用apt-get来手动安装NFS的客户端nfs-common,以及端口映射器portmap,但其实这是没有必要的,因为在安装nfs-kernel-server时,apt会自动把它们安装好。

这样,宿主机就相当于NFS Server。同样地,目标系统作为NFS的客户端,需要安装NFS客户端程序。如果是Debian/Ubuntu系统,则需要安装nfs-common(第3步)。

四、NFS配置

1、配置portmap

方法1:编辑/etc/default/portmap,将"-i 127.0.0.1"去掉;

方法2:$ sudo dpkg-reconfigure portmap,出现“正在设定portmap”软件包设置界面,对Should portmap be bound to the loopback address?选择“否(No)”。

2、配置/etc/hosts.deny

禁止任何host(主机)能和你的NFS服务器进行NFS连接。在该文件中加入:

### NFS DAEMONS

portmap:ALL

lockd:ALL

mountd:ALL

rquotad:ALL

statd:ALL

3、配置/etc/hosts.allow

允许那些你想要的主机和你的NFS服务器建立连接。

下列步骤将允许任何IP地址以192.168.1开头的主机连接到NFS服务器上,具体要看你目标板的端口地址,也可以指定特定的IP地址。在该文件中加入:

### NFS DAEMONS

portmap: 192.168.1.

lockd: 192.168.1.

rquotad: 192.168.1.

mountd: 192.168.1.

statd: 192.168.1.

通过/etc/hosts.deny和/etc/hosts.allow设置对portmap的访问,采用这两个配置文件有点类似"mask"的意思。先在/etc/hosts.deny 中禁止所有用户对portmap的访问,再在/etc/hosts.allow中允许某些用户对portmap的访问。

然后重启portmap daemon:

$ sudo /etc/init.d/portmap restart

4、配置/etc/exports

(1)共享的NFS目录在/etc/exports中列出,这个文件控制对目录的共享(NFS挂载目录及权限由该文件定义),书写规则是每个共享为一行)。

格式:[共享目录] [主机名或IP](参数,参数...)

第一个参数是要让客户机访问的目录,第二个是你允许的主机IP,最后的()内是访问控制方式。

注意:客户端可以使用主机名或者IP地址指定,在主机名中可以使用通配符(*),IP地址后也可以跟掩码段(/24),但出于安全原因这种情况应该尽量避免。客户端的说明后可在圆括号中加入一系列参数。很重要的一点,不要在最后一个客户端声明的后面留下任何空白或者没关闭括号,因为空白都被解释成客户端的分隔符。

例如我要将/opt/FriendlyARM/mini2440/root_nfs目录让用户的IP共享,则在该文件末尾添加下列语句:

/opt/FriendlyARM/mini2440/root_nfs

*(rw,sync,no_root_squash)

其中:

/opt/FriendlyARM/mini2440/root_nfs 表示NFS共享目录,它可

以作为开发板的根文件系统通过NFS挂接;

* 表示所有的客户机都可以挂接此目录;

rw 表示挂接此目录的客户机对该目录有读写的权力;

sync 表示所有数据在请求时写入共享,即数据同步写入内存和硬盘;no_root_squash 表示允许挂接此目录的客户机享有该主机的root

身份。

注意:可以用主机名来代替*,尽量指定主机名以便使那些不想其访问的系统不能访问NFS挂载的资源。另外,最好加上sync, 否则$ sudo exportfs -r时会给出警告,sync是NFS的默认选项。

(2)下面是一些NFS共享的常用参数:

ro 只读访问

rw 读写访问

sync 所有数据在请求时写入共享

async NFS在写入数据前可以相应请求

secure NFS通过1024以下的安全TCP/IP端口发送

insecure NFS通过1024以上的端口发送

wdelay 如果多个用户要写入NFS目录,则归组写入(默认)

no_wdelay 如果多个用户要写入NFS目录,则立即写入,当使用async时,无需此设置

hide 在NFS共享目录中不共享其子目录

no_hide 共享NFS目录的子目录

subtree_check 如果共享/usr/bin之类的子目录时,强制NFS检查父目录的权限(默认)

no_subtree_check 和上面相对,不检查父目录权限

all_squash 共享文件的UID和GID映射匿名用户anonymous,适合公用目录

no_all_squash 保留共享文件的UID和GID(默认)

root_squash root用户的所有请求映射成如anonymous用户一样的权限(默认)

no_root_squash root用户具有根目录的完全管理访问权限anonuid=xxx 指定NFS服务器/etc/passwd文件中匿名用户的UID anongid=xxx 指定NFS服务器/etc/passwd文件中匿名用户的GID (3)查看NFS Server的export list:

$ sudo showmount -e

若更改了/etc/exports,运行以下命令进行更新:

$ sudo exportfs -r

然后重启NFS服务:

$ sudo /etc/init.d/nfs-kernel-server restart

五、启动和停止NFS服务

1、启动NFS的方法和启动其他服务器的方法类似,首先需要启动portmap和NFS这两个服务,并且portmap服务一定要先于NFS

服务启动。

$ sudo /etc/init.d/portmap start

$ sudo /etc/init.d/nfs-kernel-server start

2、停止NFS服务

在停止NFS服务的时候,需要先停止NFS服务再停止portmap服务,如果系统中还有其他服务需要使用portmap服务,则可以不停止portmap服务。

$ sudo /etc/init.d/nfs-kernel-server stop

$ sudo /etc/init.d/portmap stop

3、重新启动portmap和NFS服务

$ sudo /etc/init.d/portmap restart

$ sudo /etc/init.d/nfs-kernel-server restart

4、检查portmap和NFS服务状态

$ sudo /etc/init.d/portmap status(不知原文是否有误,我的ubuntu上

port m ap貌似没status这个命令参数)

$ sudo /etc/init.d/nfs-kernel-server status

5、设置自动启动NFS服务

(1)检查NFS的运行级别:

$ sudo chkconfig --list portmap (我的电脑也没chconfig这个工具,不过没多大关系,如果有问题再回头)

$ sudo chkconfig --list nfs-kernel-server

(2)在实际使用中,如果每次开启计算机之后都手工启动NFS服务是非常麻烦的,此时可以设置系统在指定的运行级别自动启动portmap 和NFS服务。

$ sudo chkconfig --level 235 portmap on (由于没有chkconfig工具,所以我就用services-admin(也就是图形界面的“系统─>“服务”)来代替,至于level就不管了,用默认设置)

$ sudo chkconfig --level 235 nfs-kernel-server on

六、NFS客户端配置(NFS测试)

1、在NFS服务器启动后,还需要检查Linux服务器的防火墙设置(一般需要关闭防火墙服务),确保没有屏蔽NFS使用的端口和允许通信的主机,主要是检查Linux服务器iptables、ipchains等选项的设置,以及/etc/hosts.deny,/etc/hosts.allow文件。通常都是在内部局域网中进行开发,再安装系统时最好不要安装防火墙等网络安全软件,以方便使用时的配置。

如果你有防火墙,请确保32771、111和2049端口保持开放。

2、手动挂载

使用mount命令来挂载其他机器共享的NFS目录。

格式:$ sudo mount [Server IP]:/[share dir] [local mount point]

例如:

$ sudo mount -t nfs [-o nolock]

localhost:/opt/FriendlyARM/mini2440/root_nfs /mnt/root_nfs 或

$ sudo mount -t nfs -o nolock

192.168.1.101:/opt/FriendlyARM/mini2440/root_nfs

/mnt/root_nfs

其中,localhost可以是具体的IP地址,同时挂载点/mnt/root_nfs 目录必须已经存在,而且在/mnt/root_nfs目录中没有文件或子目录。

3、自动挂载

(1)另一个挂载其他机器的NFS共享的方式就是在/etc/fstab文件中添加一行,该行必须指明NFS服务器的主机名、服务器输出的目录名以及挂载NFS共享的本机目录,同时必须是根用户才能修改

/etc/fstab文件(目标板上可能没有fstab,需要自己创建一个)。

格式(参考PC上的fstab):host_ip:/nfs_path /target_path nfsrsize=8192,wsize=8192,timeo=14,intr,nolock 0 0

注意:可以根据实际情况修改NFS服务器共享文件夹"https://www.doczj.com/doc/6010732110.html,:/usr/local/pub"和在本机的挂载点"/pub",同时挂载点/pub在客户端机器上必须存在。

(2)NFS常见挂载参数:

intr允许通知中断一个NFS调用。当服务器没有应答需要放弃的时候有用处。

timeo 如果超时,客户端等待的时间,以十分之一秒计算

retrans 超时尝试的次数

bg 后台挂载(很有用)

hard 如果server端没有响应,那么客户端一直尝试挂载

rsize 读块大小

wsize 写块大小

4、使用autofs来挂载NFS

(1)挂载NFS共享的第三种方法是使用autofs,它使用automount 守护进程来管理挂载点,只在文件系统被访问时才动态地挂载。autofs访问主映射配置文件/etc/auto.master来决定要定义哪些挂载点,然后使用适用于各个挂载点的参数来启动automount守护进程。主映射配置中的每一行都定义一个挂载点,一个分开的映射文件定义在该挂载点下要挂载的文件系统。如/etc /auto.misc文件可能会定义/misc目录中的挂载点,这种关系在/etc/auto.master文件中会被定义。

(2)/etc/auto.master文件中的每个项目都有3个字段,第1个字段是挂载点;第2个字段是映射文件的位置;第3个字段可选,可以包括超时数值之类的信息。

例如:要在机器上的/misc/myproject挂载点上挂载远程机https://www.doczj.com/doc/6010732110.html,中的/project52目录。

在/etc/auto.master文件中添加以下行:

/misc /etc/auto.misc --timeout 60

在/etc/auto.misc文件中添加以下行:

myproject -rw,soft,intr,rsize=8192,wsize=8192

https://www.doczj.com/doc/6010732110.html,:/proj52

/etc/auto.misc中的第1个字段是/misc子目录的名称,该目录被automount动态地创建,它不应该在客户端机器上实际存在;第2个字段包括挂载选项,如rw代表读写访问权,第3个字段是要导出的NFS的位置,包括主机名和目录。

(3)autofs是一种服务,要启动这项服务,在shell提示下键入以下命令:

$ sudo /sbin/service autofs restart

要查看活跃的挂载点,在shell提示下键入以下命令:

$ sudo /sbin/service autofs status

如果在autofs运行时修改了/etc/auto.master配置文件,则必须在shell提示下键入以下命令来通知automount守护进程重新载入配置文件:

$ sudo /sbin/service autofs reload

5、可以运行df命令查看是否挂载成功:

$ sudo df

取消挂载的命令如下:

$ sudo umount /mnt/root_nfs

七、目标板NFS配置操作

主机IP:192.168.1.101

目标板IP:192.168.1.230

将USB转串口连接上,在终端输入minicom与板子连起,作为“超级终端”使用。

启动目标板并连通网络后,首先查看目标板kernel自身是否支持NFS,在minicom中输入cat /proc/filesystems命令查看其中是否有NFS 一行,若没有则表示内核不支持NFS,就需要重新编译和烧写内核;有则OK,接下来就可以直接进行mount操作了。

具体命令是:

# mount -t nfs -o nolock

192.168.1.101:/opt/FriendlyARM/mini2440/root_nfs

/mnt/root_nfs

无任何提示表示成功,这时可以进入/mnt/root_nfs目录,对文件进行cp、mv等操作。

但是如果使用命令mount -t nfs

192.168.1.101:/opt/FriendlyARM/mini2440/root_nfs

/mnt/root_nfs,则会有如下的错误提示(也就是省去了"-o nolock"):# mount -t nfs

192.168.1.101:/opt/FriendlyARM/mini2440/root_nfs

/mnt/root_nfs

portmap: server localhost not responding, timed out

RPC: failed to contact portmap (errno -5).

portmap: server localhost not responding, timed out

RPC: failed to contact portmap (errno -5).

lockd_up: makesock failed, error=-5

portmap: server localhost not responding, timed out

RPC: failed to contact portmap (errno -5).

这时如果使用ls /mnt/root_nfs命令查看该目录内容时,你会发现此时NFS确确实实已经挂载成功了。

然后取消挂载的时候会出现如下的错误提示:

# umount /mnt/root_nfs/

lockd_down: no lockd running.

而成功取消挂载时没有任何提示,同样此时NFS也确实已经取消挂载了。

那么出现上面错误提示的可能原因是:

nfs mount默认选项包括文件锁,依赖于portmap提供的动态端口分配功能。

简单的解决方法:kill文件锁(lockd)或者使用mount -o nolock命令。

上面说的文件锁具体是什么原因,目前还没有找到更好的解决办法。不过,如果主机防火墙有设置时,也可能导致目标板无法正常访问。

NFS文件系统简介及原理

NFS文件系统简介及原理 什么是文件系统,NFS文件系统又是什么?简单的说,文件系统就是通过软件对磁盘上的数据进行组织和管理的一种机制,对其的一种封装或透视。NFS,Network File System。顾名思义,网络文件系统,即通过网络,对在不同主机上的文件进行共享。 为什么需要使用NFS呢?在生产环境,我们很少使用单机部署应用,因为单机存在单点故 障,一旦宕机,将无法为前端业务提供服务,这是客户无法容忍的。现在提倡的高可用及7*24服务,是我们追求的目标。对于一些小的应用,双机成为了主流。我们来看一种简单集群场景,应用分别部署在A及B上,前端通过F5或着web服务器访问应用。如下 图: 那么当客户端发出一个请求时,F5根据一定的机制进行转发,有可能有A服务器进行响应,也有可能由B服务器进行响应。而在web应用中上传一些静态文件是很常见的一种功能,如图片。假设用户在某一时间,上传了一张照片到A服务器上,那么下次访问时,被F5路由到了B服务器上,由于B服务器上并没有存储上传的照片,所以将造成用户无法看到自己上传的照片。 那么很容易想到,是不是可以把文件上传到一个公用的服务器上呢?这样不管访问的是A

还是B,读、取文件都只存在一份。答案是肯定的,这个公用的服务器我们也称之为文件服务器。上面的架构就演变成了下面的架构: 说了这么多,跟NFS又有什么关系呢?NFS提供了一种机制,可以让A、B访问C中的一个共享目录,就像是操作本地文件一样。既然NFS有这么牛逼的能力,又有什么原因不去深入了解一下呢?注:此处当然也可以通过sftp或ftp进行文件上传和下载。 NFS的原理:我们用一个图来进行说明: 首先:NFS包括两部分,服务端及客户端 由于NFS服务功能很多,会有很多端口,这些端口还有可能不固定,那么客户端就无法与服务器进行通信,因为程序间通信必须通过端口(tcp/udp都是端到端通信),那么就需要一个

NFS使用详解之二.服务状态查询及设置

NFS使用详解之二.服务状态查询及设置 2013-11-06 16:38:28 分类:大数据 操作系统版本: [root@localhost /]# cat /etc/redhat-release 1、检查portmap服务运行状态(因为NFS及其辅助程序都是基于RPC的,所以我们要确保系统中首先运行portmap服务) [root@localhost /]# id uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel) context=root:system_r:unconfined_t [root@localhost /]# service portmap status portmap is stopped 结果显示portmap服务是停止的,可以通过以下命令启动该服务: [root@localhost /]# service portmap start Starting portmap: [ OK ] [root@localhost /]# service portmap status portmap (pid 11085) is running... 结果显示portmap服务已处于“running”状态。

2、检查nfs服务运行状态 [root@localhost /]# service nfs status Shutting down NFS mountd: rpc.mountd is stopped nfsd is stopped rpc.rquotad is stopped 结果显示nfs服务是停止的,可以通过以下命令启动该服务: [root@localhost /]# service nfs start Starting NFS services: [ OK ] Starting NFS quotas: [ OK ] Starting NFS daemon: [ OK ] Starting NFS mountd: [ OK ] 此时来检查一下nfs服务运行状态,由下可知,nfs服务已启用。 [root@localhost /]# service nfs status Shutting down NFS mountd: rpc.mountd (pid 11155) is running... nfsd (pid 11151 11148 11147 11146 11145 11144 11143 11142) is running... rpc.rquotad (pid 11138) is running... 3、设置nfs服务在系统重启后自动运行 [root@localhost /]# chkconfig --list nfs nfs 0:off 1:off 2:off 3:off 4:off 5:off 6:off

mount用法详解

mount用法详解 1、挂载点必须是一个目录。 2、一个分区挂载在一个已存在的目录上,这个目录可以不为空,但挂载后这个目录下以前的内容将不可用。 对于其他操作系统建立的文件系统的挂载也是这样。但是需要理解的是:光盘、软盘、其他操作系统使用的文件系统的格式与linux使用的文件系统格式是不一样的。光盘是ISO9660;软盘是fat16或ext2;windows NT是fat16、NTFS;windows98是fat16、fat32;windows2000和windowsXP是fat16、fat32、NTFS。挂载前要了解linux是否支持所要挂载的文件系统格式。 挂载时使用mount命令: 格式:mount [-参数] [设备名称] [挂载点] 其中常用的参数有 -t<文件系统类型> 指定设备的文件系统类型,常见的有: minix linux最早使用的文件系统 ext2 linux目前常用的文件系统 msdos MS-DOS的fat,就是fat16 vfat windows98常用的fat32 nfs 网络文件系统 iso9660 CD-ROM光盘标准文件系统 ntfs windows NT 2000的文件系统 hpfs OS/2文件系统 auto 自动检测文件系统 -o<选项> 指定挂载文件系统时的选项。有些也可用在/etc/fstab中。常用的有 codepage=XXX 代码页 iocharset=XXX 字符集 ro 以只读方式挂载 rw 以读写方式挂载 nouser 使一般用户无法挂载 user 可以让一般用户挂载设备

提醒一下,mount命令没有建立挂载点的功能,因此你应该确保执行mount命令时,挂载点已经存在。(不懂?说白了点就是你要把文件系统挂载到哪,首先要先建上个目录。这样OK?) 例子:windows98装在hda1分区,同时计算机上还有软盘和光盘需要挂载。 # mk /mnt/winc # mk /mnt/floppy # mk /mnt/cdrom # mount -t vfat /dev/hda1 /mnt/winc # mount -t msdos /dev/fd0 /mnt/floppy # mount -t iso9660 /dev/cdrom /mnt/cdrom 现在就可以进入/mnt/winc等目录读写这些文件系统了。 要保证最后两行的命令不出错,要确保软驱和光驱里有盘。(要是硬盘的磁盘片也可以经常随时更换的话,我想就不会犯这样的错误了:-> ) 如果你的windows98目录里有中文文件名,使用上面的命令挂载后,显示的是一堆乱码。这就要用到-o 参数里的codepage iocharset选项。codepage指定文件系统的代码页,简体中文中文代码是936;iocharset指定字符集,简体中文一般用cp936或gb2312。 当挂载的文件系统linux不支持时,mount一定报错,如windows2000的ntfs文件系统。可以重新编译linux内核以获得对该文件系统的支持。关于重新编译linux内核,就不在这里说了。 四、自动挂载 每次开机访问windows分区都要运行mount命令显然太烦琐,为什么访问其他的linux分区不用使用mount命令呢?其实,每次开机时,linux自动将需要挂载的linux分区挂载上了。那么我们是不是可以设定让linux在启动的时候也挂载我们希望挂载的分区,如windows分区,以实现文件系统的自动挂载呢? 这是完全可以的。在/etc目录下有个fstab文件,它里面列出了linux开机时自动挂载的文件系统的列表。我的/etc/fstab 文件如下: /dev/hda2 / ext3 defaults 1 1 /dev/hda1 /boot ext3 defaults 1 2 none /dev/pts devpts gid=5,mode=620 0 0 none /proc proc defaults 0 0

几种Nand flash文件系统的对比

几种Nand flas文件系统的对比 1.来源:NLE-FFS: A Flash File System with PRAM for Non-linear Editing For thesedevices, NAND flash memory has became the most attractive storage medium due to outstanding characteristics such as its increased capacity, low power consumption, small size and light weight. For the efficient management of NAND flashmemory, several flash file systems have been proposed, including JFFS2, YAFFS2, CFFS and PFFS. several file systems such as MNFS,NAMU and ScaleFFS have been designed for real-time recording /playback and large-capacity storage. A. YAFFS2 YAFFS2 is the most widely employed file system for NAND flash memory. YAFFS2 essentially saves the object ID (file ID) and the chunk (page) number in the spare region to show the offset of a page and the owner file of the page. Therefore, YAFFS2 reads the spare regions and object headers to establish the metadata in memory. Although YAFFS2 is designed to support NAND flash memory, it has scalability problems. With YAFFS2, the location of the updated page is saved in NAND flash pages or spare regions, as shown in Fig. 10 (a); hence, the file system

NFS-网络文件系统实现资源共享

NFS -网络文件系统实现资源共享 NFS 会经常用到,用于在网络上共享存储。假如有三台机器 netbook 、myhost1、myhost2,它们需要访问同一个目录,目录中都是图片,传统的做法是把这些图片分别放到netbook 、myhost1、myhost2。但是使用NFS 只需要放到netbook 上的一个目录中(如:/root/netbook ),然后共享给myhost1、myhost2即可。访问的时候,metbook 主机的用户直接访问/root/netbook 目录即可,而主机myhost1、myhost2则可以通过网络间接地访问该目录的。实现方式如下: 一、为三台主机配置网络信息(以提供照片共享的主机为例) 1.分别修改各主机的IP 地址 [root @localhonst ~]#vi /etc/sysconfig/network -scripts/ifcfg-eth0 2.分别修改各主机的机器名 [root @localhonst ~]#vi /etc/sysconfig/network 3.分别修改各主机的本机路由信息 [root @localhonst ~]#vi /etc/hosts 4.重启计算机,以使配置生效 [root @localhonst ~]#init 6 二、配置NFS 服务器 1.启动系统的NFS 服务功能 方法一: [root @netbook ~]#service nfs start 方法二: [root @netbook ~]# /etc/init.d/nfs start

方法三: [root @netbook ~]#rfsysv NFS 服务需要portmap 服务的支持,在启动NFS 之前,需要启动portmap ,否则将会出现如下的提示。 启动portmap : [root @netbook ~]#service portmap start “”如果允许任何访问用户具有读写权限,则exports 文件的内容可配置为:

linux服务详解

Linux AS4下系统服务详解刚整理的 Linux, 详解, 系统, 服务 Linux AS4下系统服务详解 nfs 0:off 1:off 2:off 3:off 4:off 5:off 6:off nfs网络文件共享 NetworkManager 0:off 1:off 2:off 3:off 4:off 5:off 6:off 网络管理network 0:off 1:off 2:on 3:on 4:on 5:on 6:off 网络 gpm 0:off 1:off 2:on 3:off 4:on 5:on 6:off 鼠标mdmonitor 0:off 1:off 2:on 3:off 4:on 5:on 6:off 与RAID设备相关的守护程序 cups 0:off 1:off 2:on 3:off 4:on 5:on 6:off 公共UNIX打印支持,为Linux提供打印功能。是否需要启动如果不安装打印机,就不需要启动。 ypbind 0:off 1:off 2:off 3:off 4:off 5:off 6:off SUN的YP服务器名称服务器 haldaemon 0:off 1:off 2:off 3:off 4:on 5:on 6:off 硬件监控服务,监控硬件的改变,为你改变新的或更改过硬件,可以检测即插即用设备readahead 0:off 1:off 2:off 3:off 4:off 5:on 6:off 其作用是在启动系统期间,将启动系统所要用到的文件首先读取到内存中,然后在内存中进行执行,以加快系统的启动速度。而上面两个配置文件就保存着将要读取到内存的文件列表。 ipmi 0:off 1:off 2:off 3:off 4:off 5:off 6:off IPMI (Intelligent Platform Management Interface)即智能平台管理接口是使硬件管理具备“智能化”的新一代通用接口标准。用户可以利用IPMI 监视服务器的物理特征,如温度、电压、电扇工作状态、电源供应以及机箱入侵等。Ipmi 最大的优势在于它是独立于CPU BIOS 和OS 的,所以用户无论在开机还是关机的状态下,只要接通电源就可以实现对服务器的监控。Ipmi 是一种规范的标准,其中最重要的物理部件就是BMC(Baseboard Management Controller 如图1),一种嵌入式管理微控制器,它相当于整个平台管理的“大脑”,通过它ipmi 可以监控各个传感器的数据并记录各种事件的日志。 mdmpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off 软RAID监控服务 smartd 0:off 1:off 2:on 3:on 4:on 5:on 6:off Self Monitor Analysis and Reporting Technology System,监控你的硬盘是否出现故障。ibmasm 0:off 1:off 2:off 3:off 4:off 5:off 6:off ibmasm 套件用來與IBM Advance System Management PCI Adapter(亦稱RSA I)進行通訊。auditd 0:off 1:off 2:off 3:off 4:off 5:off 6:off 审核守护进程atd 0:off 1:off 2:off 3:on 4:on 5:on 6:off 用于at和batch的服务atd类似cron,提供在指定的时间做指定的事的服务,就象计划任务iptables 0:off 1:off 2:on 3:on 4:on 5:on 6:off 防火墙snmptrapd 0:off 1:off 2:off 3:off 4:off 5:off 6:off SNMP的捕获服务syslog 0:off 1:off 2:on 3:on 4:on 5:on 6:off 系统日志服务pcmcia 0:off 1:off 2:on 3:off 4:on 5:on 6:off 安装pcmcia卡(一般用于笔记本电脑)

linux中如何挂载NFS文件

如何挂载NFS开发环境的方法步骤 ———mount命令及umount命令的用法详解(附图说明)Step1:设置好网络 主机IP:222.204.59.185 网关:192.168.50.1 子网掩码:255.255.255.0 开发板IP:222.204.59.250 网关:192.168.50.1 子网掩码:255.255.255.0 目的是使得两个处于同一个网段。 Step2:在主机的linux中设置共享目录 运行命令 #gedit /etc/exports 编辑nfs 服务的配置文件(注意:第一次打开时该文件是空的),添加以下内容: /root/share *(rw,sync,no_root_squash) 保存退出 其中: /root/share表示nfs 共享目录,它可以作为开发板的根文件系统通过nfs 挂接; *表示所有的客户机都可以挂接此目录 rw表示挂接此目录的客户机对该目录有读写的权力 no_root_squash表示允许挂接此目录的客户机享有该主机的root 身份 使用showmount –e命令可以查看你的挂载点在哪,不加参数-e显示的是网络地址。 在开发板上的/mnt下建立新的nfs文件(可以放在其他地方,名字除了nfs也可以去其他的名字) Step3:通过命令启动和停止nfs 服务 在命令行下运行: #/etc/init.d/nfs restart 这将启动nfs 服务,可以输入以下命令检验nfs 该服务是否启动。 Step4:在minicom中使用mount命令(也可以在超级终端中使用) 确定 进入minicom界面:

# mount -t nfs 222.204.59.185: /root/share /mnt/nfs 上图为minicom中显示的linux(也即开发板中的) 如果提示:mount:RPC:unable to receive; errno =No route to host 说明你主机linux中的防火墙没关闭在主机linux 中使用一下命令就可以解决:#service iptables stop。在次使用mount命令就ok了。 注意:此处222.204.59.185主机的ip地址,使用mount命令是在超级终端或minicom中使用,而不是在主机的linux系统中。在取消挂载命令时也是在超级终端或minicom中使用,具体用法是:#umount /mnt/ 如果没有出现错误信息, 您将可以浏览到/mnt 目录中的内容和/root/share是一致的。 取消挂载: 使用这个命令可以停止nfs 服务: #/etc/init.d/nfs stop 检查nfs服务器是否开启: #service nfs status 启对应的2个服务:#service portmap restart #service nfs restart 检查防火墙看是否屏蔽了nfs端口:#service iptables stop #service iptables status

Linux 创建文件系统及挂载文件系统详解

摘要: 本文对新增硬盘,切割硬盘,创建硬盘分区,为硬盘分区创建文件系统,以及加载文件系统的流程做总结性论述; 主要是为初学者弄清楚这一操作过程; 本文涉及fdisk、mkfs、mount ... ... 等工具; 对/etc/fstab 进行了解说; 还有磁盘扫描工具fsck 等介绍; 如果您想加载一个分区(文件系统),首先您得确认文件系统的类型,然后才能挂载使用,比如通过mount 加载,或者通过修改/etc/fstab来开机自动加载; 如果您想添加一个新的分区,或者增加一个新的硬盘,您要通过分区工具来添加分区,然后要创建分区的文件系统,然后才是挂载文件系统;比如通过mount 加载,或者通过修改/etc/fstab来开机自动加载; 一、对存储设备的分区; 我们这里所指的存储设备主要是本地硬盘、移动硬盘(比如USB 和1394接口的硬盘);由于磁盘很大并且为了满足我们各种需要,所以把硬盘分成若干个分区; 在Linux中进行硬盘分区操作的工具有: fdisk ,目前看来也是最好用的分区工具; parted 和cfdisk在某一方面有点优点,如parted中的数据备份功能; 推荐您用fdisk 分区工具; 二、存储设备进行格式化,即建立文件系统的过程; 1、文件系统的一点介绍 对存储设备分区还是远远不够的,我们还要对这些新增分区进行格式化;一个分区只有建立了某种文件系统后,这个分区才能使用;建立文件系统过程,就是用相应格式化工具格式化分区的过程; 在Linux操作系统中,目前几乎支持目前主流的文件系统,比如NTFS(只读)、FAT(可读可写)、ext2、ext3、reiserfs、hfs (MAC 操作系统的文件系统)、swap 交换分区... ... 还有一些不熟悉的操作系统的文件系统等;

嵌入式Linux根文件系统制作

实训项目四-嵌入四Linux系统根文件系统制作一. 项目实施目的 了解 UP-CUP2440 型实验平台Linux 系统下根文件系统结构 掌握根文件系统的搭建过程 掌握busybox、mkcramfs等工具的使用方法 二. 项目主要任务 使用busybox生成文件系统中的命令部分,使用mkcramfs工具制作CRAMFS 格式的根文件系统。 分析根文件系统etc目录下重要配置文件的格式及语法,熟悉根文件系统的启动过程 三. 基本概念 1.文件系统基本概念 Linux的一个最重要特点就是它支持许多不同的文件系统。这使Linux非常灵活,能够与许多其他的操作系统共存。Linux支持的常见的文件系统有:JFS、ReiserFS、ext、ext2、ext3、ISO9660、XFS、Minx、MSDOS、UMSDOS、VFAT、NTFS、HPFS、NFS、SMB、SysV、PROC等。随着时间的推移, Linux支持的文件系统数还会增加。Linux是通过把系统支持的各种文件系统链接到一个单独的树形层次结构中,来实现对多文件系统的支持的。该树形层次结构把文件系统表示成一个整个的独立实体。无论什么类型的文件系统,都被装配到某个目录上,由被装配的文件系统的文件覆盖该目录原有的内容。该个目录被称为装配目录或装配点。在文件系统卸载时,装配目录中原有的文件才会显露出来。在Linux 文件系统中,文件用i节点来表示、目录只是包含有一组目录条目列表的简单文件,而设备可以通过特殊文件上的I/O 请求被访问。 2.常见的嵌入式文件系统 嵌入式Linux系统一般没有大容量的磁盘,多使用flash存储器,所以多采用基于Flash(NOR和NAND)的文件系统或者RAM内存的文件系统。 (1)Flash根据结构不同分为 NOR Flash和NAND Flash。基于flash的文件系统主要有: jffs2:RedHat基于jffs开发的文件系统。

网络文件系统

网络文件系统 网络文件系统,英文Network File System(NFS)。是由SUN公司研制的UNIX表示层协议(pressentation layer protocol),能使使用者访问网络上别处的文件就像在使用自己的计算机一样。NFS是基于UDP/IP协议的应用,其实现主要是采用远程过程调用RPC机制,RPC提供了一组与机器、操作系统以及低层传送协议无关的存取远程文件的操作。RPC采用了XDR的支持。XDR是一种与机器无关的数据描述编码的协议,他以独立与任意机器体系结构的格式对网上传送的数据进行编码和解码,支持在异构系统之间数据的传送。 ①提供透明文件访问以及文件传输; ②容易扩充新的资源或软件,不需要改变现有的工作环境; ③高性能,可灵活配置。 [1]网络文件系统(NFS)是文件系统之上的一个网络抽象,来允许远程客户端以与本地文件系统类似的方式,来通过网络进行访问。虽然NFS 不是第一个此类系统,但是它已经发展并演变成UNⅨ? 系统中最强大最广泛使用的网络文件系统。NFS 允许在多个用户之间共享公共文件系统,并提供数据集中的优势,来最小化所需的存储空间。 NFS与以往一样有用并在不断演变 网络文件系统(NFS)从1984 年问世以来持续演变,并已成为分布式文件系统的基础。当前,NFS(通过pNFS 扩展)通过网络对分布的文件提供可扩展的访问。探索分布式文件系背后的理念,特别是,最近NFS 文件进展。 NFS 的简短历史 第一个网络文件系统—称为File Access Listener —由Digital Equipment Corporation(DEC)在1976 年开发。Data Access Protocol(DAP)的实施,这是DECnet 协议集的一部分。比如TCP/IP,DEC 为其网络协议发布了协议规范,包括DAP。 NFS 是第一个现代网络文件系统(构建于IP 协议之上)。在20 世纪80 年代,它首先作为实验文件系统,由Sun Microsystems 在内部完成开发。NFS 协议已归档

极品飞车9全攻略

1 NFS:MW各种模式比赛心得 赛事分为:竞速赛、直线加速赛、跑道赛、测速器竞速、收费站竞速和跑圈淘汰赛。 里程碑分为:赏金、撞击、政府支出挑战、照相罚单竞速、违法事件挑战、追击时间、脱逃追击、路障和钉刺带。 竞速赛 要点:全场不要落后太多 技巧:有技术的人会带头至终点;一旦落后,在尾段也不要落后太多,尝试在终点前那一段利用氮气加速直接KO众多对手。 直线加速赛 要点:准确换档 技巧:一档二档是至关紧要的,所以必须熟悉赛车的引擎性能。 不到一分钟的赛程却有大量的慢车出现在赛道上,建议使用车内视角以便集中精神做出更快的换线动作。 不要随意使用氮气加速 跑道赛 要点:利用第一圈了解赛道,如弯道倾斜度。 技巧:充分利用氮气加速;如进入大直路前。 跑圈淘汰赛 要点:利用第一圈了解赛道,如弯道倾斜度。 技巧:与跑道赛相似 测速器竞速 要点:确保每个测速点通过前有一定量的氮气储存量,利用氮气冲刺。 技巧:除非你技术到家,不然不明路况(包括弯道、测速点位置)的时候就不要领头带跑。 收费站竞速

要点:比赛开始就利用氮气加速 技巧:最后一个收费站可以全力使用氮气加速,以获得较高的时间奖励。 由于这种比赛都是在高速公路上举行,所以建议使用你觉得能看到最远的玩家视角进行比赛。 赏金 撞毁警车的赏金最多 撞击 对准警车的尾部撞上去,不要撞击车头。 政府支出挑战 政府支出包括警车损毁、城市设施等。 照相罚单竞速 在读取游戏的时候就按着油门不放。 赛事尾段利用氮气冲刺。 冲刺前千万不要撞上慢车,宁愿擦着围墙利用氮气加速通过。 追击时间 时速保持在100~130KM左右,警车来了就加快一点。 千万不要狂奔。 路障和钉刺带。 宁撞车尾,不撞车头。 合理利用飞速装置。 飞速装置作用如下: 1.使画面变慢,有利于你选择合适的行车路线。如果真要撞上围堵的警车,就撞击其中一台轻型车尾部。 2.使车辆有更好的抓地力、更大的转向角度以及额外的扭力,简单的说就是车辆有比平常更好转向性能和更强的撞击抵御能力。

Linux下的文件系统为树形结构

Linux下的文件系统为树形结构,入口为/树形结构下的文件目录:无论哪个版本的Linux系统,都有这些目录,这些目录应该是标准的。各个Linux发行版本会存在一些小小的差异,但总体来说,还是大体差不多。 1. /文件系统的入口,最高一级目录; 2. /bin基础系统所需要的命令位于此目录,是最小系统所需要的命令,如:ls, cp, mkdir等。 这个目录中的文件都是可执行的,一般的用户都可以使用。 3. /boot包含Linux内核及系统引导程序所需要的文件,比如vmlinuz initrd.img 文件都位于这个目录中。在一般情况下,GRUB或LILO系统引导管理器也位于这个目录; 4. /dev设备文件存储目录,比如声卡、磁盘... ...这是一个非常有趣的目录,是Linux文件系统的一个闪亮的特性- 所有对象都是文件或目录。仔细观察这个目录你会发现hda1, hda2等, 它们代表系统主硬盘的不同分区。 /dev/cdrom和/dev/fd0代表你的CDROM驱动器和floppy驱动器。看上去可能有些奇怪,但比较文件和硬件的特性这却是十分合理的。它们都可以读出和写入。例如/dev/dsp,这个文件代表你的扬声器。那么写入这个文件的数据都回传送到喇叭。试一试'cat /etc/lilo.conf > /dev/dsp' 你会听到一些声音。这是你的lilo.conf 文件的声音!同样,向/dev/ttyS0 ( COM 1 ) 读出或写入数据你可以和接到上面的设备进行通讯。 5. /etc存放系统程序或者一般工具的配置文件。 如安装了apache2之后,配置文件在/etc/apache2/目录下。 /etc/init.d 这个目录是用来存放系统或服务器以System V模式启动的脚

Windows下NFS Server搭建和使用

Windows下NFS Server搭建和使用 Revision History 1.NFS简介 NFS是Network File System的简写,即网络文件系统。NFS允许一个系统在网络上与他人共享目录和文件。通过使用NFS,用户和程序可以像访问本地文件一样访问远端系统上的文件。NFS就是一种Linux系统或Unix系统下的共享文件服务,类似于windows共享。NFS 服务器可以看作是一个文件服务器,它可以让你的PC通过网络将远端的NFS 服务器共享出来的文件挂载到自己的系统中,在客户端看来使用NFS的远端文件就象是在使用本地文件一样。 2.NFS测试所需设备和条件 Windows2008 PC1台作为NFS server Windows2008系统光盘 Windows7 PC1台作为NFS Client 3.NFS Server搭建 用装有Windows2008系统的PC作为NFS server 3.1安装NFS Server 1)插入Windows2008系统光盘,点击开始->管理工具->服务器管理器,在左边的树中选中” 功能”项,右边的窗口中会列出功能的详细信息,点击”添加功能”,如图1所示

图1 2)进入添加功能向导窗口,远程服务器管理工具->文件服务工具->勾选网络文件系统服务 工具,如图2所示,点击下一步

图2 3)点击安装,开始安装,如图3~4所示 图3

图4 4)安装完成后,点击关闭,如图5所示 图5

5)添加角色服务,在服务器管理器的左边的树中选中”角色”, 右边会列出角色的详细信息, 点击”添加角色”,如图6所示 图6 6)进入添加角色向导,点击下一步,如图7所示 图7

NFS报文分析

1NFS报文分析 NFS协议基于RPC协议,每个NFS报文都对应着一个RPC报文类型。除NFS报文外,PORTMAP,MOUNT等同NFS密切相关的报文也在分析范围内。除特别说明外,本次分析服务器IP为192.168.0.120,客户端IP为192.168.0.186。 1.1 查询远程可挂载的目录 1.1.1NFS服务未开启 如果服务器未开启NFS功能输入 showmount –e 主机名或IP 则在终端显示: mount clntudp_create: RPC: Program not registered 主要交互流程: 客户端通过TCP与服务器的Portmap程序建立连接,尝试通过TCP 远程调用GETPORT,服务器返回MOUNT功能为开启。然后客户端再次尝试通过UDP达到此目的,服务期同样返回PROGRAM_NOT_AVAILABLE。整个过程是基于RPC的。

1.1.2NFS服务已开启 客户端首先通过PORTMAP远程调用请求MOUNT的端口。后面又重传两次,重传报文的XID相同的,而服务器就是通过XID来判断一个报文是否是另一个的REPLY。服务器得到请求后返回端口号33394。客户端使用33394端口来进行EXPORT类型MOUNT请求。服务器返回请求,内容如下: Procedure:EXPORT下面的V alue Follows代表List 是否还有内容。在获取到这个List后会在终端显示:

1.2 挂载远程目录 挂载远程目录的过程最本质的是如何获得此目录在服务器上的文件句柄,我们在分析下面的交互时始终以此为中心。 1.2.1挂载不存在的目录 首先通过客户端通过一个基于TCP的RPC获得MOUNT的端口32771,之后,客户端试图通过MOUNT请求来获得/home/work_ro 的句柄,从而实现远程挂载。但由于目录不存在,服务器会当作权限不够来处理,所以返回ERR_ACCESS。 1.2.2成功挂载 前面的交互和目录不存在的情况基本相同,只是服务器在MOUNT请求后返回了要挂在目录句柄。此后通过PORTMAP得到NFS的端口,

实验 文件系统管理

实训项目4 文件系统管理 一、实训目的 ●掌握Linux下文件系统的创建、挂载与卸载。 ●掌握文件系统的自动挂载。 二、项目背景 某企业的Linux服务器中新增了一块硬盘/dev/sdb,请使用fdisk命令新建/dev/sdb1主分区和/dev/sdb2扩展分区,并在扩展分区中新建逻辑分区/dev/sdb5,并使用mkfs命令分别创建vfat和ext3文件系统。然后用fsck命令检查这两个文件系统;最后,把这两个文件系统挂载到系统上。 三、实训内容 练习Linux系统下文件系统的创建、挂载与卸载及自动挂载的实现。 四、实训步骤 子项目1.创建/dev/sdb1和/dev/sdb5 ●使用fdisk命令创建/dev/sdb1主分区。 ●使用fdisk命令创建/dev/sdb2扩展分区。

●使用fdisk命令创建/dev/sdb5逻辑分区。 ●输入子命令w,把设置写入硬盘分区表,退出fdisk并重新启动系统。 ●用mkfs命令在上述刚刚创建的分区上创建ext3文件系统和vfat文件系统。 ●用fsck命令检查上面创建的文件系统。 子项目2.挂载/dev/sdb1和/dev/sdb5 ●利用mkdir命令,在/mnt目录下建立挂载点,mountpoint1和mountpoint2。

●把上述新创建的ext3分区挂载到/mnt/mountpoint1上。 ●把上述新创建的vfat分区挂载到/mnt/mountpoint2上。 ●利用mount命令列出挂载到系统上的分区,查看挂载是否成功。 ●利用umount命令卸载上面的两个分区。 子项目3.实现/dev/sdb1和/dev/sdb5的自动挂载 ●编辑系统文件/etc/fstab文件,把上面两个分区加入此文件中。 ●重新启动系统,显示已经挂载到系统上的分区,检查设置是否成功。 子项目4.挂载光盘和U盘 ●取一张光盘放入光驱中,将光盘挂载到/media/cdrom目录下。查看光盘中的文件。 ●利用与上述相似的命令完成U盘的挂载与卸载。 五、实训思考题 1. 在Linux下能创建Windows 的分区吗?在Linux下能创建Windows的文件系统吗?Windows操作

nfs起根文件系统

1为什么要制作nfs起根文件系统 制作用于mini2440开发板使用的内核,并使用nfs起根文件系统。 2应用arm平台的linux2.6.29内核。 首先清理内核中间文件,配置文件 命令#cd /home/guoqian/4-3-1 #cd linux-2.6.29 #make distclean 3选择参考配置文件 为了使制作的内核支持nfs起根文件系统,选择config-mini2440作为配置文件。 修改配置文件CMDLINE,修改代码如下: ******************************************************************************* CMDLINE=”root=/dev/nfs nfsroot=192.168.14.2:/nfsroot/rootfs ip=192.168.1.55 rw console=ttySAC0 mem=64M” ******************************************************************************* 解释:CMDLINE:命令行启动参数定义了内核挂载根文件系统的方式 (1)root=/dev/nfs →表示内核采用nfs方式起根文件系统 (2)nfsroot=192.168.14.2:/nfsroot/rootfs →表示nfs起的根文件系统位于nfs服务器/nfsroot/rootfs目录,服务器IP地址为192.168.14.2 (3)ip=192.168.1.55 →开发板IP地址,要求与服务器IP地址在同一网段 (4)rw →文件系统可读可写 (5)console=ttySAC0 mem=64M →ttySAC0作为控制台,内存64M 4配置内核

材料失效准则详解

Chapter 2 材料失效理論(Material Failure Theories) 資料來源 1. 吳嘉祥等譯,機械元件設計,第八版,高立圖書有限公司,台北縣,2006, 2. Robert L. Norton, Machine Design An Integrated Approach, 3rd Edition, Pearson Prentice Hall, Person Education Inc., Upper Saddle River, New Jersey, 2006. 1. 材料分類 [1] 延性材料 (Ductile Materials) ● 材料受力延長量(應變)可達5% (或以上) ● 材料對滑動(Slip)之阻抗<對斷裂(Fracture)之阻抗 ● Material Failure (材料失效)因降伏(Yielding)而發生,此時應力到達Yielding Stress (降伏強度或Yielding Strength) ● 多數延展性材料:σyield 拉伸 ? σyield 壓縮 脆性材料 (Brittle Materials) ● 材料受力伸長量無法達到5%,(材料在應變到達5%前即已失效) ● 材料的斷裂阻抗<滑動阻抗 ● Material Failure 因斷裂而發生,此時應力到達Ultimate Stress (極限強度或Ultimate Strength) ● 多數脆性材料:σu 拉伸 < σu 壓縮 2. 延展性材料的材料失效理論(Failure Theories of Ductile Materials) [1] (a)最大法向應力失效理論(Max. Normal Stress Failure Theory) =>若不符合以下三個不等式關係中任何一個,即為Failure fs ypt 1fs ypc N S N S ≤ ≤σ (1a) fs ypt 2fs ypc N S N S ≤ ≤σ (1b) fs ypt 3fs ypc N S N S ≤ ≤σ (1c) 上式中,σ1, σ2, σ3為主應力(Principle Stress),下標t 代表tension (拉伸)、下標c 代表compression (壓縮),其他符號: .上式應用於延性材料

使用uboot去挂载根文件系统

1、根文件系统的制作 1)创建根文件系统主目录: mkdir rootfs 2)创建根文件系统的子目录 cd rootfs mkdir bin dev etc lib proc sbin sys usr mnt tmp var 3)然后创建usr下的子目录 mkdir usr/bin usr/lib usr/sbin lib/modules 4)创建设备文件 内核在引导时设备节点console,null必须存在 cd dev/ 注:该目录为/mini2440/nfsroot/rootfs 下的dev目录mknod –m 666 console c 5 1 mknod -m 666 null c 1 3 c:表明类型为字符设备 第一个数字(5,1):主设备号 第二个数字(1,3):次设备号 这两个设备文件设备号是固定的 5)安装etc etc目录主要是一些启动时的脚本文件一般不需要修改 tar etc.tar.gz –C /xxx/rootfs

这个命令可能不给用改为: tar xvzf etc.tar.gz –C /xxx/rootfs 6)编译内核模块 内核模块保存在lib下面的module下 配置内核:*直接编译到zimage m不链接到zimage而是编译成模块到.o就停住 进入Linux内核目录(linux-2.6.32.2) make modules ARCH=arm CROSS_COMPILE=arm-linux- 添加了ARCH=arm表示现在编译的是arm架构的内核 CROSS_COMPILE=arm-linux-表示使用交叉编译工具链 安装内核模块到根文件系统: make modules_install ARCH=arm INSTALL_MOD_PATH=/xxx/rootfs 7)配置busybox 因为Linux很多命令都是通过软连接实现的,所以无法直接将这些命令复制到根文件系统中。Busybox是一个工具集合,根文件系统很多命令都可以通过busybox编译得到,如命令ls,cd,mkdir。 Busybox相当于一个命令解析器,根文件中命令被软连接到 busybox,由busybox进行命令解析。 a) 解压busybox tar xvzf busybox-1.13.3 b) 配置busybox

相关主题
文本预览
相关文档 最新文档