linux nfs 配置_centos7 NFS 配置

NFS是什么

最近项目上有这么个需求,客户端上传文件的时候,想把文件上传到另外一台服务器。

本来想用ftp的,觉得太麻烦,就各种查资料,请教别人,后来发现,NFS这个东东真不错。

NFS(网络文件系统)服务可以将远程Linux系统上的文件共享资源挂载到本地主机的目录上,从而使得本地主机(Linux客户端)基于TCP/IP协议,像使用本地主机上的资源那样读写远程Linux系统上的共享文件。

简单来说就是,把远程服务器上的一个目录映射到本地,就像操作本地目录一下操作远程目录,这个完全符合我的需求。

NFS分为服务器端和客户端,远程服务器是服务端,本地服务器是客户端,我们现在就开始配置吧。

服务端配置

安装NFS

查看是否安装了nfs,输入命令:rpm -qa |grep nfs1411750e079a34d20e53b23b3d7ad8f8.png
没有结果,说明没有安装。

输入安装命令:yum install nfs-utils416071d85a6f4c0c81cd4392e7bf59e2.png
一路选择yes,直到安装完成。

再次查看,已经安装好了。2e45582a2235bc6da20551cf69367c3c.png

建立共享目录并设置权限

在/usr/local目录下建立upload目录为共享目录。795864fc660a87fd7b023123c4fc04fa.pngmkdir uploadace788a705d1562d5b702b45a5c2b401.png

设置足够的权限确保其他用户也有写入权限

(因为下面我们把客户端映射为匿名用户了):

chmod -Rf 777 upload83cc1545f5ef6ef22d50888562efbb2b.png


创建一个文件(测试用,非必要)
echo “welcome to install nfs” > readmebdc450dc8a52adf42c01d3ae3219943e.png

配置文件

NFS服务程序的配置文件为 /etc/exports,默认情况下里面没有任何内容。

我们可以按照“共享目录的路径 允许访问的NFS客户端(共享权限参数)”的格式,定义要共享的目录与相应的权限。

参数使用表格如下:339ba86899df81c569c24c5dbbdfa284.png

输入命令:vi /etc/exports8008a28ada5cafb22c70a5f74435e76f.png


加入 

/usr/local/upload 10.145.1.*(rw,sync,root_squash)

注意,NFS客户端地址与权限之间没有空格。1fbb0d9425c47ca4886b419edc800e00.png

启动NFS服务

启动NFS服务之前,还需要顺带重启并启用rpcbind服务程序,并将这两个服务一并加入开机启动项中。

输入命令:

systemctl restart rpcbindsystemctl enable rpcbindsystemctl start nfs-serversystemctl enable nfs-server

ceded498547c3b8ae854c3ccf3425d63.png

设置防火墙

firewall-cmd --permanent --add-service=nfs
firewall-cmd --permanent --add-service=mountd
firewall-cmd --permanent --add-service=rpc-bind
firewall-cmd --reload

663513db77b06898237c5ffeab229175.png
如果不设置防火墙,客户端可能访问不到服务器的nfs。

查看是否共享成功

showmount -e localhost51ec312b564cef5a9bd9d81c0c4ff19a.png
至此,服务器端配置成功。

客户端配置

安装NFS

同样需要检查安装nfs,步骤和服务器一样。cdce34813e24c1115b7f9a29173b2950.png

查询NFS服务器的远程共享信息

命令格式为“共享的目录名称 允许使用客户端地址”。3514ee7f353140bddcaf9285f4d4905d.pngshowmount -e 10.145.1.3688ac058faa752310570881474a016720.png
表示客户端和服务器端连接没有问题。

建立共享目录

可以是任何目录,请按需创建。e65cd77e62665303c1b6de672909fc0a.pngmkdir upload09ab96b7a8044d9ee469ae948dd2224b.png

挂载服务器目录

使用mount命令并结合-t参数,指定要挂载的文件系统的类型,并在命令后面写上服务器的IP地址、服务器上的共享目录以及要挂载到本地系统(即客户端)的目录。

命令格式:mount -t nfs 服务器的IP:/服务器上的共享目录 本地的挂载目录

输入命令:

mount -t nfs 10.145.1.36:/usr/local/upload /usr/local/upload

