一种局域网机器定时备份方案
来源:互联网 发布:下载淘宝软件并安装 编辑:程序博客网 时间:2024/06/06 01:55
写这个问题,是因为我们都知道数据很重要,保证数据安全的唯一办法,就是备份。前几天发现我们使用的gitlab服务器居然没有备份,顿时感觉很惊悚,赶紧修复了这个问题。将思路写在这,供大家参考。
首先,在这个各大厂商提供了无数互联网服务的今天,我们的第一选择应该是公有云。所以,像gitlab这么重要的代码服务,可以直接布在公有云上。当然,更直接的办法是使用已有的代码管理服务,类似于github、码云这样的工具。使用这样的服务比较省心,代码版本管理、文档甚至项目管理等一应俱全,不会存在丢失文件的问题。
那么,为什么还要自己去搭建私有服务器呢?很简单,为了安全,这个安全指的是隐私方面。对于企业用户,一般不希望将核心的服务丢在公有云上。不管公有云宣称自己是如何来保护用户隐私的,只要你将东西放在人家的服务器上,就一定存在安全隐患。所以,很多公司,仍然需要搭建自己的服务器,自己的代码管理服务等。尽管,自己搭的服务未必有公有云靠谱,但这样不是心安么?
所以,我们还是回到,局域网内机器怎么保证数据安全(不丢失)的问题上。答案也很简单,备份,将重要文件备份到多台机器上。
怎么在多台机器上备份文件呢?
自己写脚本,通过scp命令来做也是可以的。
一个更简单的方案,是通过rsync命令来实现。rsync即remote sync,远程同步工具,可以在同一机器或者不同机器上同步目录或文件,支持增量同步,传输效率较高。可以使用scp、ssh和socket连接,支持加密来保证传输安全。
将要同步命令添加到linux定时任务中,就可以实现定时备份了。下面是一个gitlab备份示例:
0 2 * * * rsync -avz --rsh="sshpass -p password ssh -l username -pPORT" /directory/to/backup/ 0.0.0.0:/backup/0 1 * * * gitlab-rake gitlab:backup:create其中,gitlab-rake gitlab:backup:create是在每天1点对gitlab代码备份,rsync在每天2点将/directory/to/backup同步到机器0.0.0.0的/backup目录下,使用ssh传输。
当然,这只是一种可行方案。这种办法也有一些问题,例如rsync备份不能做到实时,gitlab每次都将所有代码备份一遍,太浪费了。
继续关注更好的机器备份办法。
- 一种局域网机器定时备份方案
- VPS上使用DropBox定时备份方案
- ISCSI+单机同步软件构成局域网数据备份方案
- 利用最小堆结构来设计一种定时方案
- Centos网站服务器使用DropBox定时备份方案
- Centos网站服务器使用DropBox定时备份方案
- Linux下oracle定时备份 ftp上传到指定机器
- sqlserver远程备份到另一台电脑(局域网、定时任务)
- MYSQL做BCV备份数据库,每天定时自动备份方案与实现
- MySQL数据库定时备份Shell脚本并备份至其它机器方法
- 定时将机器A里某mysql数据库备份并传送到机器B
- 备份方案
- 局域网自动备份删除
- 局域网自动备份删除
- 局域网异机备份
- xcopy Windows局域网备份
- 备份Mysql数据库时,报:Couldn't execute 'show fields from的一种问题解决方案
- 如何每天定时将服务器中SQL SERVER 2000数据库备份到局域网中另一台工作站上
- [原创]《穷人的小孩难成功-走出人生负面循环》视野的继承与影
- JS中的prototype
- 深入了解Java之三(集合方面)
- 把WebService发布到IIS网站下(IIS 7)
- leetcode之Binary Tree Level Order Traversal
- 一种局域网机器定时备份方案
- Apache+PHP+MySQL三部曲之:Apache2.4安装详解 - 20160123最新更新
- 有关(int&)和(int)的区别
- linux下解压命令大全
- KMP算法--字符串匹配算法思路
- 如何将项目同时托管到 Git@OSC 和 Github
- leetcode之Path Sum
- 使用spring @Scheduled注解执行定时任务
- static的用法