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

文章目录

整体功能简介

云备份功能

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


实现目标

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


服务器程序负责功能细分

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

相关推荐
小O_好好学11 分钟前
CentOS 7文件系统
linux·运维·centos
x晕x1 小时前
Linux dlsym符号查找疑惑分析
linux·运维·服务器
活跃的煤矿打工人1 小时前
【星海saul随笔】Ubuntu基础知识
linux·运维·ubuntu
fasewer2 小时前
第五章 linux实战-挖矿 二
linux·运维·服务器
楚灵魈3 小时前
[Linux]从零开始的网站搭建教程
linux·运维·服务器
小小不董3 小时前
《Linux从小白到高手》理论篇:深入理解Linux的网络管理
linux·运维·服务器·数据库·php·dba
这可就有点麻烦了3 小时前
强化学习笔记之【TD3算法】
linux·笔记·算法·机器学习
DY009J3 小时前
深度探索Kali Linux的精髓与实践应用
linux·运维·服务器
程序员-珍4 小时前
虚拟机ip突然看不了了
linux·网络·网络协议·tcp/ip·centos
码农小白4 小时前
linux驱动:(22)中断节点和中断函数
linux·运维·服务器