d0491f26c02a25f088709907bc433edb.png
挂载完成后,进入upload 目录,看到了服务器上创建的readme文件,说明挂载成功!5b3a6f14c743f57ddd82165ee91baf94.png


客户端新建一个文件readme2
echo “create by client” > readme2f1ccc3b33e3b198c8043232d5d8efbfc.png


在服务器端查看,写入成功!61b78ed96aa972cc3513086f12b4604c.png
至此,配置完成了!

一劳永逸

如果希望NFS文件共享服务能一直有效,则需要将其写入到fstab文件中:

vi /etc/fstabd653b0949e848b273fd3842102d20670.png


10.145.1.36:/usr/local/upload /usr/local/upload nfs defaults 0 08daf5a3b0d26cf448ee591f7f13ba621.png
这样就算服务器重启,也不会丢失配置了。

总结

Linux系统之间,共享目录文件用NFS非常方便,有以下优缺点:

优点:服务端的同一块磁盘可以挂载到不同的客户端,实现文件的共享,可以扩充客户端的存储空间。


缺点:严重依赖网络,当网络出现问题,客户端挂载的网络磁盘会无法使用。

最后,搭建NFS系统,最好是在同一局域网内,还要注意防火墙的设置。

8201ee8b44daf6e4db7ea30c1702a905.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/262009.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux命令 waf,常用waf命令

常用waf命令一、配置及编译:$ ./waf configure [option]$ ./waf帮助: $ ./waf --help配置调试,优化调试:$ ./waf -d configure: debug,optimized改变flag: $ CXXFLAGS"-O3" ./waf configure或者: $CXXg-…

Windows Server 2003 导入Java生成的证书,保证iis对CAS的访问

开始 -- 运行-- mmc 打开了一个控制台程序 菜单 --> 文件 --> 添加/删除管理单元 (Ctrl M) 打开界面: 点击 "添加" 按钮,打开界面后选择 "证书",继续点此界面的添加,完成添加证书管理的操作 中间需要选择账户,我就选择的是 我的用户账户, 也可…

shell命令tree

在Windwows下很喜欢tree命令,在CenntOS下也有这条命令,在网上找到了源代码和一段简单的脚本, 完整的tree源代码可以在这里下载: ftp://mama.indstate.edu/linux/tree/ 简易的tree脚本如下: #!/bin/sh ################…

ulimit

ulimit用于shell启动进程所占用的资源. ulimit [-acdfHlmnpsStvw] [size] -H 设置硬资源限制.-S 设置软资源限制.-a 显示当前所有的资源限制.-c size:设置core文件的最大值.单位:blocks-d size:设置数据段的最大值.单位:kbytes-f size:设置创建文件的最大值.单位:blocks-l size…

命令点亮硬盘灯_macOS下移动硬盘无法挂载且硬盘灯一直闪烁的解决方法

致力于成为您终身的苹果管家点击上方蓝字 关注我们小编近日遇到一个诡异的问题,小编的移动硬盘不定期的会自动断开,提示未正常拔出,实际上一直没有动过连接线,然后硬盘一直处于未加载的状态,硬盘灯也一直闪烁不停。通…

linux 挂载多余空间,linux 空间不够,磁盘挂载

1.给新的磁盘分区fdisk /dev/sdb2.格式化新的磁盘分区mkfs.ext4 /dev/sdb13挂载磁盘到sdb1mount /dev/sdb1 /mnt/sdb1/4系统自动挂载vim /etc/fstab/dev/mapper/VolGroup-lv_root / ext4 defaults 1 1UUID5714863f-0d34-4269-8c9f-59d48af70cb…

常用正则表达式,来自新浪微博的js

