软件测试技术

当前位置:首页 > 软件测试技术

鸟哥的Linux私房菜 基础学习篇(第三版) (第九章)续

· 特殊应用 :利用管线命令与数据流

在tar的使用中,有-种方式最特殊,那就是透过标准输入输出的数据流重导向(standardinput/standard output),以及管线命令(pipe) 的方式,将待处理的档案一边打包-边解压缩到目标目录去。关于数据流重导向与管线命令更详细的数据我们会在第十章bash再跟大家介绍,底下先来看一个例子吧!

鸟哥的Linux私房菜 基础学习篇(第三版) (第九章)续

在上面的例子中,我们想要T将/et底下的资料直接copy到目前所在的路径,也就是/tmp底下J,但是又觉得使用cp -有点麻烦,那么就直接以这个打包的方式来打包,其中,指令里面的-就是表示那个被打包的档案啦!由于我们不想要让中间档案存在,所以就以这一个方式来进行复制的行为啦!

例题:系统备份范例

系统上有非常多的重要目录需要进行备份,而且其实我们也不建议你将备份数据放置到/root目录下!假设目前你已经知道重要的目录有底下这几个:

●/etc/ (配置文件)

/home/ (用户的家目录)

●/var/spool/mail/ (系统中,所有账号的邮件信箱)

/var/spool/cron/ (所有账号的工作排成配置文件)

/root (系统管理员的家目录)

然后我们也知道,由于第八章曾经做过的练习的关系,/home/loop* 不需要备份,而且/root底下的压缩文件也不需要备份,另外假设你要将备份的数据放置到/backups, 井且该目录仅有root有权限进入!此外,每次备份的档名都希望不相同,例如使用: backup-system-20091130.tar.bz2之类的档名来处理。那你该如何处理这个 备份数据呢? (请先动手作看看,再来察看一下底 下的参考解答!)

鸟哥的Linux私房菜 基础学习篇(第三版) (第九章)续

鸟哥的Linux私房菜 基础学习篇(第三版) (第九章)续




完整备份工具: dump

某些时刻你想要针对文件系统进行备份或者是储存的功能时,不能不谈到这个dump指令!这玩意儿我们曾在前一章的/etc/fstab里面稍微谈过。其实这个指令除了能够针对整个filesystem备份之外,也能够仅针对目录来备份喔!底下就让我们来谈一谈这个指令的用法吧 !

dump

其实dump的功能颇强,他除了可以备份整个文件系统之外,还可以制定等级喔!什么意思啊!假设你的/home是独立的一个文件系统,那你第一次进行过dump后,再进行第二次dump时,你可以指定不同的备份等级,假如指定等级为1时,此时新备份的数据只会记录与第一次备份所有差异的档案而已。看不懂吗?没关系!我们用一张简图来说明。

鸟哥的Linux私房菜 基础学习篇(第三版) (第九章)续

如上图所示,上方的实时文件系统」是- -直随着时间而变化的数据,例如在/home里面的档案数据会-直变化- 一样。 而底下的方块则是dump备份起来的数据,第- -次备份时使用的是level0,这个等级也是完整的备份啦!等到第二次备份时,实时文件系统内的数据已经与level 0不一-样了,而level 1仅只是比较目前的文件系统与level 0之间的差异后,备份有变化过的档案而已。至于level 2则是与level 1进行比较啦!这样了解呼?

虽然dump支持整个文件系统或者是单一各别目录 ,但是对于目录的支持是比较不足的,这也是dump的限制所在。简单的说,如果想要备份的数据如下时,则有不同的限制情况:

当待备份的资料为单一文件系统:

如果是单一文件系统(filesystem), 那么该文件系统可以使用完整的dump功能,包括利用0~9的数个level来备份,同时,备份时可以使用挂载点或者是装置文件名(例如/dev/sda5之类的装置文件名)来进行备份!

●待备份的数据只是目录 ,并非单一文件系统:

例如你仅想要备份/home/someone/, 但是该目录并非独立的文件系统时。此时备份就有限制啦!包括:

。所有的备份数据都必须要在该目录 (本例为: /home/someone/)底下;

。且仅能使用level0 ,亦即仅支持完整备份而已;

。不支持-u选项,亦即无法建立/et/dumpdates这个各别level备份的时间记录文件; 

dump的选项虽然非常的繁复,不过如果只是想要简单的操作时,您只要记得底下的几个选项就很够用了!

鸟哥的Linux私房菜 基础学习篇(第三版) (第九章)续

鸟哥的Linux私房菜 基础学习篇(第三版) (第九章)续


相关内容

文章评论

表情

共 0 条评论,查看全部
  • 这篇文章还没有收到评论,赶紧来抢沙发吧~