linux的备份命令及其参数,linux restore命令参数及用法详解--linux还原dump备份命令...

功能说明:还原(Restore)由倾倒(Dump)操作所备份下来的文件或整个文件系统(一个分区)。

语  法:restore [-cCvy][-b ][-D ][-f ][-s ] 或 restore [-chimvy][-b ][-f ][-s ] 或 restore [-crvy][-b ][-f ][-s ] 或 restore [-cRvy][-b ][-D ][-f ][-s ] 或 restore [chtvy][-b ][-D ][-f ][-s ][文件...] 或 restore [-chmvxy][-b ][-D ][-f ][-s ][文件...]

补充说明:restore 指令所进行的操作和dump指令相反,倾倒操作可用来备份文件,而还原操作则是写回这些已备份的文件。

参  数:

-b   设置区块大小,单位是Byte。

-c   不检查倾倒操作的备份格式,仅准许读取使用旧格式的备份文件。

-C   使用对比模式,将备份的文件与现行的文件相互对比。

-D   允许用户指定文件系统的名称。

-f   从指定的文件中读取备份数据,进行还原操作。

-h   仅解出目录而不包括与该目录相关的所有文件。

-i   使用互动模式,在进行还原操作时,restore指令将依序询问用户。

-m   解开符合指定的inode编号的文件或目录而非采用文件名称指定。

-r   进行还原操作。

-R   全面还原文件系统时,检查应从何处开始进行。

-s   当备份数据超过一卷磁带时,您可以指定备份文件的编号。

-t   指定文件名称,若该文件已存在备份文件中,则列出它们的名称。

-v   显示指令执行过程。

-x   设置文件名称,且从指定的存储媒体里读入它们,若该文件已存在在备份文件中,则将其还原到文件系统内。

-y   不询问任何问题,一律以同意回答并继续执行指令。

推荐阅读:Linux学习笔记之备份命令dump/还原命令restore

资料整理 www.linuxso.com

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

配合 dump 的程序是 restore ,它用于从转储映像还原文件。

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

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

使用 dump 执行备份

使用 dump 执行备份是相当简单的。下面的命令执行一个完全 Linux 备份,它把所有 ext2 和 ext3 文件系统备份到一个 SCSI 磁带设备。

dump 0f /dev/nst0 /boot

dump 0f /dev/nst0 /

在这个例子中,系统中有两个文件系统。一个用于 /boot,另一个用于 / ,这是常见的配置。它们必须在执行备份时单独地引用。 /dev/nst0 引用第一个 SCSI 磁带驱动器,不过是以非重绕的模式引用。这样确保各个卷在磁带上一个接一个地排列。

dump 的一个有趣特性是其内置的增量备份功能。在上面的例子中, 0 表示 0 级或基本级备份。这是完全系统备份,您要定期执行以保存整个系统。对于后续的备份,您可以使用其他数字(1-9)来代替 0,以改变备份级别。1 级备份会保存自从执行 0 级备份以来更改过的所有文件。2 级备份会保存自从执行 1 级备份以来更改过的所有文件,以此类推。使用 tar 和脚本可以执行相同的功能,但要求脚本创建人员提供一种机制来确定上次备份是何时执行的。 dump 具有它自己的机制,即它在执行备份时会输出一个更新文件(/etc/dumpupdates)。这个更新文件将在每次执行 0 级备份时被重设。后续级别的备份会保留它们的标记,直至执行另一次 0 级备份。如果您在执行基于磁带的备份, dump 会自动跟踪多个卷。

跳过文件

标记将被 dump 跳过的文件和目录是可以做到的。实现此目的的命令是 chattr ,它改变 ext2 和 ext3 文件系统上的扩展属性。

chattr +d

上面的命令向文件添加一个标记,让 dump 在执行备份时跳过该文件。

使用 restore 来执行还原