STK.register("common.setting.rule", function(a) { var b {}; b.isEmpty function(a) { return /^\s*$/g.test(a.replace(/^\s|\s$/g, "")) }; b.isNumber function(a) { return /^[\-]?\d(\.\d)?$/.test(a) }; b.isName function(a) { return /^[…

转:VC9(VC2008.net) 编译安装 boost 1.39 库

简介Boost库是一个经过千锤百炼、可移植、提供源代码的C库,,作为标准库的后备,是C 标准化进程的发动机之一。 Boost库由C标准委员会库工作组成员发起,其中有些内容有望成为下一代C标准库内容。在C社区中影响甚大,其成 …

如何在跑cts的时候生成log_为什么要买奥铃CTS?听听用户的评价

【原创首发】本文系商车邦原创文章文/芦齐 【商车邦导读】沧州用户的一致好评并非偶然,而是奥铃在轻卡领域深耕细作的必然。初次来到沧州黄骅,就能感受到这座海鲜小城浓浓的“海”味。海鲜曾经是内陆稀有的食材,如今随着人民生活水平的提高&a…

linux要求关闭httpd服务,Apache2.4.4的安装及实现service和chkconfig系统控制httpd开启关闭...

Apache2.4.4的安装及实现service和chkconfig系统控制httpd开启关闭不废话了,根据apache2.4.4的手册我们知道还要有三个准备包,如下: apr-1.4.6.tar.bz2 apr-uti-1.5.1.tar.bz2和pcre-8.32.tar.bz2安装apr# tar -jxvf apr-1.4.6.tar.bz2# cd…

帮助你生成响应式布局的CSS模板 - xyCSS

日期:2013-1-31 来源:GBin1.com 在线演示 在前面的文章中我们介绍了响应式的网格profound grid,用来帮助你开发固定或者响应式的流动布局设计,如果你希望使用纯CSS生成响应式的布局的话,相信xyCSS将会是一个不错的选择…

WPF中设置ListView的Items颜色交替显示

2008/02/28 17:32i当ListView绑定数据源后,这个效果让我无从下手, 这个问题一直困扰着我,后来我在CSDN上发贴求助,问题终于得以解决,这是一位大大给的回复: 以下各节提供了三种方法,用于创建各行的 Background 颜色具有交替效果的 ListView。该示例还论述用于在添加…

python字符串内建函数_python字符串内建函数

操作符描述实例字符串连接 a b 输出结果: HelloPython * 重复输出字符串 a*2 输出结果:HelloHello [] 通过索引获取字符串中字符 a[1] 输出结果 e [ : ] 截取字符串中的一部分 a[1:4] 输出结果ell in 成员运算符 - 如果字符串中包含给定的字符返回 True…

Facebook开源动画库 POP-POPBasicAnimation运用

动画在APP开发过程中还是经常出现,将花几天的时间对Facebook开源动画库 POP进行简单的学习;本文主要针对的是POPBasicAnimation运用;实例源代码已经上传至gitHub,地址:https://github.com/wujunyang/facebookPopTest Pop Github :…

linux c显示日期,Linux C判断日期格式是否合法

#include // strlen() , strncpy()#include // isdigit()#include // atoi()#include /*有效格式2013-01-01 01:01:012013/11/11 11:11:11*/int main(){int isValidDate(const char* str){// 检查日期长度const int LEN 19; // 有效格式长度都为19int len strlen(str);if(LEN…

JSP中Listener和Timer的运用

其他的JSP文章: 在JSP中使用Bean自动属性填充机制 JSP列出服务器环境变量 JSP的errorPage指令异常转向错误页的实现机制及应用 Jsp利用404错误页进行URL重写 有的时候需要在JSP运行时,定时执行一些程序,比如说统计流量、更新缓存数据等,通常要…

第05篇:C#星夜拾遗之使用数据库

前言C#常用来开发数据管理类软件,所以学会在C#程序中使用数据库是非常有必要的。目前微软的两个常用数据库软件分别是Access和Sql Server。读者可以自行了解这两种数据库的优劣点,笔者不做过多说明。这两种数据库也是在做开发时最常用的。C#访问数据库是…

linux sed删除指定行_shell三剑客之sed!

背景sed(Stream Editor 流编辑器),作为三剑客的一份子,主要的功能有增删改查。为什么称之为“流”编辑器呢?大家知道:在Linux文件系统中,一切都可以作为文件来处理。比如:配置文件、设备文件、日志等等。se…

Hadoop源码解析之: TextInputFormat如何处理跨split的行

Hadoop源码解析之: TextInputFormat如何处理跨split的行转载于:https://blog.51cto.com/taikongren/1742425

linux cpu使用率1200%,linux下用top命令查看cpu利用率超过100%

今天跑了一个非常耗时的批量插入操作。。通过top命令查看cpu以及内存的使用的时候,cpu的时候查过了120%。。以前没注意。。通过在top的情况下按大键盘的1,查看的cpu的核数为4核。通过网上查找,发现top命令显示的是你的程序占用的cpu的总数&am…