0x00 事件

最近买了一台 500G 储存的 VPS,但是与国内的连接、下载速度都比较差,于是想了个「曲线救国」的方式。

另外有一台 GIA 与 VPS-500G 通信比较理想,同时 GIA 与国内通信也比较理想,所以想出这个通过 NFS 服务将 VPS-500G 的存储挂载到 GIA,从而达到「曲线救国」的效果。

下面来验证这种方式是否可行。

0x01 NFS 部署

1、VPS-500G 为 Debian 系统,作为 NFS Server

# 安装 nfs
$ apt-get install nfs-common nfs-kernel-server
# 创建共享目录
$ mkdir /data/nfs-dir
# 目录授权
$ chmod a+w /data/nfs-dir
# 编辑配置文件,ip 地址对应允许被挂在的服务器 ip
$ vi /etc/exports
/data/nfs-dir 192.168.1.2(rw,sync)
# 启动服务
$ service nfs-kernel-server start
# 查看服务状态
$ service nfs-kernel-server status

2、GIA 为 CentOS 7 系统,作为 NFS Client

# 安装挂载工具
$ yum -y install nfs-utils rpcbind
$ systemctl start rpcbind
$ systemctl enable rpcbind
# 查看目标服务器是否有可挂载目录
$ showmount -e 192.168.1.1
Export list for 192.168.1.1:
/data/nfs-dir 192.168.1.2
# 创建挂载目录
$ mkdir /data/nfs-dir
# 将目标服务器目录挂载到本机
$ mount -t nfs 192.168.1.1:/data/nfs-dir /data/nfs-dir/
# 查看一下磁盘挂载信息
$ df -h
……
192.168.1.1:/data/nfs-dir 458G 4.6G 430G 2% /data/dir

在 GIA 中的 nfs-dir 目录创建文件,在 VPS-500 的 nfs-dir 下能看到同文件,说明成功挂载上去了。

0x02 测试

验证下开始的设想。

1、首先看 VPS-500G 的下载速度:

# 在 VPS-500G 的 /data/nfs-dir 下放了个镜像文件
$ ls -lh
total 919M
-rw-r--r-- 1 nobody nogroup 918M Aug 19 03:31 CentOS-7-x86_64-Minimal-1810.iso
# 启动一个简单的文件服务器
$ python -mSimpleHTTPServer

浏览器查看文件

本地电脑上使用多线程下载此镜像测试速度:

$ axel -n 20 http://192.168.1.1:8000/CentOS-7-x86_64-Minimal-1810.iso

速度不理想。

2、再看看「曲线救国」 GIA 的下载速度

# 因为是共享目录,直接查看 GIA 的 /data/nfs-dir
$ ls -lh
total 919M
-rw-r--r-- 1 nobody nogroup 918M Aug 19 03:31 CentOS-7-x86_64-Minimal-1810.iso
# 启动一个简单的文件服务器
$ python -mSimpleHTTPServer

本地下载 GIA 里的镜像:

$ axel -n 20 http://192.168.1.2:8000/CentOS-7-x86_64-Minimal-1810.iso

同一个文件,通过设想的 NFS 的方式,下载速度上得到了很大的提升。

可以愉快地使用这台大盘鸡了。

