如何在Linux下配置NFS服务器?
网络文【wǎng luò wén】🌖件系统(NFS,Network File System)是一种将远程主💜机上的分区【fèn qū】🤘(目录💯)经网络【jīng wǎng luò】挂载到【guà zǎi dào】👊本地系【běn dì xì】🤒统的一【tǒng de yī】种机制【zhǒng jī zhì】,通过对🛋网络文【wǎng luò wén】🌖件系统的支持,用户可🥘以在本地系【běn dì xì】🤒统上像操作【zuò】本地分区【fèn qū】一样来【yī yàng lái】对🐒远程主💜机的共【jī de gòng】享分区【fèn qū】(目录💯)进行操作【zuò】。
在嵌入【zài qiàn rù】🎵式【shì】🕋Linux 的开发【de kāi fā】📅过程中,开发者需要在✅Linux 服务器📛上进行【háng】所有的软件开【ruǎn jiàn kāi】发,交叉编译后,通用【tōng yòng】FTP 方式【shì】🕋将可执行【háng】🌿文件下【wén jiàn xià】🥖载到嵌入式【shì】系🙂统运行【háng】,但这种方式【shì】🕋不但效率低下🐖,且无法实现在【shí xiàn zài】线的调【xiàn de diào】试【shì】.因此【yīn cǐ】🌤,可以通😀过建立【guò jiàn lì】NFS,把Linux 服务器📛上的特【shàng de tè】定分区【dìng fèn qū】共享到【gòng xiǎng dào】待调试【dài diào shì】的嵌入式【shì】🕋目标系统上🙎,就可以【jiù kě yǐ】直接在【zhí jiē zài】嵌入🎵式【shì】🕋目标系统上🙎操作Linux 服务器📛,同时可【tóng shí kě】以在线【yǐ zài xiàn】对程序进行调【jìn háng diào】🍯试【shì】和修🎿改,大大的方便了软件的💅开发.因此【yīn cǐ】🌤,NFS 的是嵌入式【shì】🕋Linux 开发的【kāi fā de】一个重要的组成部分,本部分🌁内容将🍛详细说🥡明如何【míng rú hé】🔽配置嵌入式【shì】🕋Linux 的NFS 开发环境🌪。
嵌入式Linux 的【de】🚧NFS 开发环【kāi fā huán】境的【de】实🎳现包括两个方面:一是Linux 服务器【fú wù qì】🍗端的【duān de】🍄NFS 服务器【fú wù qì】🍗支持🧗;二是嵌【èr shì qiàn】入式目标系统的【de】🚧NFS 客户端【kè hù duān】👘的支持【de zhī chí】🔒.因此【yīn cǐ】👳,NFS 开发环【kāi fā huán】境的【de】🚧建立需要🐙配置Linux 服务器【fú wù qì】🍗端和嵌入式目标系统端.
NFS是由🕕Sun开发并发展起【fā zhǎn qǐ】😤来的一项用于在【zài】🕥不同机器,不同操作系统之间通过网络互相分【hù xiàng fèn】享各自【xiǎng gè zì】🍹的文件.NFS server也可以【yě kě yǐ】💯看作是【kàn zuò shì】🛎一个【yī gè】FILE SERVER,用于在【zài】🕥UNIX类系统之间共享文件【xiǎng wén jiàn】,可以轻松的挂🎤载(mount)到一个【yī gè】🥝目录上,操作起💤来就像【lái jiù xiàng】本地文件一样的方便【de fāng biàn】。
类型【lèi xíng】😖:System V-launched Service
软件包:nfs-utils
进程【jìn chéng】😈:nfsd,lockd,rpciod,rpc.{mounted,rquotad,statd}
脚本:nfs,nfslock
端口🅾:由📘portmap服务指【fú wù zhǐ】派端口【pài duān kǒu】🅾(111)
配置文件:/etc/exports
辅助工具:portmap(必须)
相关命【xiàng guān mìng】🚹令:rpcinfo -p [IPADD]:查看服务【wù】🏄器提供的【de】rpc服务【wù】🏄
showmount -e:查看服【chá kàn fú】务共享🤲的目录
Server端:
1./etc/exports格式:
目录 选项
例😬:共享【gòng xiǎng】😄/share目录给192.168.0.x的用户【de yòng hù】
/share 192.168.0.0/24 (rw)
/home/haiouc/haioucshare *(rw,sync,all_squash)
/mnt/cdrom 192.168.0.*(ro)
====> *指的是🤵允许所【yǔn xǔ suǒ】有的【yǒu de】ip访问🔑;
对目录/home/haiouc/haioucshare 要给出【yào gěi chū】🌔一定的【yī dìng de】💡权限;
可以加载本地【zǎi běn dì】的光盘,然后用🗑nfs共享给【gòng xiǎng gěi】他人🤩
2.启动portmap服务:
service portmap start[restart]
3.启动NFS服务:
service nfs start[restart]
Client端:
1.启动portmap服务:
service portmap start[restart]
2.挂载服🦐务器端【wù qì duān】的共享🏐目录【mù lù】(假设服务器端【wù qì duān】192.168.0.1):
mkdir /mnt/localshare
mount -t nfs 192.168.0.1:/share /mnt/localshare
=========================================================================
showmount //显示关【xiǎn shì guān】⛵于NFS服务器文件系统挂载【tǒng guà zǎi】的信息🌼
showmount -e //显示NFS服务器【fú wù qì】的输出📴清单【qīng dān】Ⓜ
=========================================================================
chkconfig --level 35 nfs on //设置🚟NFS自动启【zì dòng qǐ】动方式;
=========================================================================
通过修【tōng guò xiū】🕓改🏖/etc/fstab文件可以实现【yǐ shí xiàn】开机自🚎动挂载【dòng guà zǎi】nfs目录
[root@server6 nfs1]# cat /etc/fstab
# This file is edited by fstab-sync - see 'man fstab-sync' for details
LABEL=/ / ext3 defaults 1 1
none /dev/pts devpts gid=5,mode=620 0 0
none /dev/shm tmpfs defaults 0 0
none /proc proc defaults 0 0
none /sys sysfs defaults 0 0
LABEL=SWAP-hdc2 swap swap defaults 0 0
192.168.1.10:/home/haiouc/haioucshare /mnt/nfs1 nfs defaults 0 0
=========================================================================
NFS参数信息:
访问权限选项
. 设置输出目录只读 ro
. 设置输出目录读写 rw
用户映射选项
. all_squash 将远程访问的所有普【suǒ yǒu pǔ】💹通用户及所属🧛组【zǔ】都映射为匿名用户或用户【huò yòng hù】🥓组【zǔ】(nfsnobody);
. no_all_squash 与all_squash取反(默认设【mò rèn shè】🎁置【zhì】📌);
. root_squash 将【jiāng】⤵root用户及所属组【suǒ shǔ zǔ】👃都映射为匿名用户或【yòng hù huò】用户组👟(默认设置);
. no_root_squash 与【yǔ】rootsquash取反🀄;
. anonuid=xxx将远程【jiāng yuǎn chéng】访问的✏所有用【suǒ yǒu yòng】户都映🖕射为匿名用户,并指定该用户♊为本地【wéi běn dì】用户(UID=xxx);
. anongid=xxx 将远程🔧访问的所有用【suǒ yǒu yòng】🦇户【hù】📊组都映【zǔ dōu yìng】射为🌟匿名用 户【hù】组账【zhàng】🐘户【hù】📊,并指定该匿名用户【hù】组账【zhàng】🐘户【hù】📊为本地用户【hù】组账【zhàng】🐘户【hù】📊(GID=xxx);
其它选项
. secure 限制客户端只能从小于【yú】1024的【de】tcp/ip端口连🤩接nfs服务器【fú wù qì】🧐(默认设置🤑);
. insecure 允许客🏩户端从【hù duān cóng】👫大于1024的🕸tcp/ip端口连接服务【jiē fú wù】器【qì】;
. sync 将数据🎼同步写【tóng bù xiě】✨入内存🚇缓冲区与磁盘【yǔ cí pán】🏓中,效率低,但可以【dàn kě yǐ】保证数据的一致性【zhì xìng】;
. async 将数据先保存👷在内存缓冲区【huǎn chōng qū】中【zhōng】🚃,必要时才写入【cái xiě rù】📐磁盘;
. wdelay 检查是👢否有相【fǒu yǒu xiàng】关的写操作【zuò】,如果有【rú guǒ yǒu】⛄则将这些写操作【zuò】 一起执行,这样可【zhè yàng kě】以提高效率💋(默认设【mò rèn shè】🏄置🕳);
. no_wdelay 若有写操作则【cāo zuò zé】立即执【lì jí zhí】🌯行,应与🐂sync配合使【pèi hé shǐ】用🌬;
. subtree 若输出【ruò shū chū】目录是【mù lù shì】🧠一个子【yī gè zǐ】目录,则👰nfs服务器将检查其父目🥛录的权【lù de quán】限🈺(默认设置);
. no_subtree即使输出目录是一个子目录【zǐ mù lù】🙉,nfs服务器🍭也不检查其父🏠目录的【mù lù de】👭权限,这样可【zhè yàng kě】以提高【yǐ tí gāo】效率;
关键词:Linux,NFS服务器
阅读本文后您有什么感想? 已有 人给出评价!
- 0
- 0
- 0
- 0
- 0
- 0