要还原使用 dump 保存的信息,可以使用 restore 命令。像 tar 一样, dump 能够列出( -t )归档文件的内容,并与当前文件作比较( -C )。使用 dump 時必须小心的地方是还原数据。有两种非常不同的还原方法,您必须使用正确的方法才能获得可预测的结果。

重建 (-r)

记住,在设计 dump 时考虑得更多的是文件系统,而不是单独的文件。因此,存在两种不同的文件还原风格。要重建一个文件系统,可使用 -r 命令行开关。设计重建的目的是为了能在空文件系统上操作,并将它还原为已保存的状态。在执行重建之前,您应该已经创建、格式化和装载(mount)了该文件系统。不应该对包含文件的文件系统执行重建。

下面是使用上面执行的转储来执行完全重建的例子。

restore -rf /dev/nst0

上面这个命令需要针对要还原的每个文件系统分别执行。

在需要的时候,可以重复这个过程来添加增量备份。

提取 (-x)

如果需要使用单独的文件而不是使用整个文件系统,您必须使用 -x 开关来提取它们。例如,要仅从我们的磁带备份中提取 /etc 目录,可使用以下命令:

restore -xf /dev/nst0 /etc

交互式还原 (-i)

restore 提供的另外一个特性是交互式模式。使用命令:

restore -if /dev/nst0

将把您置于交互式 shell 中,同时还显示了包含在该归档文件中的项。键入“help”将会显示一个命令列表。然后您就可以浏览并选择希望提取的项。务必记住,您提取的任何文件都将进入当前目录。

举例说明:

dump命令是一个专门用来备份的工具。

[root@laptop pyegrp]# dump -0 -u -f /dev/hda3 /home/pyegrp/

DUMP: Date of this level 0 dump: Sat Nov 30 19:45:56 2002

DUMP: Dumping /dev/hda9 (/home/pyegrp) to /dev/hda3

DUMP: Added inode 7 to exclude list (resize inode)

DUMP: Label: none

DUMP: mapping (Pass I) [regular files]

DUMP: mapping (Pass II) [directories]

DUMP: estimated 15492 tape blocks.

DUMP: Volume 1 started with block 1 at: Sat Nov 30 19:46:01 2002

DUMP: dumping (Pass III) [directories]

DUMP: dumping (Pass IV) [regular files]

DUMP: Closing /dev/hda3

DUMP: Volume 1 completed at: Sat Nov 30 19:46:13 2002

DUMP: Volume 1 15490 tape blocks (15.13MB)

DUMP: Volume 1 took 0:00:12

DUMP: Volume 1 transfer rate: 1290 kB/s

DUMP: 15490 tape blocks (15.13MB) on 1 volume(s)

DUMP: finished in 12 seconds, throughput 1290 kBytes/sec

DUMP: Date of this level 0 dump: Sat Nov 30 19:45:56 2002

DUMP: Date this dump completed: Sat Nov 30 19:46:13 2002

DUMP: Average transfer rate: 1290 kB/s

DUMP: DUMP IS DONE

-0 是备份的等级,从0-9,0以后都是更新备份的参数,一般常用的是0和9

-u 是将备份记录写入/etc/dumpdates这个文件中

[root@laptop pyegrp]# cat /etc/dumpdates

/dev/hda9 0 Sat Nov 30 19:45:56 2002

/dev/hda9 9 Sat Nov 30 17:04:20 2002

注意,当你备份的目录是一个子目录,而不是一个分区的顶层目录时-u参数

是不能使用的。

-f 是指定备份到那个文件,也可以指定一个设备文件,我在这里指定的就是一个分区

更新备份:

在0级别备份的基础上,向/home/pyegrp写入一些新的文件,然后

umount /home/pyegrp

mount /home/pyegrp

注意如果不这样做,不会将新写入的文件备份进去的。

然后:

[root@laptop pyegrp]# dump -9 -u -f /dev/hda3 /home/pyegrp/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值