这里我们讨论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操作系统数据的在线备份的更多相关文章

  1. Linux操作系统备份之二:通过tar拷贝分区实现Linux操作数据的在线备份

    http://www.tektea.com/archives/2163.html. 在<Linux操作系统备份之一:使用LVM快照实现Linux操作系统数据的在线备份>文章中,我们介绍了使 ...

  2. lvm快照备份数据库(Mysql5.7)

    备份的目的 能够防止由于机械故障以及人为误操作带来的数据丢失,例如将数据库文件保存在了其它地方. 备份的分类 以操作过程中服务的可用性分: 冷备份:cold backup mysql服务关闭,mysq ...

  3. MySQL数据物理备份之lvm快照

    使用lvm快照实现物理备份 优点: 几乎是热备(创建快照前把表上锁,创建完后立即释放) 支持所有存储引擎 备份速度快 无需使用昂贵的商业软件(它是操作系统级别的) 缺点: 可能需要跨部门协调(使用操作 ...

  4. 使用PL/SQL连接oracle数据库,并将数据进行导出备份和导入恢复

    使用PL/SQL连接oracle数据库,并将数据进行导出备份和导入恢复 这种操作百度一搜一大片,今天整理以前做的项目时自己备份了一下数据库,试着将数据进行导出备份和导入恢复了一下:下面是操作过程: 1 ...

  5. 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 ...

  6. MySQL基于LVM快照的备份恢复(临时)

    目录1.数据库全备份2.准备LVM卷3.数据恢复到LVM卷4.基于LVM快照备份数据5.数据灾难恢复6.总结 写在前面:测试环境中已安装有mysql 5.5.36数据库,但数据目录没有存放在LVM卷, ...

  7. Mysql数据库备份—-通过LVM快照实现备份还原

    一.实验环境 一台测试机:A(172.18.30.1) 操作系统:Centos7 操作对象数据库版本:mariadb-10.2 二.实现目的 从A机器(172.18.30.1)简单搭建数据库,创建测试 ...

  8. 使用LVM快照进行数据库备份

    使用mysqldump备份时,如果存储引擎为MyISAM,则只能实现温备份,并需使用选项--lock-all-tables锁定所有表.如果存储引擎为InnoDB,则加上--single-transac ...

  9. LVM快照(snapshot)备份

    转载自:http://wenku.baidu.com/link?url=cbioiMKsfrxlzrJmoUMaztbrTelkE0FQ8F9qUHX7sa9va-BkkL4amvzCCAKg2hBv ...

随机推荐

  1. Flex Vector使用(转)

    从前(Flex SDK 4.0 以前版本)创建 Vector 实例一定要如下所示,这样的语法使我们在构造 Vector 对象时无法指定元素: var v:Vector.<T> = new ...

  2. (转)C#/.NET主线程与子线程之间的关系

    一般 一个应用程序就对应一个进程,一个进程可有一个或多个线程,而一般有一个主线程.       有的博客上说“至少一个主线程”,这一说法持有怀疑         主线程与子线程之间的关系        ...

  3. linux修改时区为中国时区(北京)

    cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

  4. Linux下配置Lamp

    linux下配置lamp步骤: 一.快速安装Apache+PHP5+MySql 先更新: # yum update 然后安装LAMP环境:(163的yum源上只有php5.1.6 mysql 5.0. ...

  5. Spring.Net 配置文件

    方法一. 直接在程序配置文件中配置 <configuration> <configSections> <sectionGroup name="spring&qu ...

  6. 20145337实验五Java网络编程及安全

    20145337实验五Java网络编程及安全 实验内容 掌握Socket程序的编写 掌握密码技术的使用 设计安全传输系统 实验步骤 基于Java Socket实现安全传输 基于TCP实现客户端和服务器 ...

  7. IOS网络第二天 - 03-JSON显示数据,调用本地视频播放,数据转模型

    ********HMVideosViewController.m #import "HMVideosViewController.h" #import "MBProgre ...

  8. IOS彩票第二天设置界面(1)

    ****跳转到设置界面 - (IBAction)setting:(id)sender { // 创建设置口控制器 ILSettingTableViewController *settingVc = [ ...

  9. Json的语法及使用方法

    Json的语法及使用方法 Json(JavaScript Object Notation)对象表示标识,是一种轻量级的数据交换语言,比XML更容易解析,独立于语言和平台. 语法规则: 对象用{}保存 ...

  10. 使用本地phpmyadmin管理远程数据库

    使用放下挺简单的,因为某些业务需求,phpmyadmin不让放在网站服务器上,所以放在本地可以方便管理远程数据库 点击下载会下载一个  config.inc.php 吧这个文件放在phpmyadmin ...