Linux操作系统备份之一:使用LVM快照实现Linux操作系统数据的在线备份
这里我们讨论Linux操作系统的备份。
在生产环境,客户都会要求做全系统的数据备份,用于系统崩溃后的一种恢复手段。这其中就包含操作系统数据的备份恢复。
由于是生产环境,客户都会要求备份不中断业务,也就是在线备份。
今天我们介绍使用LVM快照实现Linux操作系统在线备份的一种方法。
使用LVM实现操作系统在线备份的简要原理是:LVM是Linux自带的卷管理软件,LVM支持快照,而Linux又支持将LVM卷作为操作系统分区,因此可以使用LVM的快照功能实现操作系统的在线备份。
1. 分区规划
上面的原理说到了,LVM快照备份操作系统,要求操作系统分区安装在LVM卷上,因此需要规划好分区。
我们按照简单的场景来举例:我们有一个300G的硬盘来安装操作系统,只做一个根分区,那么分区如下:

注意:
1)/boot,/swap不能创建在LVM卷上。不过/boot,/swap是不需要备份的,因此这个不影响备份。
2)根分区的大小需要包含快照占用的空间大小。后面在安装操作系统时候会用到。
2. 操作系统安装
操作系统安装需要将要备份的分区(这里是根分区)创建到LVM卷(LV)上面,其他的安装过程与普通安装是一样的。Suse的Autoyast工具就支持此特性,大家可以到网上搜索。
安装操作系统创建LVM卷的时候,注意两点:
1)VG中需要预留存放快照本身的空间,不能全部被占满。
2)快照所在的VG必须与被备份的LV相同,也就是说,快照存放的位置必须与被照卷存放在同一个VG上。否则快照会失败。
3. 操作系统快照备份
安装好了操作系统之后,就可以开始备份操作系统了。备份的方法为:
1)在操作系统运行时刻T1,执行快照。
2)开始对快照执行备份。备份的操作很简单,就是把快照mount起来,然后拷贝。
3)此时时间到了T2时刻,那么,快照会纪录T1~T2时间段内的数据变化,在拷贝快照的时候,快照会获取到最新的数据;若数据无变化,则拷贝快照相当于拷贝原始文件。