NFS Debian 服务器,CentOS 客户端的更多相关文章

  1. ubuntu16。04LST配置nfs实现服务器和客户端共享文件

    NFS(network file system)网络文件系统可以实现不同主机与操作系统之间通过网络进行资源共享,此时一台PC充当服务器,若干台PC充当那客户端,具体如何配置请跟随我的步骤来做 1 下载 ...

  2. linux之 NFS服务器与客户端的安装与配置

    今天实验室需要搭建NAS,我负责的是NFS的安装与配置,现将整理的文档分享一下: 参考一:Linux下rpm 安装包方式安装 http://linux.chinaunix.net/techdoc/be ...

  3. Centos安装TFTP/NFS/PXE服务器网络引导安装系统

    客户端网卡要求支持以PXE启动,配置都在服务端进行,通过PXE网络启动安装系统流程: 客户端以PXE启动发送DHCP请求: 服务器DHCP应答,包括客户端的IP地址,引导文件所在TFTP服务器: 客户 ...

  4. CentOS 6.9/Ubuntu 16.04搭建OpenVPN服务器以及客户端的使用

    说明: 1.发现一个很奇怪的现象,CentOS和Ubuntu有着对用户不同的管理理念,比如CentOS中安装一切软件都是以root优先(su -),而Ubuntu则以当前用户优先,安装软件以sudo开 ...

  5. nfs服务器与客户端配置

    服务器端(PC)配置 ubuntu提供两种NFS服务器:一种以内核模块形式提供,nfs-kernel-server:一种以用户空间程序形式提供,nfs-user-server;两种择一即可.1. 安装 ...

  6. Ubuntu 18.04 LTS上安装NFS服务器和客户端

    NFS是基于UDP/IP协议的应用,其实现主要是采用远程过程调用RPC机制,RPC提供了一组与机器.操作系统以及低层传送协议无关的存取远程文件的操作.RPC采用了XDR的支持.XDR是一种与机器无关的 ...

  7. 时间服务器: NTP 服务器及客户端搭建

    时间服务器: NTP 服务器及客户端搭建 一. NTP 服务器的安装与设定 1. NTP 服务器的安装与设定前言 2. 所需软件与软件结构 3. 主要配置文件 ntp.conf 的处理 4. NTP ...

  8. CentOS7搭建NTP服务器及客户端同步时间

    一.服务器配置 1.查看服务器.客户端操作系统版本 [root@hadoop101 ~]# cat /etc/redhat-release CentOS Linux release (Core) 2. ...

  9. 阿里云服务器centos下安装配置svn服务器

      阿里云服务器centos下安装配置svn服务器 1.安装svn服务器端yum install subversion      从镜像下载安装svn服务器端中间会提示是否ok,输入y,确认安装成功提 ...

随机推荐

  1. javascript之正则表达式(二)

    js正则贪婪模式与非贪婪模式 类似于贪吃蛇游戏,越吃越长.而贪婪模式就是尽可能多的匹配. 默认是贪婪模式      (尽可能多的匹配)                           例子: va ...

  2. javascript之正则表达式(一)

    正则表达式:定义一套规则,检查字符串的用的.换句话说,就是记录文本规则的代码.适用于进行文字匹配工具,例如:(1)测试字符串的某个模式(2)替换文本(3)根据模式匹配从字符串中提取一个子字符串.语法: ...

  3. 【投票】你心目中的Excel催化剂价值有多大(附主流国内外收费插件供参考)?

    Excel催化剂开发过程中,在前期功能中,也会参考着其他的插件的功能,也略略收集了一些其他插件的功能及价格信息,在当今免费等于鸡肋的时代,为了让大家不受这个免费的错觉影响,不妨以另一种角度去假设一翻, ...

  4. Mysql 时间相关

    -- 当前时间SELECT NOW(), SYSDATE(), CURRENT_TIMESTAMP(), LOCALTIME(), LOCALTIMESTAMP();SELECT CURDATE(), ...

  5. [leetcode] #112 Path Sum (easy)

    原题链接 题意: 给定一个值,求出从树顶到某个叶(没有子节点)有没有一条路径等于该值. 思路: DFS Runtime: 4 ms, faster than 100.00% of C++ class ...

  6. [leetcode] 392. Is Subsequence (Medium)

    原题 判断子序列 /** * @param {string} s * @param {string} t * @return {boolean} */ var isSubsequence = func ...

  7. DAX 第三篇:过滤器函数

    过滤器函数允许你操纵筛选上下文以创建动态的计算. 一,筛选上下文的构成 DAX中的筛选上下文由三部分构成:交叉过滤构成的过滤,查询上下文中每行的列值构成的过滤,外部切片器构成的显式过滤. 1,交叉过滤 ...

  8. 【MySQL】(七)事务

    我的个人博客 http://www.haxianhe.com/ 数据库系统引入事务的主要目的:事务会把数据库从一种状态转换为另一种一致状态.在数据库提交工作时,可以确保要么所有修改都已经保存了,要么所 ...

  9. C# Winform程序如何使用ClickOnce发布并自动升级(图解)

    有不少朋友问到C#Winform程序怎么样配置升级,怎么样打包,怎么样发布的,在这里我解释一下打包和发布关于打包的大家可以看我的文章C# winform程序怎么打包成安装项目(图解)其实打包是打包,发 ...

  10. python中的元类(metaclass)

    认识python中元类的准备工作. 1,首先需要明白一个概念就是python中一切皆为对象. input: class Trick(object): pass ') print type(1234) ...