`
beyondhjjyt
  • 浏览: 39786 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

LINUX系统备份工具

 
阅读更多


【导读】:LINUX系统备份工具(一),工具,备份,系统,文件,时间,层级,dump,指定,磁带,改
Linux备份和恢复

Linux备份大致有以下几个工具:Dump Tar Cpio Cp Scp Rsync



0、Linux备份与恢复的时间变化

Unix系统为每个文件都记录这三个不同的时间,第一个是mtime,即修改时间。无论何时,

只要文件内容被改变,mtime的值就会被相应修改。第二个是atime,即访问时间。只要文

件被访问(比如运行或读取),它就会被修改。第三个是ctime,即变更时间。当文件的属性

发生变化(比如改变权限或者所有关系)时,ctime的值就会被改变。管理员用ctime来查

找黑客。备份会改变atime,tar,cpio,dd都会这样做,dump通过原始设备来读取文件系统,因此它不会改变atime.



1、Dump

语法:

[root@localhost ~]# dump

dump 0.4b41 (using libext2fs 1.39 of 29-May-2006)

usage:dump [-level#] [-acmMnqSuv] [-A file] [-B records] [-b blocksize]

[-d density] [-D file] [-e inode#,inode#,...] [-E file]

[-f file] [-h level] [-I nr errors] [-j zlevel] [-Q file]

[-s feet] [-T date] [-y] [-z zlevel] filesystem

dump [-W | -w]



Dump为备份工具程序,可将目录或整个文件系统备份至指定的设备,或备份成一个大文件

参数:

 -0123456789  备份的层级

 -b<区块大小>指定区块的大小,单位为KB

 -B<区块数目>指定备份卷册的区块数目

 -c修改备份磁带预设的密度与容量

 -d<密度>设置磁带的密度。单位为BPI

 -f<设备名称>指定备份设备

 -h<层级>当备份层级等于或大于指定的层级时,将不备份用户标示为"nodump"的文件

 -n当备份工作需要管理员介入时,向所有"operator"群组中的使用者发出通知

 -s<磁带长度>备份磁带的长度,单位为英尺

 -T<日期>指定开始备份的时间与日期

 -u备份完毕后,在/etc/dumpdates中记录备份的文件系统,层级,日期与时间等

 -w与-W类似,但仅显示需要备份的文件

 -W显示需要备份的文件及其最后一次备份的层级,时间与日期



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

Dump命令操作举例

1、执行一个完全Linux备份,它把所有ext2ext3文件系统备份到一个SCSI磁带设备

范例:

dump0f/dev/nst0 /boot

dump0f/dev/nst0 /

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

2、把/home完全备份到一个称做/dev/rmt/0cbn的本地磁带驱动器上。

# dump 0unbdsf 126 141000 11500 /dev/rmt/0cbn /home

3、把/home完全备份到一个称做/backup/home.dump的光学CD驱动器上

# dump 0unbdsf 126 141000 11500 /backup/home.dump /home

以上命令由三个不需要参数的选项0u and n)以及四个需要一起协作参数的选项(b,d,s and

f)组成

2、配合dump的程序是restore

[root@localhost ~]# restore –help

restore 0.4b41 (using libext2fs 1.39 of 29-May-2006)

usage:restore -C [-cdeHlMvVy] [-b blocksize] [-D filesystem] [-E mls]

[-f file] [-F script] [-L limit] [-s fileno]

restore -i [-acdehHlmMouvVy] [-A file] [-b blocksize] [-E mls]

[-f file] [-F script] [-Q file] [-s fileno]

restore -P file [-acdhHlmMuvVy] [-A file] [-b blocksize]

[-f file] [-F script] [-s fileno] [-X filelist] [file ...]

restore -r [-cdeHlMuvVy] [-b blocksize] [-E mls]

[-f file] [-F script] [-s fileno] [-T directory]

restore -R [-cdeHlMuvVy] [-b blocksize] [-E mls]

[-f file] [-F script] [-s fileno] [-T directory]

restore -t [-cdhHlMuvVy] [-A file] [-b blocksize]

[-f file] [-F script] [-Q file] [-s fileno] [-X filelist] [file ...]

restore -x [-acdehHlmMouvVy] [-A file] [-b blocksize] [-E mls]

[-f file] [-F script] [-Q file] [-s fileno] [-X filelist] [file ...]

命令选项:

决定restore的类型

t显示卷的内容

r指明卷的整个内容应该被恢复到当前工作目录下

x只提取命令后面所列的文件

i允许执行交互式恢复

决定restore的行为

v指定详细输出

s读取之前跳过的磁带文件个数

b块因子

f备份驱动器的文件名

y恢复过程禁止询问

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

使用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”将会显示一个命令列表。然后您就可以浏览并选择希望提取的项。务必记住,您提取的任何文件都将进入当前目录

要恢复一个使用块因子32创建的DUMP磁带备份(位于/dev/rmt/0cbn)的全部内容。

restore rvbfy 32 /dev/rmt/0cbn

有一个使用块因子32创建的位于/dev/rmt/0cbn中的DUMP磁带,如果想从该磁带中恢复文

/etc/hosts and /etc/passwd.

restore xvbfy 32 /dev/rmt/0cbn ./etc/hosts ./etc/passwd

创建内容表

restore tfy device >/tmp/dump.list

3、跳过文件dump(chattr)

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

chattr +d <filename>(文件一旦被修改d属性就会自动清除)

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

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

举例说明:

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

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

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

-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级别备份的基础上,向/boot写入一些新的文件,然后

umount /boot

mount /boot

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

然后:

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

restore命令是用来恢复备份的

[root@laptop pyegrp]# restore rf /dev/hda3 /boot

restore命令来查看备份文件里的文件列表

[root@laptop pyegrp]# restore tf /dev/hda3

其他待续。。。



分享到:
评论

相关推荐

    linux系统备份工具

    linux系统备份工具,本人亲自测试使用OK,硬盘对拷完全备份,只是速度稍有点慢,请耐心等待完成。

    linux系统备份工具imagew

    Linux系统备份工具Imagew是一款强大的系统备份解决方案,它不仅适用于Linux环境,还能够处理Windows系统的备份工作。这款工具的独特之处在于它需要在Windows或Windows预安装环境(Preinstallation Environment, PE)...

    linux系统GHOST备份教程.doc

    本文主要介绍两款类似Ghost功能的Linux系统备份工具:Ghost for Linux (g4l) 和 Partition Image。 1. Ghost for Linux (g4l) g4l是一款开源软件,可以在Linux系统中实现类似Ghost的功能。它通过dd命令备份硬盘分区...

    linux系统GHOST备份方案借鉴.pdf

    1. **ghostforlinux (g4l)**:g4l是一款开源的Linux系统备份工具,其工作原理是利用`dd`命令备份硬盘分区信息和数据扇区,不保存空闲扇区。它提供了一个名为`fg4l`的图形前端,基于ncursesGUI库。用户可以通过ISO...

    suselinux系统备份恢复配置收集.pdf

    Rear 软件包是 Suselinux 操作系统中的一款备份和恢复工具,安装该软件包是 Suselinux 系统备份恢复配置收集的第一步。可以通过命令行工具安装 rear 软件包,例如:`rpm -ivh rear-1.7.23-10.1.noarch.rpm`。 二、...

    备份与恢复Linux系统.pdf

    总的来说,`mkCDrec`是一个强大的Linux系统备份工具,尤其适合那些需要快速恢复系统或没有深入了解Linux系统的用户。通过合理配置和使用,它可以大大降低系统备份和恢复的复杂度,提高工作效率,保护用户的数据安全...

    linux补丁备份工具

    linux补丁备份工具,把要更新的文件放入hotfix文件夹下,在linux下执行ReleaseBackup.sh 输入补丁目录,在输入项目目录。简单原理是根据补丁目录去项目目录下去搜索相同名称的文件复制出来!

    Linux下克隆工具-mondo.doc

    Mondo 是一个广泛使用的 Linux 系统备份工具,也可以说是 Linux 下的 Ghost。它支持 LVM,RAID,ext2, ext3, JFS, XFS, ReiserFS, VFAT 等多种文件系统,可以把需要备份的文件创建成 ISO 格式的文件并备份至磁带,CD...

    linux下 MYSQL 自动备份工具

    "linux下 MYSQL 自动备份工具"就是这样一个解决方案,它能够实现MySQL数据库的自动化备份,同时进行打包处理,使得备份过程既高效又便捷。 1. **Linux环境**:Linux是一种开源、免费的操作系统,广泛应用于服务器...

    Linux系统 备份

    在IT行业中,Linux系统备份是至关重要的操作,它保护了数据免受意外损失,确保系统的稳定运行。Linux系统备份通常涉及文件系统、配置文件、用户数据以及系统软件等多个方面。以下将详细介绍Linux系统备份的相关知识...

    rsync rsync是linux系统下的数据镜像备份工具。使用快速增量备份工具Remote Sync可以远程同步

    **rsync:Linux系统的高效数据备份与同步工具** rsync是一款强大的、开源的、基于Unix哲学的文件同步和备份工具,广泛应用于Linux操作系统。它的全称是Remote Sync,正如其名,rsync能够实现本地及远程的数据同步,...

    Linux系统管理工具包系列汇总 Linux系统管理员必看

    Linux系统管理员工具包: 备份关键的信息 Linux系统管理员工具包: 监视运行缓慢的系统 Linux系统管理工具包: 网络扫描 Linux系统管理员工具包: 充分利用 bash Linux系统管理员工具包: 充分利用 zsh

    linux ghost系统备份

    1. 首先,用户需要下载和安装Linux Ghost系统备份工具。安装完成后,用户需要创建一个引导启动光驱,以便在系统崩溃时可以从光驱启动。 2. 在光驱引导启动后,用户需要选择系统版本,例如bz3.3.5 386。然后,用户...

    为linux系统设置备份

    以下是对Linux系统备份的深入探讨,包括策略设定、介质选择及常用工具的应用。 #### 设置备份策略 **确定备份范围**:首先,明确哪些数据需要备份至关重要。用户文件、配置文件以及程序文件是最常见的备份对象。...

    suselinux系统备份恢复配置[参照].pdf

    SUSE LINUX系统备份恢复配置...SUSE LINUX系统备份恢复配置是保护系统的数据和配置的重要步骤,rear软件包是SUSE LINUX系统中强大的备份和恢复工具,通过备份和恢复配置,可以快速地恢复系统,避免系统崩溃和数据丢失。

    Linux系统裸机备份与恢复的设计和实现.pdf

    2. 自动收集系统备份信息:这是备份步骤中非常重要的一步,是裸机恢复的前提。恢复过程用这些信息来重构 Linux 服务器的硬件设备和软件环境。 3. 备份操作系统:使用 Tar 和 dd 两个非常好用的备份工具。Tar 工作在...

    linux mysql自动备份工具

    本篇文章将详细讲解如何在Linux系统中设置一个自动的MySQL备份工具,以便实现数据的自动备份,降低因系统故障或人为错误导致的数据丢失风险。 首先,我们需要了解备份MySQL数据库的基本原理。MySQL提供了多种备份...

    linux系统GHOST备份

    此软件速度上比G4L快,建议使用此款软件作Linux系统备份。 在使用这两款软件时,需要有FTP服务器,以存放备份映像文件。以下是使用G4L备份CENTOS5系统的过程: 1. 下载G4L iso,刻录成光盘或者用VM加载。 2. 为...

    rsync Server是linux系统下的数据镜像备份工具。使用快速增量备份工具Remote Sync可以远程同步,支持本地复制

    对于Linux系统,一般会通过包管理器如apt-get (Ubuntu/Debian) 或 yum (CentOS/RHEL) 来安装rsync及其依赖。安装完成后,需要配置rsync的配置文件rsyncd.conf,设置监听端口、认证方式、允许访问的用户和模块等参数...

Global site tag (gtag.js) - Google Analytics