文档章节

linux下常用的备份工具有哪些

Foundation
 Foundation
发布于 2016/02/26 09:35
字数 1702
阅读 259
收藏 8

1、备份前因考虑的因素

● 可移植性(即在Red Hat Linux系统下执行的备份在另外一个系统上恢复的能力)。

● 是否自动备份。

● 执行备份的周期。

● 需要把归档的备份保存多长时间。

● 用户界面的友好性(决定是否需要选择基于GUI界面的工具还是基于文本的)。

● 是否需要使用压缩技术、直接复制或者加密技术。

● 备份介质(需要从价格、性能、存储能力上考虑)。

● 是否远程备份或网络备份

● 是保存一个文件、一个子目录还是整个系统。

2、备份选择的策略

需要确定数据备份的策略:确定需备份的内容、备份时间及备份方式。目前主要有3中备份策略:

(1)完全备份策略

(2)增量备份策略

(3)差分备份策略

3、确定备份的内容

linux基于文件的性质为备份和还原系统带来了很大的便利,它们在很大程度上与系统无关,Linux 备份处理的是文件的打包和解包。


一般情况下,以下这些目录是需要备份的:

/etc

包含所有核心配置文件。这其中包括网络配置、系统名称、防火墙规则、用户、组,以及其他全局系统项。

/var

包含系统守护进程(服务)所使用的信息,包括 DNS 配置、DHCP 租期、邮件缓冲文件、HTTP 服务器文件、db2 实例配置,等等。

/home

包含所有用户的默认用户主目录。这包括他们的个人设置、已下载的文件和用户不希望失去的其他信息。

/root

是根(root)用户的主目录。

/opt

是安装许多非系统文件的地方。IBM 软件就安装在这里。OpenOffice、JDK 和其他软件在默认情况下也安装在这里。

有些目录是应该考虑不 备份的。

/proc

应该永远不要备份这个目录。它不是一个真实的文件系统,而是运行内核和环境的虚拟化视图。它包括诸如 /proc/kcore 这样的文件,这个文件是整个运行内存的虚拟视图。备份这些文件只是在浪费资源。

/dev

包含硬件设备的文件表示。如果计划还原到一个空白的系统,那就可以备份 /dev。然而,如果计划还原到一个已安装的 Linux 系统,那么备份 /dev 是没有必要的。


3、备份工具

对于备份和恢复来说,Linux提供了诸如tar、cpio dump等工具来实现。这样,用户无需花钱购买,便可根据系统的实际情况,结合使用相应的备份恢复工具实现备份与恢复的基本功能。

tar工具介绍

tar是一个已移植到Linux中的经典Unix命令。tar是tape archive(磁带归档)的缩写,最初设计用于将文件打包到磁带上,现在我们大都使用它来实现备份某个分区或者某些重要的文件目录。我们使用 tar可以打包整个目录树,这使得它特别适合用于备份。归档文件可以全部还原,或从中展开单独的文件和目录。备份可以保存到基于文件的设备或磁带设备上。文件可以在还原时重定向,以便将它们重新放到一个与最初保存它们的目录(或系统)不同的目录(或系统)。tar是与文件系统无关的,因而它的适用范围很广,它可以使用在ext2ext3jfs、Reiser和其他文件系统上。

使用tar非常类似于使用诸如Windows环境下的WinzipWinRAR这样的文件实用工具。只需将它指向一个目的(可以是文件或设备),然后指定想要打包的文件,就可以通过标准的压缩类型来动态压缩归档文件,或指定一个自己选择的外部压缩程序。要通过bzip2压缩或解压缩文件,可使用tar -z命令。

下面是一个简单的使用该工具进行数据备份的例子:

tar czvf - /root/code > /tmp/code_bak.tgz (将/root/code目录下的所有程序文件打包备份到/tmp/code_bak.tgz)

tar xzvf /tmp/code_bak.tgz /root/code (将备份的目录文件恢复到指定目录)

cpio工具介绍

cpio命令可以从tar或者cpio档案文件中拷入或者拷出文件。cpio命令和tar命令兼容,但是这个命令具备一些tar命令没有的功能,如下所示:

支持cpio和tar两种档案文件格式;

支持许多老式磁带数据格式;

能够通过一个管道(pipe-line)读取文件的文件名。

目前看来,只有很少的Linux软件包是以cpio格式发行的。用户如果对cpio命令的详细情况感兴趣,可以通过“man cpio ”命令阅读它的使用手册。

dump 和 restore介绍

dump可以执行类似tar的功能。然而,dump倾向于考虑文件系统而不是个别的文件。dump检查ext2文件系统上的文件,并确定哪些文件需要备份。这些文件将出于安全保护而被复制到给定的磁盘、磁带或其他存储媒体上。在大多数媒体上,容量是通过一直写入直至返回一个end-of-media标记来确定的。