4)快照拷贝完了之后,操作系统备份就完成了。下次再需要备份,就重复这个操作。
4. 操作系统恢复
当备份后,恢复操作系统,与普通备份包恢复是没有差别的:将备份的分区解压到对应的分区下即可。
使用快照做操作系统的在线备份,能够比较好的保持文件的一致性,不会遗漏备份时间窗内改变的数据。但是缺点也比较明显,需要使用LVM来安装操作系统,操作起来相对复杂。大家使用前要结合自己的项目权衡。
转载:http://www.tektea.com/archives/2140.html
Linux操作系统备份之一:使用LVM快照实现Linux操作系统数据的在线备份的更多相关文章
- Linux操作系统备份之二:通过tar拷贝分区实现Linux操作数据的在线备份
http://www.tektea.com/archives/2163.html. 在<Linux操作系统备份之一:使用LVM快照实现Linux操作系统数据的在线备份>文章中,我们介绍了使 ...
- lvm快照备份数据库(Mysql5.7)
备份的目的 能够防止由于机械故障以及人为误操作带来的数据丢失,例如将数据库文件保存在了其它地方. 备份的分类 以操作过程中服务的可用性分: 冷备份:cold backup mysql服务关闭,mysq ...
- MySQL数据物理备份之lvm快照
使用lvm快照实现物理备份 优点: 几乎是热备(创建快照前把表上锁,创建完后立即释放) 支持所有存储引擎 备份速度快 无需使用昂贵的商业软件(它是操作系统级别的) 缺点: 可能需要跨部门协调(使用操作 ...
- 使用PL/SQL连接oracle数据库,并将数据进行导出备份和导入恢复
使用PL/SQL连接oracle数据库,并将数据进行导出备份和导入恢复 这种操作百度一搜一大片,今天整理以前做的项目时自己备份了一下数据库,试着将数据进行导出备份和导入恢复了一下:下面是操作过程: 1 ...
- mysql导出csv/sql/newTable/txt的方法,mysql的导入txt/sql方法...mysql备份恢复mysqlhotcopy、二进制日志binlog、直接备份文件、备份策略、灾难恢复.....................................................
mysql备份表结构和数据 方法一. Create table new_table_nam备份到新表:MYSQL不支持: Select * Into new_table_name from old_t ...
- MySQL基于LVM快照的备份恢复(临时)
目录1.数据库全备份2.准备LVM卷3.数据恢复到LVM卷4.基于LVM快照备份数据5.数据灾难恢复6.总结 写在前面:测试环境中已安装有mysql 5.5.36数据库,但数据目录没有存放在LVM卷, ...
- Mysql数据库备份—-通过LVM快照实现备份还原
一.实验环境 一台测试机:A(172.18.30.1) 操作系统:Centos7 操作对象数据库版本:mariadb-10.2 二.实现目的 从A机器(172.18.30.1)简单搭建数据库,创建测试 ...
- 使用LVM快照进行数据库备份
使用mysqldump备份时,如果存储引擎为MyISAM,则只能实现温备份,并需使用选项--lock-all-tables锁定所有表.如果存储引擎为InnoDB,则加上--single-transac ...
- LVM快照(snapshot)备份
转载自:http://wenku.baidu.com/link?url=cbioiMKsfrxlzrJmoUMaztbrTelkE0FQ8F9qUHX7sa9va-BkkL4amvzCCAKg2hBv ...
随机推荐
- db2代理和优化
DB2 的代理 (agent) 是位于 DB2 服务器中的服务于应用程序请求的一些进程或线程.当有外部应用程序连接至 DB2 实例提出访问请求时,DB2 的代理就会被激活去应答这些请求.一般 DB2 ...
- 转 Datatables中文API——基本参数
鉴于自己一直在使用datatables,发现这是个很不错的表格插件,但是好的东西都是英文的,所以我结合自己的使用经验,把官网的英文api做下简单的翻译,同时也希望大家把自己的使用经验一起分享出来,让我 ...
- C#项目打开/保存文件夹/指定类型文件,获取路径
C#项目打开/保存文件夹/指定类型文件,获取路径 转:http://q1q2q363.xiaoxiang.blog.163.com/blog/static/1106963682011722424325 ...
- jquery插件之拖拽
该插件乃本博客作者所写,目的在于提升作者的js能力,也给一些js菜鸟在使用插件时提供一些便利,老鸟就悠然地飞过吧. 此插件旨在实现目前较为流行的拖拽效果,您可以根据自己的实际需求来设置被拖拽元素是否可 ...
- 原生js获取Html元素的实际宽度高度
第一种情况就是宽高都写在样式表里,就比如#div1{width:120px;}.这中情况通过#div1.style.width拿不到宽度,而通过#div1.offsetWidth才可以获取到宽度. 第 ...
- android-数据存储之外部file存储(sdcard)
一.基础概要 1.说明: 1>应用程序运行用到的数据文件可以保存到sd卡中 2>文件类型:任意 3>数据保存路径: 路径1:/storage/sdcard/Android/data/ ...
- 使用dd制作文件夹的img
du -sh originfile //先看看需要制作的源文件夹大小,假如15M dd if=/dev/zero of=new_img.img bs=1024 count=20000 //生成20M的 ...
- python(1)
1.适配中文 #coding-utf-8 #coding: utf-8 2.格式化输出,此时的转义字符不能用\,只能用% print 'growth rate : %d \%' % 7 5 3 Tru ...
- mac自定义安装nodejs步骤
自定义安装的好处是nodejs相关的文件都在同一个文件夹下,且不与其它程序的文件混合在同一文件夹下. 1.下载node并解压缩:https://nodejs.org/dist/,选择tar.gz包下载 ...
- Spark在Yarn上运行Wordcount程序
前提条件 1.CDH安装spark服务 2.下载IntelliJ IDEA编写WorkCount程序 3.上传到spark集群执行 一.下载IntellJ IDEA编写Java程序 1.下载IDEA ...