Linux下搭建并使用nfs(网络文件系统)

NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。

说白了就是,当我们集群机器想要共同访问同一路径下的某些文件,就需要用到nfs了,因为搭建的时候遇到了一些坑,所以在这里记录下来。

要设定好 NFS 服务器我们必须要有两个软件,分别是:

RPC 主程序:rpcbind

NFS 其实可以被视为一个 RPC 服务,而要启动任何一个 RPC 服务之前,我们都需要做好 port 的对应 (mapping) 的工作才行,这个工作其实就是『 rpcbind 』这个服务所负责的!也就是说,在启动任何一个 RPC 服务之前,我们都需要启动 rpcbind 才行! (在 CentOS 5.x 以前这个软件称为 portmap,在 CentOS 6.x 之后才称为 rpcbind 的!)

NFS 主程序:nfs-utils

就是提供 rpc.nfsd 及 rpc.mountd 这两个 NFS daemons 与其他相关 documents 与说明文件、执行文件等的软件。

首先是准备工作,也就是需要一台NFS服务器和若干台客户机。下面以一台服务器两台客户机为例(都是一样的linux机器,可以自己选择哪一台做服务器)

比如我这里,选择了ip为10.0.0.26作为服务器,客户机ip分别是10.0.2.18,10.0.2.20.

(以下代码加粗的为需要在机器上敲的指令,如果指令没有权限记得前面加上sudo

1前期准备:

1.安装nfs-utils和rpcbind

先看系统有没有安装这两个东西:

[root@sr126 ~]# rpm -qa |grep nfs

[root@sr126 ~]# rpm -qa |grep rpcbind

图1-检查是否安装过

像图一就是已经安装过,如果没有安装则敲下面的指令进行安装。

[root@sr126 ~]# yum-yinstallnfs-utils rpcbind

2.设置开机启动服务

[root@sr126 ~]# chkconfig nfs on

[root@sr126 ~]# chkconfig rpcbind on

2服务端配置:

1.创建共享目录 

[root@sr126 ~]# mkdir /share

2.编辑/etc/exports文件添加如下内容 

[root@sr126 ~]# vim /etc/exports 

添加内容如下:

/share 10.0.2.18(rw,sync)

/share 10.0.2.20(rw,sync)

(因为我需要共享到两个服务器里所以加了两条,大家可以根据需要进行删减。试过10.0.2.*的方式发现不行,所以就用了最笨的方法每条都加上了)

图2-/etc/exports 内容

网上的示例一般是这样的:

/share 192.168.2.0/24(rw,no_root_squash,no_all_squash,sync)
常见的参数则有:

参数值    内容说明

rw  ro    该目录分享的权限是可读写 (read-write) 或只读 (read-only),但最终能不能读写,还是与文件系统的 rwx 及身份有关。

sync  async    sync 代表数据会同步写入到内存与硬盘中,async 则代表数据会先暂存于内存当中,而非直接写入硬盘!

no_root_squash  root_squash    客户端使用 NFS 文件系统的账号若为 root 时,系统该如何判断这个账号的身份?预设的情况下,客户端 root 的身份会由 root_squash 的设定压缩成 nfsnobody, 如此对服务器的系统会较有保障。但如果你想要开放客户端使用 root 身份来操作服务器的文件系统,那么这里就得要开 no_root_squash 才行!

all_squash    不论登入 NFS 的使用者身份为何, 他的身份都会被压缩成为匿名用户,通常也就是 nobody(nfsnobody) 啦!

anonuid  anongid    anon 意指 anonymous (匿名者) 前面关于 *_squash 提到的匿名用户的 UID 设定值,通常为 nobody(nfsnobody),但是你可以自行设定这个 UID 的值!当然,这个 UID 必需要存在于你的 /etc/passwd 当中! anonuid 指的是 UID 而 anongid 则是群组的 GID 啰。

设置配置生效:

[root@sr126 ~]# exportfs -r

启动服务

[root@sr126 ~]# service rpcbind start

[root@sr126 ~]# service nfs start

本机查询nfs服务器

[root@sr126 ~]# showmount -e localhost

图3-本机查询 nfs服务器

3客户端配置:

查看服务器抛出的共享目录信息

[root@sr418 ~]# showmount -e 10.0.0.26

图4-服务器的共享目录信息

[root@sr418 ~]# mount -t nfs 10.0.0.26:/share /mnt

(这里是将本机的mnt目录与服务器的share目录共享,这样进入到mnt就可以看到服务器中share文件夹内所有内容啦)

这里有可能会报无权限,是我遇见的大坑。一种可能就是你服务器端/etc/exports写的配置不对,还有一种可能是你没有给用户设置权限。也就是给服务器端当前用户配一下权限

[root@sr126 ~]# sudo chown sparkuser:sparkuser -R share/

mount成功后就可以查看挂载情况啦

[root@sr418 ~]# df -h

图5-挂载情况

如上图5所示可以看到服务器端的share文件夹已经挂载到了当前客户端的mnt上了

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 219,188评论 6 508
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,464评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 165,562评论 0 356
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,893评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,917评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,708评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,430评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,342评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,801评论 1 317
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,976评论 3 337
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,115评论 1 351
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,804评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,458评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,008评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,135评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,365评论 3 373
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,055评论 2 355

推荐阅读更多精彩内容

  • ** 本文的实验环境为 CentOS6.9 ** NFS 是Network File System的缩写,即网络文...
    JSON_NULL阅读 13,100评论 1 4
  • 一、服务器配置: 安装软件: yum -y install nfs-utils rpcbind 更改配置文件: v...
    济夏阅读 2,865评论 0 51
  • 一、NFS简介 NFS是Network File System的缩写,即网络文件系统。一种使用于分散式文件协定,有...
    SkTj阅读 637评论 0 0
  • nfs大纲 1.nfs是干什么1.什么是NFS,NFS是Network File System的缩写及网络文件系统...
    优秀砖阅读 3,297评论 0 0
  • 楼下小区里垃圾箱边上的缝隙里,一窝小猫看着它们在早春里出生,嗷嗷待哺。好久不见,本以为它们都已经夭折,未料前几天竟...
    艾冰台阅读 1,978评论 2 5