配合dump的程序是restore,它用于从转储映像还原文件。restore命令执行转储的逆向功能。可以首先还原文件系统的完全备份,而后续的增量备份可以在已还原的完全备份之上覆盖。可以从完全或部分备份中还原单独的文件或者目录树。

dump和restore都能在网络上运行,因此用户可以通过远程设备进行备份或还原。dump和restore使用磁带驱动器和提供广泛选项的文件设备。然而,两者都仅限用于ext2和ext3文件系统。如果使用的是JFS、Reiser或者其他文件系统,将需要其他的实用工具,比如 tar. 举个例子:

dump 0f /dev/nst0 /(将ext2文件系统备份到第一个SCSI设备)

restore -xf /dev/nst0 /home/code (将备份的SCSI设备中的/home/code目录下的所有数据还原到磁盘)

如果想深入体验LINUX系统的新手,也可以先下载一个方德Linux软件中心试用一下。

免费下载地址:http://www.nfs-cloud.cn:81/appCenter/open/softcenter

© 著作权归作者所有

共有 人打赏支持
Foundation
粉丝 8
博文 208
码字总数 157873
作品 0
无锡
私信 提问
大数据社区整理的Linux运维笔试面试题(47题)

大数据社区整理的Linux运维笔试面试题(47题) Linux操作系统知识 1. Linux开机启动流程详细步骤是什么?忘记密码如何破解? 2. 企业中Linux数据库服务器做raid几,你们原来公司的数据库服务...

代金券优惠
2018/06/06
0
0
Linux运维必会的面试题(二)

一、Linux的启动过程? 开机自检:服务器主机开机以后,将根据主板BIOS(Basic Input/Output System,基本输入输出系统)中的设置对CPU、内存、显卡、键盘等设备进行初步检测,检测成功后根据...

何小帅
2018/06/26
0
0
Linux压缩和解压命令:tar,gzip,zip(unzip),rar

本文首发于我的个人博客:Suixin's Blog 原文: https://suixinblog.cn/2018/11/tar-gzip-zip-rar.html  作者: Suixin 很多大型文件或者数据从服务器上传或者下载的时候都需要打包和压缩解压...

就是suixin
2018/11/20
0
0
Linux 下数据库备份恢复技术的应用

本文讲述Linux环境下,如何使用备份的脚本和命令以及商业化的软件来合理高效地保护磁盘数据安全。备份与恢复系统承担着事前备份与事后恢复的职能。在当前高速发展的网络环境下,任何一个网络...

红薯
2009/05/07
278
0
最小Linux系统Tiny Core Linux试用

看到Tiny Core Linux的时候你可能会发出感慨,什么叫做麻雀虽小五脏俱全。编者从tinycorelinux.com下载到tinycore_3.0.iso安装文 件的时候,竟然只有10.6MB。与哪些动则几百MB的安装文件相比...

红薯
2010/07/30
27.9K
16

没有更多内容

加载失败,请刷新页面

加载更多

Linux下端口转发工具rinetd介绍

linux下简单好用的工具rinetd,实现端口映射/转发/重定向,针对TCP协议,不支持UDP。 官网地址 http://www.boutell.com/rinetd 里面介绍及使用齐全。 使用场景举例: 阿里云内网Redis连接问题...

ouhoo
9分钟前
0
0
Oracle学习日志-5(算数运算符,比较运算符和逻辑运算符)

因为有编程基础,所以对于这一章还是很好理解,只需要注意对NULL的运算。 操作的表格 算数运算符 查询商品名字和商品售价,并商品售价乘2 SELECT product_name,sale_price * 2 AS "sale_pri...

白话
21分钟前
0
0
搜索引擎(Lucene介绍、分词器详解)

Lucene介绍 Lucene简介 最受欢迎的java开源全文搜索引擎开发工具包。提供了完整的查询引擎和索引引擎,部分文本分词引擎(英文与德文两种西方语言)。Lucene的目的是为软件开发人员提供一个简...

这很耳东先生
26分钟前
0
0
quartz详细介绍

quartz常用api Scheduler 调度程序交互的主要API。 Job 希望由调度程序执行的组件实现的接口。 JobDetail 用于定义作业的实例。 JobDataMap 可以包含不限量的序列化数据,在job运行的时候可以...

大笨象会跳舞吧
26分钟前
0
0
kotlin使用jackson序列化enum

默认情况下,我们序列化与反序列化enum是它的name,事实上大部分情况下我们需要序列化的是我们自定义的value,那应该怎么做呢? 这种情况下我们就需要@JsonValue与@JsonCreator data class U...

weidedong
31分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部