云备份——初步认识及环境搭建

文章目录

整体功能简介

云备份功能

自动将本地计算机上指定文件夹中需要备份的文件上传备份到服务器中
并且能够通过浏览器进行查看并且下载,其中下载过程支持断点续传功能
而服务器也会对上传文件进行热点管理,将非热点文件进行压缩存储,节省磁盘空间


实现目标

这个云备份项目需要我们实现两端程序,其中包括部署在用户机的客户端程序,上传需要备份的文件
以及运行在服务器上的服务器端程序,实现备份文件的存储和管理,两端合作实现总体的自动云备份功能


服务器程序负责功能细分

1.支持对客户端文件上传功能
2.支持客户端文件备份列表查看功能
3.支持客户端文件下载功能(包含断点续传功能)
4. 热点文件管理功能(对长时间无访问的文件进行压缩存储)


服务端模块划分

1.数据管理模块
(管理的是 备份的文件信息,以便于随时访问)

2.网络通信模块
(实现与客户端的网络通信)

3.业务处理模块
(上传、列表、下载(断点续传) )

4.热点管理模块
(对长时间无访问文件进行压缩存储)


客户端功能细分

1.指定文件夹中的文件检测
(获取文件夹中有什么文件)

2.判断指定的文件是否需要备份
(新增的文件 或者 已经备份过 但是又修改了 ,上次上传后又修改过,但是已经间隔3秒钟都没有被修改)

  1. 将需要备份的文件上传备份到服务器上

客户端模块划分

1.数据管理模块(管理备份的文件)
2.文件检测模块(监控指定的文件夹)
3.文件备份模块(上传需要备份的文件数据)

环境搭建

gcc

输入 sudo yum install centos-release-scl-rh centos-release-scl 安装语言信息

最后显示 complete 表示完成安装


输入 sudo yum install devtoolset-7-gcc devtoolset-7-gcc-c++ 安装gcc和g++的编译器

显示 cpmplete,表示安装成功


输入 source /opt/rh/devtoolset-7/enable 加载配置文件(临时生效,下次加载就没了)

当配置后,输入 g++ -v 时,发现没有命令不存在的报错了


所以为了将加载配置文件 长期有效
输入 echo "source /opt/rh/devtoolset-7/enable" >> ~/.bashrc


安装 jsoncpp

输入 sudo yum install epel-release 安装一些源信息

有可能显示 nothing to do,表示安装失败 但是没关系 继续执行下面步骤即可


输入 sudo yum install jsoncpp-devel 安装isoncpp 开发包

显示 compete 表示 安装成功


输入 ls /usr/include/jsoncpp/json/

若输出 头文件,则说明 jsoncpp 安装成功


bundle库 与 httplib库安装

bundlle 为 数据压缩库


打开 github

先搜索 bundle ,然后 选择 r-lveh-archived/bundle


下载好后将其 放到桌面上


再次搜索 cpp-httplib ,然后 选择 yhirose/cpp-httplib


点击 dowload 进行下载


下载好后将其 放到桌面上


输入 rz ,将这两个文件 分别上传到linux上


输入 ls 指令 , 即可查看到 两个压缩包存在


输入 unzip bundle-master.zip 和 unzip cpp-httplib-master.zip 将两个压缩包进行解压


再次输入 ls 指令时, 即可查看到 bundle-master 和 cpp-httplib-master

相关推荐
lsnm7 分钟前
【LINUX网络】IP——网络层
linux·服务器·网络·c++·网络协议·tcp/ip
不掰手腕20 分钟前
在UnionTech OS Server 20 (统信UOS服务器版) 上离线安装PostgreSQL (pgsql) 数据库
linux·数据库·postgresql
Lynnxiaowen1 小时前
今天继续昨天的正则表达式进行学习
linux·运维·学习·正则表达式·云计算·bash
努力学习的小廉1 小时前
深入了解linux系统—— POSIX信号量
linux·运维·服务器
刘一说1 小时前
CentOS部署ELK Stack完整指南
linux·elk·centos
从零开始的ops生活1 小时前
【Day 50 】Linux-nginx反向代理与负载均衡
linux·nginx
IT成长日记1 小时前
【Linux基础】Linux系统配置IP详解:从入门到精通
linux·运维·tcp/ip·ip地址配置
夜无霄1 小时前
安卓逆向(一)Ubuntu环境配置
linux·运维·爬虫·ubuntu
田野里的雨1 小时前
manticore离线安装(Ubuntu )
linux·运维·服务器·全文检索
Angletank2 小时前
虚拟机中centos简单配置
linux·经验分享·程序人生·centos