分享
 
 
 

Linux管理员手册(8)--备份

王朝system·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

硬件不肯定是可靠的

软件肯定是不可靠的

人不肯定是不可靠的

而自然肯定是可靠的

本张说明为什么、如何、何时要做备份,及如何回存备份的东西。

备份的重要

数据是有价值的。重新产生它需要你花费时间和努力,并且要花费金钱或至少伤心和眼泪,有时甚至不可能重新产生,例如一些实验结果。由于数据是一种投资,你必须保护它,并采取措施避免丢失。

丢失数据一般有4个原因:硬件失败、软件曲线、人为因素或自然灾害。 虽然现代硬件已经相当可靠,但仍可能自然损坏。存储数据最决定性的硬件是硬盘,它依赖微小的磁区在充满电噪声的世界上保存数据。现代软件依然不可靠,一个真正可靠的程序是理想、罕见的,而不是规律。人更不可靠,他们很容易犯错误,甚至为某种目的恶意地破坏数据。自然可能不是邪恶的,但也可能造成破坏。一切的一切,希望什么都正常、完美几乎是不可能的。

备份是保护数据投资的方法。有数据的多个拷贝,就不怕某个损坏(所需做的仅仅是从备份中恢复丢失的数据)。

正确的备份是很重要的。正如物理世界中任何东西都与其他相关,备份也迟早会失效。好的备份确保有效,你不希望你的备份无效。 如果你的备份又坏了,这将雪上加霜,如果你只有一个备份,它可能根本是坏的,只留下你和硬盘中冒烟的灰烬。 或者当你恢复时,发现忘了备份一些重要的东西,比如15000个用户站点的用户数据库。 Best of all, all your backups might be working perfectly, but the last known tape drive reading the kind of tapes you used was the one that now has a bucketful of water in it.

When it comes to backups, paranoia is in the job description.

选择备份介质

备份所需的最重要的决定是选择备份介质。需要考虑成本、可靠性、速度、可得到、可用性。

成本是很重要的,因为你的数据可能需要多个存储、多个备份。便宜的介质可以用很多。

可靠性是最重要的,因为坏的备份会雪上加霜。备份介质必须能存储数据多年而不损坏。作为备份介质,使用方法影响可靠性。硬盘一般是很可靠的,但作为备份介质并非很可靠,如果它和备份源在同一计算机里的话。

速度通常不太重要,如果备份可以非交互地完成。备份花2个小时无所谓,无须监督,多长时间都没有关系。另一方面,if the backup can't be done when the computer would otherwise be idle, 那么速度也是个问题。

可得到是明显必要的,因为你无法使用不存在的备份介质。不太明显的是要在将来还能得到这种介质,并且能在其他计算机上使用。否则灾害之后,你可能无法恢复你的备份。

可用性是决定备份周期的主要因素。备份越容易使用越好。备份介质不能难以使用。

一般用软盘和磁带。软盘很便宜,还算可靠,不太快,很容易得到,但数据量大时不容易使用。磁带也很便宜,还算可靠,还算快,很容易得到,而且,依赖于磁带的容量,使用很轻松。

还有其他选择。但通常可得性不好,但如果这不成问题,有时也不错。例如,磁光盘同时具有软盘(随机存取,可以快速地恢复单个文件)和磁带(大容量)的优点.

选择备份工具

备份有很多工具,传统的UNIX备份工具是tar 、 cpio 和dump 。另外,还可以使用大量第三方软件包(包括freeware和商业版)。备份介质的选择可能影响工具的选择。

tar 和cpio 类似,从备份来看二者基本等效。都能将文件存到磁带并取出文件。都能使用几乎所有介质,因为核心设备驱动处理低级设备操作,对用户级程序看来所有设备都差不多。有写Unix版本的tar 和cpio 对不是普通文件可能有问题(符号连接、设备文件、极长路径名的文件等等),但Linux的能正确处理所有文件。

dump 不同,它直接读文件系统,而不通过文件系统。 It is also written specifically for backups; tar 和cpio are really for archiving files, although they work for backups as well.

直接读文件系统有些优点,它可能不考虑time stamps备份所有文件;对于tar 和cpio ,必须先将文件系统只读安装。直接读文件系统更有效,如果所有东西都要备份,因为它使磁头移动最少。它的主要缺点是每个文件系统种类需要特定的备份程序, Linux的dump 程序只理解ext2文件系统。

dump 也直接支持备份级(下面讨论);对tar 和cpio ,这必须用其他工具实现。

第三方备份工具的比较超出了本书的范围。Linux Software Map列出了许多freeware的。

