CentOS 7 网络磁盘挂载到本地 并测试传输速度
本文中的配置只做测试使用,正式环境中考虑到安全,请自行结合网上介绍的配置细节完善配置内容。
首先明确两个概念,服务器和客户端(本地),我们要做的是将服务端的硬盘上的/home/liuyx 目录挂载到本地的/liuyx下。
1、在服务端和客户端分别安装NFS以及其rpc支撑
yum install -y rpcbind nfs-utils
2、服务端配置可映射目录
vim /etc/exports
打开是个空文件,在其中添加一行,并保存,内容如下
/home/liuyx 123.123.123.*(rw,no_root_squash,sync)
将服务端的/home/liuyx目录开放给后边这个ip,* 表示任意,后边的内容依次代表指定可读写、客户端拥有root权限,同步,具体配置本篇不做详解,请自行搜索。
3、开放服务端以下端口
关于需要开放的端口分析过程(关键两个命令:netstat -an |grep 10.12.13.11,tcpdump -i eht0 udp port 111 and dst host 10.12.13.11):
http://blog.csdn.net/fhqsse220/article/details/45668057
4、启动服务端NFS服务
systemctl start rpcbind.service
systemctl start nfs.service
#设置开机启动
systemctl enable rpcbind.service
systemctl enable nfs.service
————————————————————————服务端完毕————————————————————————————
5、客户端新建目录/liuyx
mkdir /liuyx
6、客户端挂载目录
此处可以先用命令查询一下
showmount -e 123.123.123.123
查询如果失败,可能会报:clnt_create: RPC: Program not registered,解决方法可以参考:http://sxct168.blog.51cto.com/824373/1654069/
不过这个失败并不影响我们使用,可以忽略。
挂载命令:
mount -t nfs 123.123.123.123:/home/liuyx /liuyx
————————————————挂载完毕————————————————————————————————————
7、测试读写速度
写入:
time dd if=/dev/zero of=/liuyx/testdd.dbf bs=8k count=1000000 conv=fsync
从一个空位置读数据,写到目标地址,每一块8M大小,写50次
读出:
time dd if=/liuyx/testdd.dbf of=/dev/null bs=8k count=1000000 conv=fsync
从一个位置读文件,输出到一个空位置,conv=fsync 表示执行完再刷到硬盘,不加会读到内存就输出结果了,并不执行sync
从空位置读或者写,可以减少对测试的影响。
注意:
对于以上命令读取文件,默认的系统配置是会进行缓存,
可以使用以下命令证实:
free -m
也就是说第一次读文件是从磁盘读到内存,第二次则直接去内存的缓存区拿文件,所以我们可以先把缓存策略设为不缓存
cat /proc/sys/vm/drop_caches
echo > /proc/sys/vm/drop_caches
测试完成后记得再设回来,即上边cat命令显示的值
echo > /proc/sys/vm/drop_caches
读也可以这样,需要用到hdparm这个软件,并且只支持本地,就本地测试来说,相对比较省事,不用频繁的去清理缓存:
hdparm -t /dev/sda
8、开机自动挂载
#2017年11月22日 追加:经过试验(CentOS6.4和CentOS7) 以下这段用不到,只需修改fstab文件即可
#vim /etc/rc.local
#mount -t nfs -o nolock 123.123.123.123:/home/liuyx /liuyx vim /etc/fstab
123.123.123.123:/home/liuyx /liuyx nfs defaults
9、取消挂载
测试完了,我们还原线程,除了删掉测试文件、配置改回去,重启相关服务外,剩下的就是取消挂载,因为可能会遇到问题,这里单独说一下
取消挂载可能遇到其他用户正在使用该挂载目录的情况:
#umount /testspeed
umount: /testspeed: device is busy.
(In some cases useful info about processes that use
the device is found by lsof() or fuser())
以下转自(http://blog.csdn.net/intel80586/article/details/7682522):
看看有哪些用户在用
[root@localhost /]#fuser -cu /testspeed
/testspeed: 15060x(root)
其次向进程发出SIGKILL信号
[root@localhost /]# fuser -ck /mnt
/mnt: 15060x
确认
[root@localhost /]# fuser -c /mnt
附一个自己写的shell脚本:
取消挂载、挂载远程、设置开机挂载、清空被挂载盘、复制一个远程位置到挂载目录。
链接:http://pan.baidu.com/s/1c2EpvS8 密码:ta8w
CentOS 7 网络磁盘挂载到本地 并测试传输速度的更多相关文章
- centos 7中磁盘挂载重启后挂载失效
在centos 7磁盘挂载成功后,关机重启,挂载磁盘失效,需要重新挂载,不用重新挂载的开机挂载方法如下: 1.先检验要挂载的磁盘是否已被挂载,有的话先卸除 2.修改 /etc/fstab 文件 ,最 ...
- centos配置网络yum源 和本地yum源
一,网络yum源 1.备份 yum文件 cd /etc/ cp -r yum.repos.d yum.repos.d.bak 2.在系统联网的情况下执行下面命令下载 wget -O /etc/yu ...
- linux下通过NFS将远程磁盘mount到本地
最近由于项目原因需要和其他两家公司对接,需要取对方服务器中的图像数据,原本约定是三方都通过http协议来进行通讯,奈何对接方不配合,说文件就在他们服务器放着,怎么取他们不管.所以采取将对方服务器磁盘挂 ...
- Linux学习之CentOS(十二)------磁盘管理之 磁盘的分区、格式化、挂载(转)
磁盘分区.格式化.挂载磁盘分区 新增分区 查询分区 删除分区磁盘格式化 mkfs mke2fs磁盘挂载与卸载 mount umount 磁盘的分区.格式化.挂 ...
- CentOS 7安装SSHFS 实现远程主机目录 挂载为本地目录
安装sshfs 官方下载地址 https://github.com/libfuse/sshfs/releases 首先,我们需要安装sshfs软件.sshfs是一个基于SSH文件传输协议的文件系统客户 ...
- Windows平台将远程服务器的目录挂载为本地磁盘
我们在设置数据库自动备份时,为了数据的安全往往需要直接将数据备份到远程服务器上.在Linux可以通过NFS挂载来实现,在Windows平台可以直接通过net use+subst来实现将远程服务器的目录 ...
- linux(CentOS)磁盘挂载数据盘
linux(CentOS)磁盘挂载数据盘:第一步:查看是否存在需要挂载的磁盘: sudo fdisk -l 第二步:为需要挂载的磁盘创建分区: sudo fdisk /dev/vdb 执行中:依次选择 ...
- xenserver添加磁盘后挂载为本地存储库并且删除
方法一: 1.1:查看磁盘列表 fdisk -l [root@xenserver ~]# fdisk -l Disk /dev/sdb: 7999.4 GB, 7999376588800 bytes, ...
- Centos开机自己主动挂载windows中的ntfs磁盘
装了windows和centos双系统后,发如今centos中无法进入windows中的磁盘,更不要说查看磁盘里的文件了! 原来默认情况下.centos不支持Widows NTFS硬盘分区读写,要想把 ...
随机推荐
- 【centOS】centos7 查看和关闭防火墙
查看防火墙状态 firewall-cmd --state running代表防火墙正在运行 停止firewall systemctl stop firewalld.service 禁止firewall ...
- .NET:“事务、并发、并发问题、事务隔离级别、锁”小议,重点介绍:“事务隔离级别"如何影响 “锁”?
备注 我们知道事务的重要性,我们同样知道系统会出现并发,而且,一直在准求高并发,但是多数新手(包括我自己)经常忽略并发问题(更新丢失.脏读.不可重复读.幻读),如何应对并发问题呢?和线程并发控制一样, ...
- 关于OpenLDAPAdmin管理页面提示“This base cannot be created with PLA“问题. Strong Authentication Required问题
经过查询,最终总结和处理如下: 1.首先需要在/etc/openldap/目录下,创建一个base.ldif文件,如下所示: 2.在base.ldif文件中,写入如下信息,为创建初始化根节点做准备工作 ...
- Java JDBC 基础知识
一.JDBC常用接口.类介绍 JDBC提供对独立于数据库统一的API,用以执行SQL命令.API常用的类.接口如下: DriverManager 管理JDBC驱动的服务类,主要通过它获取Connect ...
- bat薪酬
三大互联网巨头公司,百度腾讯跟阿里如何划分级别?薪资待遇又有多少?除非身居其位,否则很难探知,但是等你到那个位置知道了,却又不能说,至少不能在公 开场合谈论.接下来就为大家揭秘,百度.阿里与腾讯内部的 ...
- 常用数学函数篇abs acos asin atan ceil cos exp frexp ldexp log pow sin sinh sqrt tan tanh
abs(计算整型数的绝对值) 相关函数 labs, fabs 表头文件 #include<stdlib.h> 定义函数 int abs (int j) 函数说明 abs()用来计算参数j的 ...
- Guava Files 源码分析(一)
Files中的工厂 Files类中对InputStream, OutputStream以及Reader,Writer的操作封装了抽象工厂模式,抽象工厂是InputSupplier与OutputSupp ...
- Mongodb安全认证及Java调用
Mongodb安全认证在单实例和副本集两种情况下不太一样,单实例相对简单,只要在启动时加上 --auth参数即可,但副本集则需要keyfile. 一.单实例 1.启动服务(先不要加auth参数) 2. ...
- Objective-C:内存管理的小结
内存管理: 1.OC的对象都是分配在堆里的 Perosn *person = [[Person alloc]init]; Person *person //指针类型的 ...
- otl翻译(11) -- OTL的迭代器
OTL stream read iterator 这个类是一个像传统的JDBC中的getter()操作一样扩展了OTL流的模板类.它现在还不支持UNICODE字符集.它对otl_refcur_stre ...