简单备份

一个简单的备份方案是一次备份所有东西,然后备份上次备份后改变的所有东西。第一个备份叫全备份full backup,后来的叫i增量备份ncremental backups。全备份比增量备份费时费力,因为有更多的东西写到磁带,而且全备份可能不能放如一盘磁带中(更别说软盘了)。回存增量备份比全备份可能要花更多的时间。备份可以这样优化,就是自上次全备份以后,总用增量备份保存所有改过的文件。这样,备份可能需要多一些的工作,但你只需回存一个全备份和一个增量备份。

如果有6盘磁带想每天备份,可以用磁带1做第一个全备份(比如在星期五),用磁带2-5做增量备份(周一到周四)。然后用磁带6做新的全备份(第二个周五),然后再用磁带2-5做增量备份。在做完新的全备份之前不要覆盖旧的全备份(磁带1),一面在做全备份的时候出现问题。有了新的全备份磁带6以后,最好在另一个地方保存磁带1,这样如果有一个全备份磁带在火灾中损失了,还能有一个。当再做下一个全备份是,再用磁带1而保存磁带6。

如果你有多于6盘磁带,可以用多的做全备份。每次做全备份,应该使用最老的磁带。这样你会有最近几周的全备份,对你如果想找到一个现在已经删除的就文件,或一个文件的旧版本很有用。

用tar备份

一个全备份可以很容易地用tar 实现:

# tar -create -file /dev/ftape /usr/src

tar: Removing leading / from absolute path names in the archive

#

上面的例子使用GNU版本的tar 及其长选项名。传统版本的tar 只理解单字符选项。 GNU版还能处理一盘磁带或一张磁盘不能容纳的备份,及很长的路径名;这不是所有传统的版本能作到的。 (Linux只使用GNU tar 。)

如果你的备份一盘磁带不能容纳,你需要使用-multi-volume (-M)选项:

# tar -cMf /dev/fd0H1440 /usr/src

tar: Removing leading / from absolute path names in the archive

Prepare volume #2 for /dev/fd0H1440 and hit return:

#

注意开始备份前要格式化所有软盘,或在tar 需要新软盘时用另一个虚拟控制台或虚拟终端格式化它。

备份完后,应该检查它是否完好,用-compare (-d)选项:

# tar -compare -verbose -f /dev/ftape

usr/src/

usr/src/linux

usr/src/linux-1.2.10-includes/

....

#

失败的备份检查意味着如果你丢失了原始数据,备份也无法恢复。

增量备份可用带-newer (-N)选项的tar 来实现:

# tar -create -newer '8 Sep 1995' -file /dev/ftape /usr/src -verbose

tar: Removing leading / from absolute path names in the archive

usr/src/

usr/src/linux-1.2.10-includes/

usr/src/linux-1.2.10-includes/include/

usr/src/linux-1.2.10-includes/include/linux/

usr/src/linux-1.2.10-includes/include/linux/modules/

usr/src/linux-1.2.10-includes/include/asm-generic/

usr/src/linux-1.2.10-includes/include/asm-i386/

usr/src/linux-1.2.10-includes/include/asm-mips/

usr/src/linux-1.2.10-includes/include/asm-alpha/

usr/src/linux-1.2.10-includes/include/asm-m68k/

usr/src/linux-1.2.10-includes/include/asm-sparc/

usr/src/patch-1.2.11.gz

#

不幸的是,tar 不能知道一个文件的i节点信息变化,例如,文件的权限位变化,或文件名变化。这可用find 命令和比较当前文件系统状态和先前备份的文件列表。用于此的Scripts和程序可以在Linux FTP站点上找到。

用tar回存

tar 的-extract (-x)选项展开文件:

# tar -extract -same-permissions -verbose -file /dev/fd0H1440

usr/src/

usr/src/linux

usr/src/linux-1.2.10-includes/

usr/src/linux-1.2.10-includes/include/

usr/src/linux-1.2.10-includes/include/linux/

usr/src/linux-1.2.10-includes/include/linux/hdreg.h

usr/src/linux-1.2.10-includes/include/linux/kernel.h

...

#

也可以用命令行只展开特定的文件和目录(及其中的文件和子目录):

# tar xpvf /dev/fd0H1440 usr/src/linux-1.2.10-includes/include/linux/hdreg.h

usr/src/linux-1.2.10-includes/include/linux/hdreg.h

#

用-list (-t)选项看一个备份卷中有什么文件:

# tar -list -file /dev/fd0H1440

usr/src/

us

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有